Генетика Менделя

Описание

В данном задании предлагается реализовать программную библиотеку, представляющую встроенный язык программирования для моделирования наследования признаков по Менделю.

Независимое наследование признаков.

Предсказывание наличия признаков у поколений основывается на нескольких законах Менделя:

Первый закон Менделя
Каждый организм обладает парой аллелей (мы рассматриваем диплоидные организмы) для каждого отдельного свойства. При размножении для передачи потомку выбирается одна аллель случайным образом.
Второй закон Менделя.
Различные признаки организма наследуются независимо друг от друга.
Третий закон Менделя.
Аллели бывают доминантные и рецессивные. При наличии обеих аллелей организм проявляет признак, закодированный в доминантной аллели. Таким образом, если один родитель имеет две доминантные аллели, то первое потомство всегда будет проявлять доминантный признак.

Генотип — это набор аллелей для каждого признака (например, AAbbCc).

Фенотип — это набор проявляющихся свойств (например, AbC).

Основные задачи, связанные с генетикой Менделя:

Созданная библиотека должна предоставлять удобные стредства для решения подобных задач.

Минимальные требования (базовая часть)

Базовая реализация проекта, в которой должны разбираться все участники, должна:

Расширенная библиотека (индивидуальная часть)

Библиотека для работы с генетикой Менделя должна быть расширена как минимум двумя различными возможностями:

Графический интерфейс (индивидуальная часть)

Графический интерфейс должен предоставлять визуальное представление фенотипа, буквенное представление генотипа, и визуальное разделение поколений.

Графический интерфейс должен реализовывать хотя бы 2 различные возможности:

Работа с базой данных (индивидуальная часть)

Модуль для работы с базой данных должен предоставлять хотя бы 2 различные возможности: