Gxoct request try number 1 #120
base: master
Are you sure you want to change the base?
Conversation
|
Создал (readonly) property.
Этот рэндом берёт из массива одну из аминокислот для того, чтобы заменить в существующем ДНК. |
Ок. Исправлю. |
да, из формулировки задания это не очевидно, но в комментариях к заданию автором было сказано, что ИЗМЕНИТЬ - значит именно изменить на другое значение, иначе слово изменить теряет свой смысл) а вообще хороший код написал, очень аккуратно и читаемо |
Внёс изменения. Нуклеотиды проверяются на равенство. Если они совпадают, генерируется новый нуклеотид. |
@GxocT следующий шаг - сделать то же самое в одно действие, без лишнего перебора в while) |
Готово. Без While. |
arc4random_uniform(3) может выдать ноль, то есть элемент не изменится, что тоже не верно) должно быть случайное число из диапазона от 1 до count - 1 |
arc4random_uniform(3) выбирает значение из укороченного массива ATCG Например, в заданной позиции был нуклеотид "T". |
да, просмотрел) но проще же взять элемент из того же массива со сдвигом [1, count - 1] от текущего, а не плодить дополнительные массивы для каждого варианта? |
|
||
- (id)init | ||
{ | ||
self = [super init]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
После того как получили self от родителя, необходимо проверить не вернули ли нам nil и после этого можно уже инициализировать.
self = [super init];
if(self){
//my init
}
return self;
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
init исправил
Made some corrections after updating XCode.
Sachs |
{ | ||
//---Method which makes changes to DNA replacing some acids with new one | ||
//percentToMutate is quantity of acids to replace--- | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
percentToMutate - это процент, поэтому надо посчитать количество ячеек, которые нужно заменить. А сейчас значение этой переменной используется как количество ячеек.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В примере используется ДНК длиной в 100 знаков, соответственно процент это количество ячеек, зачем усложнять код в конкретной ситуации? Мы ведь не пишем универсальную программу.
Если руководствоваться принципами экстремального программирования подобные изменения вредны для кода.
Made changes to mutate method to use percents instead number of cells.
Внёс изменения в mutate для того, чтобы использовались проценты, а не количество клеток, также добавил проверку, чтобы проценты не были больше 100 и меньше 0. |
Внёс изменения в mutate для того, чтобы использовались проценты, а не количество клеток, также добавил проверку, чтобы проценты не были больше 100 и меньше 0. |
Внёс изменения в mutate для того, чтобы использовались проценты, а не количество клеток, также добавил проверку, чтобы проценты не были больше 100 и меньше 0. |
Gxoct request try number 1