0 / 0 / 0
Регистрация: 15.10.2019
Сообщений: 1
1

Игра в кирпичи с компом

15.10.2019, 17:41. Показов 1533. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
14. Дано n кирпичей. Вы и компьютер ходите поочередно. за ход можно взять 1, 2 или 3 кирпича. Проиграл тот, кому нечего брать. Реализуйте игру с компьютером. Компьютер ходит случайно (без анализа выигрышной стратегии), однако если у него есть ход, который является последним для его выигрыша, то он его совершает.

Не понимаю как сделать, чтоб правильно считал остаток кирпичей на каждом ходе?

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
program z_14;
var
  i, n, k, b, l, m: integer;
begin
  write('Сколько кирпичей есть в игре? ');
  readln(n);
  repeat  
    write('Сколько взять кирпичей? ');
    readln(k);
        l := n - k; {остаток кирпичей от исходного количества}
        if l <> 0 then 
    begin;
      randomize;
      if l < 3 then b := random(1, 2)
      else b := random(1, 3);
      if l < 2 then b := 1;
      writeln('Компьютер взял: ', b, 'шт'); 
    end;
        if l = 0 then 
    begin
      writeln('Вы выиграли'); 
      exit;
    end; 
       begin
      m := l - b; { остаток кирпичей после хода компьютера }   
      writeln('В игре находится ', m, ' кирпичей');
    end;
        if m > 0 then writeln('Продолжаем игру ')
      else 
    begin
      writeln('Вы проиграли'); 
      exit;
    end;
  until m = 0;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2019, 17:41
Ответы с готовыми решениями:

Игра на двоих за одним компом
Посоветуйте интересную игру для двоих людей, чтобы можно было играть за одним компом, по аналогии с...

Про кирпичи
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics,...

Туристы и кирпичи
Дико извиняюся, но лучше тему назвать не могу , так как впадаю в ступор читая эти задачи....

Арканоид,кирпичи разных уровней
Привет, делаю арканоид, пытаюсь сделать кирпичи 2-го уровня т.е кирпич должен уничтожаться только в...

1
2931 / 1576 / 630
Регистрация: 19.03.2019
Сообщений: 5,183
16.10.2019, 18:08 2
randomize из 13 строчки убери из цикла в самое начало программы (а можно и совсем убрать - в Pascal ABC в нём смысла нет - его оставили для совместимости, но программа и так иницилизирует ГПСЧ сама, без вызова рандомайза).

Добавлено через 14 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
program z_14;
var
  i, n, k, b, l, m: integer;
begin
  randomize;
  write('Сколько кирпичей есть в игре? ');
  readln(n);
  l:=n;
  repeat
    repeat
       write('Сколько взять кирпичей? ');
       readln(k);
       if not ((k in [1..3]) and (k<=l)) then WriteLn('Неверно. Попробуйте ещё раз');
    until (k in [1..3]) and (k<=l);
    l := l - k; {остаток кирпичей от исходного количества}
    if l=0 then begin
        writeln('Вы выиграли');
        exit;
    end
    else begin
      // ход компьютера
      writeln('В игре находится ', l, ' кирпичей. Ход компьютера....');
      Sleep(1500); // задержка,имитирует, что компьютер задумался
      if l<4 then
         k:=l
      else
         k:=random(3)+1;
      Write('Компютер забирает ',k,' ');
      if k=1 then WriteLn('кирпич') else WriteLn('кирпича');
 
      l := l - k; {остаток кирпичей от исходного количества}
 
      if l=0 then begin
        writeln('Компьютер выиграл!');
        exit;
      end;
      writeln('В игре находится ', l, ' кирпичей');
    end;
  until l = 0;
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2019, 18:08
Помогаю со студенческими работами здесь

Пружины, кирпичи и ножницы. Каким будет ускорение среднего кирпича?
Скажите ответ и объясните как решать, пожалуйста. Три одинаковых массивных кирпича соединены...

Головоломка "кирпичи"
Распишите стену цифрами от 1 до 8, чтобы в каждой из восьми горизонталей и вертикалей все они были...

ХЗ что с компом
Здраствуйте,у меня есть проблема которая меня долбит уже 3 недели.Живу в таком районе там где очень...

проблема с компом
вот уменя такая проблема что запускаеш игру играеш гдета минуты 3 и потом ана начинает зависать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru