М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
draft1challenge
draft1challenge
25.03.2022 04:10 •  Информатика

Написать простую программу которая будет делить любое введёное число на 2

👇
Открыть все ответы
Ответ:
andrii213
andrii213
25.03.2022
Могут:
– 31: для числа 111 сумма остатков равна 1+1+1=3, произведение цифр 1*1*1=1
– 813: для числа 339 произведение цифр 3*3*9=81, сумма остатков 1+1+1=3
– 7293: для числа 999 проивзедение цифр 9*9*9=729, сумма остатков 1+1+1=3

Остальные не могут. 
– 32: если сумма остатков 3, то все цифры нечетные, их произведение не может быть равно 2. Если сумма остатков 2, то одна из цифр четная, произведение не может быть равно 3.
– 43: Сумма остатков не превышает 3, значит, 3 – сумма остатков (поэтому все цифры нечетные), тогда произведение не будет четному числу 4.
– 52: сумма остатков 2, одна из цифр четная, но тогда произведение не будет равно нечетному числу 5
– 132: аналогично, сумма остатков 2, произведение должно быть четным (а оно 13)
– 190: аналогично, сумма остатков 0, тогда все цифры четные, но произведение 19
4,7(80 оценок)
Ответ:
Димооон1
Димооон1
25.03.2022
// PascalABC.NET 3.2, сборка 1401 от 14.03.2017
// Внимание! Если программа не работает, обновите версию!

1. Решение без проверки вводимых данных

begin
  var a,b:integer;
  Read(a,b);
  var P:=ArrFill(30,0);
  for var i:=a-1 to b-1 do P[i]:=2;
  P.Println
end.

Пример
2 10
0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

2. Решение с контролем ввода

begin
  var a:=ReadInteger('Введите a от 1 до 30:');
  if a<1 then begin Writeln('Неверно'); Exit end;
  var b:=ReadInteger('Введите b от '+a.ToString+' до 30:');
  if (b<a) or (b>30) then begin Writeln('Неверно'); Exit end;
  var P:=ArrFill(30,0);
  for var i:=a-1 to b-1 do P[i]:=2;
  P.Println
end.

Пример
Введите a от 1 до 30: 2
Введите b от 2 до 30: 10
0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4,6(78 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ