Определить, какая цифра числа больше | Язык Паскаль
Pascal. Основы программирования Сложные Средние Простые задачи

Определить, какая цифра числа больше

Дано целое число, состоящее из разных цифр. Определить, какая из цифр заданного числа больше, т. е. найти наибольшую цифру числа.

Переменные: n - задаваемое число, max - максимальная цифра числа.

Пусть может вводится как положительное, так и отрицательное число. Так как знак числа в данной задаче никакого значения не имеет, то сразу избавимся от него.

В случае, когда пользователь вводит число 0, это значение и будет единственной и максимальной цифрой. С другой стороны, переменной max надо что-то присвоить до выполнения цикла поиска самой большой цифры. Присвоим ей 0, а цикл будем выполнять только при условии, что n больше 0.

Цикл выполняется до тех пор, пока n больше 0. На каждой итерации цикла извлекается последняя цифра (операцией нахождения остатка от деления на 10) и сравнивается со значением max. Если она больше, то присваивается max. Затем надо избавиться от этой последней цифры в числе n, что осуществляется с помощью деления нацело на 10.

var
    n: longint;
    max: byte;

begin
    readln(n);

    if n < 0 then 
        n := abs(n);

    max := 0;

    while n > 0 do begin
        if n mod 10 > max then
            max := n mod 10;
        n := n div 10;
    end;
    
    writeln(max);
end.