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

Решить в паскале найти произведение цифр четырёхзначного числа

👇
Ответ:
нази13
нази13
05.03.2020
Var
  p: longint;
  k, m, n, i: integer;

begin
  Write('Введите целое четырехзначное число: ');
  Readln(n);
  n := Abs(n); { вдруг отрицательное введут? }
  p := 1;
  for i := 1 to 4 do
  begin
    m := n mod 10;
    n := n div 10;
    p := p * m
  end;
  Writeln('Произведение цифр в числе равно ', p);
end.

Тестовое решение:

Введите целое четырехзначное число: 1234
Произведение цифр в числе равно 24
4,5(31 оценок)
Открыть все ответы
Ответ:
semenem15
semenem15
05.03.2020
1) Результатом работы должно быть число больше, чем 43, но при этом быть минимальным. Т.е в двоичной с.с это скорее всего 6-значное число, т.к семизначное даст нам результат больше или равный 64.
2) Так как над начальной записью действия производятся дважды, то чтобы получилось 6-значное число в итоге работы программы нужно для начала взять 4-значное. Возьмем (для пробы) 1000. После выполнения алгоритмя число станет 100010. Первый раз к числу прибавится 1, т.е остаток будет 1, второй раз к числу прибавится 0. При переводе этого числа в 10-ю с.с получим 33. МАЛО.
3) Рассмотрим несколько вариантов таким же образом и остановимся, наконец, на том, который будет удовлетворять работе алгоритма.
4) Это 1011. После выполнения первого построения остаток будет 1, после второго добавится 0. В результате получится 101110(2)= 32+8+4+2=46(10)
4,8(78 оценок)
Ответ:
1. Отметим, что приписывание к двоичному числу двух младших разрядов предполагает предварительный сдвиг этого числа влево на два разряда (что равносильно умножению на 2²=4), а затем установку двух младших разрядов в соответствующие приписываемым битам значения. Следовательно, можно записать, что 4N+a>43, где a - число, образованное приписываемыми справа битами, которое не может превышать 11(2)=3(10)
4N+[0..3]≥44, откуда минимальное N=11
Теперь запишем N=11 в двоичной системе и применим к нему заданный алгоритм.
N=1011(2), число единиц три, нечетное, приписываем 1, получая 10111.
Теперь число единиц четное, приписываем 0 и получаем R=101110(2).
В десятичной записи ему соответствует число 46.
ответ: 46
4,6(85 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ