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

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

Ответ:
ajselaskerova
ajselaskerova
21.09.2020 09:38
// 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,0(0 оценок)
Ответ:
Kostolom2005
Kostolom2005
21.09.2020 09:38
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); сделан, чтобы исключить возможность совпадения номеров (когда генератор случайных чисел одинаковые номера выдаст)
0,0(0 оценок)
Ответ:
lexa123assasin
lexa123assasin
22.01.2024 04:51
Привет! Я рад выступить в роли школьного учителя и помочь тебе с этим заданием по программированию на Паскале. Давай разберемся с ним шаг за шагом.

Для начала, нам понадобится использовать некоторые функции для генерации случайных чисел в Паскале. Для этого ты можешь использовать встроенную функцию "random" и операцию нахождения остатка от деления на число.

Вот сама программа для выбора дежурных:

```pascal
program RandomDuty;

var
n, randomStudent1, randomStudent2: integer;

begin
// Вводим количество учеников
writeln('Введите количество учеников в классе:');
readln(n);

// Генерируем случайных дежурных
randomStudent1 := random(n) + 1;
randomStudent2 := random(n) + 1;

// Выводим результат
writeln('Дежурными становятся ученик номер ', randomStudent1, ' и ученик номер ', randomStudent2);

// Конец программы
end.
```

Теперь пошагово разберем каждую часть программы и поясним ее:

1. Вводим количество учеников:
- Данная строка используется для того, чтобы пользователь мог ввести количество учеников в классе.
- Функция "writeln" выводит текст в консоль.
- Функция "readln" считывает число, которое пользователь вводит в консоли, и присваивает его переменной "n".

2. Генерируем случайных дежурных:
- В этой части программы мы используем функцию "random(n)", которая генерирует случайное целое число в диапазоне от 0 до "n-1".
- Учитывая, что нам нужны номера учеников в диапазоне от 1 до "n", мы добавляем 1 к результату функции "random(n)".

3. Выводим результат:
- Функция "writeln" используется для вывода сообщения о том, какие ученики становятся дежурными.
- Выводим номера учеников, выбранных случайным образом, используя переменные "randomStudent1" и "randomStudent2".

И это весь код! Теперь ты можешь скомпилировать и запустить программу, чтобы проверить, как она работает.

Касательно проблем, с которыми мы можем столкнуться, вот несколько возможных ситуаций:

1. Некорректный ввод количества учеников:
- Если пользователь введет некорректное значение (например, отрицательное число или символы), то программа может работать некорректно или вообще завершиться с ошибкой.
- Для предотвращения такой ситуации, ты можешь добавить проверку на корректность ввода и сообщить пользователю об ошибке.

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

Надеюсь, это помогло! Если у тебя возникнут еще вопросы, не стесняйся обращаться. Удачи в программировании!
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?