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

Написать программу на c++. Указать количество учеников, после чего вывести случайное число из этого количества. После чего ученику можно поставить оценку (2,3,4,5) либо же отсутствие (Н). Дополнительные условия.
Сделать ошибку ввода оценки (если вводим число 1 или больше 5). Так же один и тот же номер ученика не может выпадать дважды.
В конечном итоге вывести номер ученика и его оценку (либо отсутствие).​

Показать ответ
Ответ:
emoe0zosixnc
emoe0zosixnc
06.12.2020 10:19
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!

function gcd(a,b:integer):integer; // НОД
begin
  while b<>0 do begin a:=a mod b; Swap(a,b) end;
  Result:=a
end;

procedure RedFrac(var a,b:integer); // сокращение дроби
begin
  var (sgna,sgnb):=(Sign(a),Sign(b)); // мы должны учитывать знак!
  (a,b):=(Abs(a),Abs(b));
  var d:=gcd(a,b);
  a:=(a div d)*sgna; b:=(b div d)*sgnb
end;

begin
  var (a,b):=ReadInteger2('Введите числитель и знаменатель 1-й дроби:');
  var (c,d):=ReadInteger2('Введите числитель и знаменатель 2-й дроби:');
  (a,b):=(a*c,b*d);
  RedFrac(a,b);
  Writeln('Результат умножения: ',a,' / ',b)
end.

Пример
Введите числитель и знаменатель 1-й дроби: 32 1024
Введите числитель и знаменатель 2-й дроби: 60 300
Результат умножения: 1 / 160

В качестве бонуса - решение на базе входящей в состав PascalABC.NET библиотеки численных методов

uses NumLibABC;

begin
  var (a,b):=ReadInteger2('Введите числитель и знаменатель 1-й дроби:');
  var (c,d):=ReadInteger2('Введите числитель и знаменатель 2-й дроби:');
  Writeln('Результат умножения: ',Frc(a,b)*Frc(c,d))
end.
0,0(0 оценок)
Ответ:
Molly11111
Molly11111
05.09.2022 21:17
Задача 1.
Общее количество символов: 50*85*15= 63750
Один символ кодируется 8 битами или 1 байтом, следовательно объем текста = 63750 байт = 62,26 Кбайт

Задача 2.
Количество символов на странице: 60*64 = 3840
Разделив объем текста (в байтах) на количество символов на странице получим количество страниц: (9*1024)/3840 = 2,4
Следовательно  ответ: 3 страницы

Задача 3.
Время передачи файла можно определить разделив объем файла( переведя в биты) на скорость передачи
t= (9*1024*8)/256 = 288 сек.

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