Другие языки программирования и технологии

Нужно создать программу в Pascal ABC.NET

Помогите пожалуйста!!!
Звучит задача так:
Создать программу, которая вводит трехзначное число и выводит такое меню:
Введите номер задания:
1.Вычисление максимальной ЦИФРЫ
2.Вычисление минимальной ЦИФРЫ
3.Вычисление суммы ЦИФР
4.Вычисление умножения ЦИФР
Программа должна выполнить задание, номер которого будет введен.
Большое спасибо за помощь!!!
var c:array[1..3] of integer;
begin
var n:=ReadInteger('Ввести 3-зн. число:');
c[1]:=n div 100;c[2]:=n div 10 mod 10; c[3]:=n mod 10;
var num:=ReadInteger('Номер задания:');
case num of
1:writeln(c.max);
2:writeln(c.min);
3:writeln(c.sum);
4:writeln(c[1]*c[2]*c[3])
end;
end.
Айдос Жангельдин
Айдос Жангельдин
83 844
Лучший ответ
это для мегакулхацкеров
Витя Бандера
Витя Бандера
57 930
var x, z, otvet: integer;
begin
write ('x = ');
readln (x);
writeln ('1.Вычисление максимальной ЦИФРЫ'#13'2.Вычисление минимальной ЦИФРЫ'#13'3.Вычисление суммы ЦИФР'#13'4.Вычисление умножения ЦИФР');
readln (z);
case z of
1: begin
otvet:=0;
while x > 0 do
begin
otvet := max(otvet, x mod 10);
x:= x div 10;
end;
end;
2: begin
otvet:=10;
while x > 0 do
begin
otvet := min(otvet, x mod 10);
x:= x div 10;
end;
end;
3: begin
otvet:=0;
while x > 0 do
begin
otvet := otvet + x mod 10;
x:= x div 10;
end;
end;
4: begin
otvet:=1;
while x > 0 do
begin
otvet := otvet * (x mod 10);
x:= x div 10;
end;
end;
else writeln ('неверный выбор');
end;
writeln ('ответ = ', otvet);
end.
program q211364598;
var
n, select: integer;

function max_digit(n : integer) : integer;
var
next_max: integer;
begin
if n <= 0 then begin
max_digit := 0;
end
else begin
next_max := max_digit(n div 10);
if n mod 10 > next_max then max_digit := n mod 10
else max_digit := next_max;
end;
end;

function min_digit(n : integer) : integer;
var
next_min: integer;
begin
if n = 0 then begin
min_digit := 0;
end
else begin
if n div 10 = 0 then next_min := 10
else next_min := min_digit(n div 10);
if n mod 10 < next_min then min_digit := n mod 10
else min_digit := next_min;
end;
end;

function sum_digits(n : integer): integer;
begin
if n = 0 then sum_digits := 0
else sum_digits := n mod 10 + sum_digits(n div 10);
end;

function mul_digits(n : integer): integer;
var
next_mul : integer;
begin
if n = 0 then begin
mul_digits := 0
end
else begin
if n div 10 = 0 then next_mul := 1
else next_mul := mul_digits(n div 10);
mul_digits := (n mod 10) * next_mul;
end;
end;

begin
readln(n);

writeln('Введите номер задания:');
writeln('1.Вычисление максимальной ЦИФРЫ');
writeln('2.Вычисление минимальной ЦИФРЫ');
writeln('3.Вычисление суммы ЦИФР');
writeln('4.Вычисление умножения ЦИФР');
readln(select);

writeln;
write('Результат: ');
case select of
1 : write(max_digit(n));
2 : write(min_digit(n));
3 : write(sum_digits(n));
4 : write(mul_digits(n));
end;
end.
Никита Следков
Никита Следков
11 157