Информатика, вопрос задал ilykee228 , 9 лет назад

Напишите программу, которая случайным образом выбирает дежурных: выводит два случайных числа в диапазоне от 1 до N, где N- количество учеников вашего класса. С какой проблемой вы можете столкнуться?
Нужно сделать в Паскале. Заранее спасибо!

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

Ответил Аноним
0
// PascalABC.NET 3.0, сборка 1150 от 22.01.2016
var
  n,n1,n2:integer;
begin
  Write('Количество учеников: '); Read(n);
  Randomize;
  n1:=Random(n)+1;
  n2:=n1;
  while n2=n1 do n2:=Random(n)+1;
  Writeln('Номера дежурных: ',n1,', ',n2)
end.

Тестовое решение:
Количество учеников: 35
Номера дежурных: 2, 26
Ответил Аноним
0
var n,d1,d2:integer;
begin
  writeln('Укажите сколько человек в классе:');
  readln(n);
  Randomize;
  d1:=Random(1,n);
  d2:=Random(1,n);
  while d1=d2 do d2:=Random(1,n);
  writeln('Дежурными назначены: ',d1,' и ',d2);
 end.

цикл 
  while d1=d2 do d2:=Random(1,n); сделан, чтобы исключить возможность совпадения номеров (когда генератор случайных чисел одинаковые номера выдаст)
Новые вопросы