
Дано трехзначное число. Вычислить сумму больших цифр этого числа. На паскале. У меня есть одна
мысль, но так и не могу понять, где ошибка. program work; var x,y,z,a:integer; begin writeln('введи трехзначное число'); readln(a); x:=a div 100; y:=a div 10 mod 100; z:=a mod 10; if (x>y) then if (y>z) then a:=x+y else a:=x+z else if (x>z) then a:=x+y else a:=y+z; writeln(a); end. ПОМОГИТЕ ПОЖАЛУЙСТА!!!!!

Ответы на вопрос

Ответ:
Объяснение: попробуйте вместо ввода трехзначного числа с последующей разбивкой его по разрядам ввести три разных числа а1,а2,а3 последовательно если принципиально что бы они отображались на экране добавьте еще переменную b например и пропечатайте ее b:=a1*100+a2*10+a3 writeln(b) а так в условных операторах у вас по моему ошибок нет



Программа, которую вы предоставили, вычисляет сумму двух наибольших цифр трехзначного числа. Однако она содержит ошибку, из-за которой результат может быть неверным. Попробуем разобраться в проблеме.
Давайте рассмотрим следующий пример:
Пусть введенное трехзначное число равно 532.
Вычисление переменных x, y, z: x := a div 100; // x = 532 div 100 = 5 y := a div 10 mod 100; // y = 532 div 10 mod 100 = 53 mod 100 = 53 z := a mod 10; // z = 532 mod 10 = 2
Запуск условий: if (x > y) then // 5 > 53 - ложь else if (x > z) then // 5 > 2 - истина a := x + y // a = 5 + 53 = 58 else a := y + z;
Ошибка здесь в том, что мы случайно заменили значение a на сумму двух наибольших цифр вместо суммы больших цифр.
Чтобы исправить ошибку, нужно сначала найти две наибольшие цифры, а затем вычислить их сумму. Вот исправленная версия программы:
pascalprogram work; var x, y, z, a, sum: integer; begin writeln('Введите трехзначное число:'); readln(a); x := a div 100; y := a div 10 mod 10; z := a mod 10; if (x > y) and (x > z) then sum := x + Max(y, z) else if (y > x) and (y > z) then sum := y + Max(x, z) else sum := z + Max(x, y); writeln('Сумма двух наибольших цифр числа: ', sum); end.
Теперь программа должна правильно вычислять сумму двух наибольших цифр введенного трехзначного числа.


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