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

Впаскале я написал программу что бы 3 значное число разбилось на единицы, десятки и сотни, а потом написал что бы эти 3 цифры перемножились, а он перемножает не только эти 3 цифры, но и цифры 10 и 100 которые я использовал что бы разбить число на десятки сотни и единицы, как исправить? (вот если что program qq; var x: integer; a,b: real; begin readln(x); writeln('разряд единиц: ', x mod 10); writeln('разряд десятков: ', x mod 100 div 10); writeln('разряд сотен: ', x div 100); a: =x+x+x; b: =x*x*x; writeln ('сумма = ',a); writeln ('произведение = ',b); end; )

Показать ответ
Ответ:
Викуха4А
Викуха4А
08.10.2020 15:04
Ты просто вывел на экран разряды, но никуда их не записал. Поэтому переменная x по прежнему хранит все число. Из за этого ты просто производил действия сложения и умножения с одним и тем же числом.
Что бы все заработало присвой каким-нибудь переменным, значения которые ты выводил, и проводи действия уже над ними.
0,0(0 оценок)
Ответ:
daria9303
daria9303
08.10.2020 15:04
Вот рабочая программа:
var
x,a,b,c,proiz,sum:integer;
begin
WriteLn('Введите 3-ех значное число');read(x);
a:=x mod 10;
b:= (x div 10) mod 10;
c:=x div 100;
sum:=a+b+c;
proiz:=a*b*c;
WriteLn('Произведение разрядов=', proiz);
WriteLn('Сумма разрядов=', sum);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота