В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
Клеу
Клеу
14.09.2021 16:53 •  Информатика

нужна ! Вам предстоит написать простую игру с компьютером, модификацию всем известной "Три в ряд".
Условия простые.
Пользователь вводит число – сколько мест в линии, первый ход делает компьютер, вводит строку: место и цвет (’R’, ’G’ или ’B’) через пробел, нумерация с 0.
Выводится сообщение, кто сделал и какой ход:
AI step <шаг>
или
Your step <шаг>

Выводится строка с размещенной буквой.
Затем ходит пользователь, вводит в одной строке место и цвет (’R’, ’G’ или ’B’) через пробел. Если три буквы одного цвета рядом, они пропадают, тому, кто поставил последнюю, начисляется очко и линия выводится ещё раз, уже без одинаковых букв, стоящих рядом.
Игра продолжается, пока есть места.
Если пользователь хочет походить на занятое место, выводится сообщение:
This place is taken.

По окончании выводятся сообщения, кто выиграл и счёт.
Если выиграл компьютер, вывести:
AI win! <счёт> : <счёт>

Если выиграл пользователь, выводим:
You win! <счёт> : <счёт>

Если ничья:
We have a tie.

Пример работы программы:

5
AI step 2 R
_ _ R _ _
Your step 1 B
_ B R _ _
AI step 0 B
B B R _ _
Your step 3 R
B B R R _
AI step 4 R
B B R R R
B B _ _ _
Your step 3 G
B B _ G _
AI step 2 G
B B G G _
Your step 4 R
B B G G R
AI win! 1 : 0

Показать ответ
Ответ:
XxXRePlayXxX
XxXRePlayXxX
27.08.2022 18:07
Var
    n, i, prev: integer;

function IsSimpleNumber(n: integer): boolean;
var
    i: integer;
begin
    IsSimpleNumber := true;
    
    for i := 2 to round(sqrt(n) + 1) do
        if n mod i = 0 then begin
            IsSimpleNumber := false;
            exit;
        end;
end;

begin
    read(n);
    prev := 0;
    
    for i := n to 2 * n do
        if IsSimpleNumber(i) then
            if prev = 0 then
                prev := i
            else if i - prev = 2 then begin
                writeln(i, ', ', prev, ' - близнецы');
                halt;
            end
            else prev := i;
    
    writeln('Близнецов нет');
end.
0,0(0 оценок)
Ответ:
TemirMamekov
TemirMamekov
09.03.2022 20:28
А) По условию, девочку, вырастившую маргаритки зовут не Роза
("девочка, вырастившая маргаритки, обратила внимание Розы...") и не Рита ("ни у одной из девочек имя не совпадает с названием любимых цветов"), значит, её зовут Анюта. Далее следует, что Роза (вырастила не розы) могла вырастить только анютины глазки, а Рита - розы.
б) Говорит правду либо Виктор, либо Марат, так как их показания противоположны по смыслу. Значит Андрей и Денис соврали, из показания Дениса следует, что стекло разбил именно он. Правду сказал Марат.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота