|
|
Нормальная. Колония живет 200 лет:
Программа
цел:лет, кл, год, сто, стр, соседи,;
{соседи:=0
кл:=0
лет:=0
Делать от год:=1 до 200 {
лет:=лет+1
Делать от сто:=20 до 35 {
Делать от стр:=2 до 17 {
Перейти на( сто,стр );
Если ( к или з ) то {
Снять плитку;
}
};
};
Делать от сто:=2 до 17 {
Делать от стр:=2 до 17 {
Перейти на( сто,стр );
Если ( к ) то {
Перейти на( сто+18,стр );
Положить( к );
кл:=кл+1
}
};
};
Делать от сто:=20 до 35 {
Делать от стр:=2 до 17 {
Перейти на( сто,стр );
соседи:=0
Шаг вверх;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вправо;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вниз;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вниз;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг влево;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг влево;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вверх;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вверх;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вправо;
Шаг вниз;
Если ( (не к) и (соседи=3) ) то {
Перейти на( сто-18,стр );
Положить( к );
}
Если ( (к) и ((соседи>3) ИЛИ (соседи<2)) ) то {
Перейти на( сто-18,стр );
Снять плитку;
}
};
};
Если ( кл=0 ) то {
Стоп;
}иначе { кл:=0 };
};
} Усовершенствованная
(сколько лет? Запустите, сами поймете):
Программа
цел:лет, кл, год, сто, стр, соседи, с, ж, см, жз, л;
{соседи:=0
см:=0
жз:=0
кл:=0
лет:=0
Запросить "Сколько лет прожить колонии:", л;
Делать от год:=1 до л {
с:=0
ж:=0
лет:=лет+1
Делать от сто:=20 до 35 {
Делать от стр:=2 до 17 {
Перейти на( сто,стр );
Если ( к или з ) то {
Снять плитку;
}
};
};
Делать от сто:=2 до 17 {
Делать от стр:=2 до 17 {
Перейти на( сто,стр );
Если ( к ) то {
Перейти на( сто+18,стр );
Положить( к );
кл:=кл+1
}
};
};
Делать от сто:=20 до 35 {
Делать от стр:=2 до 17 {
Перейти на( сто,стр );
соседи:=0
Шаг вверх;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вправо;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вниз;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вниз;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг влево;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг влево;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вверх;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вверх;
Если ( к ) то {соседи:=соседи+1 ;}
Шаг вправо;
Шаг вниз;
Если ( (не к) и (соседи=3) ) то {
Перейти на( сто-18,стр );
Положить( к );
Сообщить "Родился новый человек!";
ж:=ж+1
жз:=жз+1
}
Если ( (к) и ((соседи>3) ИЛИ (соседи<2)) ) то {
Перейти на( сто-18,стр );
Снять плитку;
Сообщить "Один человек умер!";
с:=с+1
см:=см+1
}
};
};
Сообщить лет, "год.Умерло человек:",с, " родилось:",ж ;
Если ( кл=0 ) то {
Сообщить "Колония выродилась!!! Набрано",жз-см-10,"очк.";
Стоп;
}иначе { кл:=0 };
};
Сообщить "Победа!!! Набрано:",жз-см,"очк.";
} |
|
|