Вопрос задан 06.05.2019 в 04:21. Предмет Информатика. Спрашивает Лобанова Аня.

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

число от 1 до 6. затем бросают кубик, н7а гранях которого нарисованны точки в соответствии 1 2 3 4 5 6. выигрывает тот игрок, чье число оказывается ближе к точке, выпавшей на кубике. если анна загадала 3, борис загадас 6, а выпало 4 анна выиграла. если анна загадала 2 борис 4 выпало 3 невыиграл никто.сколько раз выиграл каждый из них.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Корнилова Оксана.
Вот, сначала ввести числа Анны и Бориса, а потом  кол-во бросков =)

var x, a, b, k, i, wa, wb: integer;
begin
     readln(a, b);
     readln(k);
     for i := 1 to k do
     begin
          x := random(5) + 1;
          writeln(x);
          if ((abs(a - x) > abs(b - x))) then wa := wa + 1;
          if ((abs(a - x) < abs(b - x))) then wb := wb + 1;
     end;
     if (wa > wb) then writeln('Ann win!')
        else
            if (wb > wa) then writeln('Boris win!')
               else
                   writeln('No win;)');
     writeln(wa, ' - ', wb);
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Чтобы решить эту задачу, мы можем использовать циклы и условные операторы в языке программирования Паскаль.

Вот пример программы, которая решает данную задачу:

```pascal program GuessGame;

var annaGuess, borisGuess, diceRoll, annaWins, borisWins: Integer;

begin annaWins := 0; borisWins := 0;

for var i := 1 to 1000 do // Предположим, что игра состоит из 1000 раундов begin annaGuess := Random(6) + 1; // Анна загадывает число от 1 до 6 borisGuess := Random(6) + 1; // Борис загадывает число от 1 до 6

diceRoll := Random(6) + 1; // Бросаем кубик

// Проверяем, кто выиграл в этом раунде if Abs(annaGuess - diceRoll) < Abs(borisGuess - diceRoll) then annaWins := annaWins + 1 else if Abs(annaGuess - diceRoll) > Abs(borisGuess - diceRoll) then borisWins := borisWins + 1; end;

// Выводим результаты writeln('Количество побед Анны: ', annaWins); writeln('Количество побед Бориса: ', borisWins); end. ```

В этой программе мы используем цикл `for` для проведения 1000 раундов игры. В каждом раунде мы генерируем случайные числа для загаданных чисел Анны и Бориса, а также для выпавшего значения на кубике.

Затем мы сравниваем разницу между загаданными числами и выпавшим значением на кубике и определяем, кто выиграл в этом раунде. Если разница между загаданным числом Анны и выпавшим значением на кубике меньше, чем разница между загаданным числом Бориса и выпавшим значением на кубике, то Анна выигрывает. Если разница между загаданным числом Анны и выпавшим значением на кубике больше, чем разница между загаданным числом Бориса и выпавшим значением на кубике, то Борис выигрывает.

В конце программы выводятся количество побед Анны и Бориса.

Обратите внимание, что в реальной программе мы могли бы запросить у пользователя количество раундов и использовать это значение вместо фиксированного числа 1000.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример кода на Pascal, который считает количество побед Анны и Бориса в игре:

```pascal program Игра;

var anna, boris, кубик, победАнны, победБориса, игр: integer; begin победАнны := 0; победБориса := 0; { количество игр, которые вы хотите провести } игр := 1000; Randomize; // инициализация генератора случайных чисел for i := 1 to игр do begin anna := Random(6) + 1; // Анна загадывает число от 1 до 6 boris := Random(6) + 1; // Борис загадывает число от 1 до 6 кубик := Random(6) + 1; // бросок кубика от 1 до 6 writeln('Анна загадала: ', anna, ', Борис загадал: ', boris, ', выпало на кубике: ', кубик); // проверка условий победы if abs(кубик - anna) < abs(кубик - boris) then победАнны := победАнны + 1 else if abs(кубик - anna) > abs(кубик - boris) then победБориса := победБориса + 1; end; writeln('Побед Анны: ', победАнны); writeln('Побед Бориса: ', победБориса); end. ```

Этот код проведет серию игр (в данном примере, 1000), где Анна и Борис загадывают числа от 1 до 6, а затем бросают кубик. После каждой игры программа определяет, кто выиграл, и подсчитывает количество побед Анны и Бориса. В конце работы кода будет выведено количество побед каждого игрока.

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

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос