
Помогите, пожалуйста, решить следующие задачи в Паскале. 8 класс 1) заданы четыре попарно не
равных числа. Найти сумму наибольшего и наименьшего чисел. 2) задано трехзначное число. Если оно четно, поделить его на 2, в противном случае определить, можно ли переставить цифры числа так, чтобы число стало четным. Если можно, то переставить, иначе вывести «НЕЛЬЗЯ СДЕЛАТЬ ЧЕТНЫМ»

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

Задача 1
procedure swp(var n, m: integer);
var
tmp: integer;
begin
tmp := n;
n := m;
m := tmp;
end;
var
a, b, c, d, i: integer;
begin
writeln('Пожалуйста, введите четыре числа через пробел:');
readln(a, b, c, d);
if a > b then swp(a, b);
if c > d then swp(c, d);
if c < a then
if d < a then begin swp(a, c); swp(d, b); end
else if d > b then begin swp(b, c); swp(a, b); end
else begin swap(b, d); swp(c, b); swp(a, b); end
else
if d < b then begin swp(c, d); swp(b, d); end
else if c < b then swp(b, c);
writeln('Сумма наименьшего и наибольшего: ', a + d);
end.
Задача 2
var
n: integer;
begin
writeln('Введите число: ');
readln(n);
if n mod 2 = 0 then
writeln('Число чётное. Число, поделеное на 2: ', n div 2)
else
if (n div 10 mod 10 mod 2 = 0) then
writeln('Число нечётное, но его можно сделать чётным перестановкой цифр: ', n div 100 * 100 + n mod 10 * 10 + n div 10 mod 10)
else if (n div 100 mod 2 = 0) then
writeln('Число нечётное, но его можно сделать чётным перестановкой цифр: ', n mod 10 * 100 + n div 10 mod 10 * 10 + n div 100)
else writeln('Нельзя сделать чётным');
end.



Конечно, я могу помочь вам с этими задачами на языке Паскаль. Вот решения:
- Заданы четыре попарно не равных числа. Найдите сумму наибольшего и наименьшего чисел.
pascalprogram Task1; var a, b, c, d, max, min, sum: integer; begin writeln('Введите четыре попарно не равных числа:'); readln(a, b, c, d); max := a; min := a; if b > max then max := b; if c > max then max := c; if d > max then max := d; if b < min then min := b; if c < min then min := c; if d < min then min := d; sum := max + min; writeln('Сумма наибольшего и наименьшего чисел: ', sum); readln; end.
- Задано трехзначное число. Если оно четное, поделить его на 2, в противном случае определить, можно ли переставить цифры числа так, чтобы число стало четным. Если можно, то переставить, иначе вывести «НЕЛЬЗЯ СДЕЛАТЬ ЧЕТНЫМ».
pascalprogram Task2; var number, temp, digit1, digit2, digit3: integer; begin writeln('Введите трехзначное число:'); readln(number); if number mod 2 = 0 then begin writeln('Число является четным.'); writeln('Результат деления на 2:', number div 2); end else begin digit1 := number div 100; digit2 := (number div 10) mod 10; digit3 := number mod 10; if (digit1 mod 2 = 0) and (digit2 mod 2 = 0) and (digit3 mod 2 = 0) then begin writeln('Можно переставить цифры числа так, чтобы число стало четным.'); writeln('Переставленное число: ', digit2, digit3, digit1); end else begin writeln('НЕЛЬЗЯ СДЕЛАТЬ ЧЕТНЫМ'); end; end; readln; end.
Это решения для задач, которые вы предложили. Если у вас возникнут еще вопросы, пожалуйста, сообщите.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







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