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

Задача на паскаль.нужна помощь

/ Дано N целых чисел.Найдите среди них число,у которого приеденная ниже характеристика имеет максимальное значение: -сумма цифр -первая цифра -количество делителей -сумма всех делителей
Вот 1 программа на все вопросы:
var
N, Nom, Sum, Tmp, SumMax, Max : Word;
A : array [1..100] of Word;
begin
Write('Введите N: '); ReadLn(N);
for Nom := 1 to N do begin Write('A[', Nom, '] = '); ReadLn(A[Nom]); end;

Max := 0; SumMax := 0;
for Nom := 1 to N do begin Tmp := A[Nom]; Sum := 0;
while Tmp > 0 do begin Sum := Sum + Tmp mod 10; Tmp := Tmp div 10; end;
if Sum > SumMax then begin Max := A[Nom]; SumMax := Sum; end;
end;
WriteLn('Первое число с максимальной суммой цифр ', Max);

Max := 0; SumMax := 0;
for Nom := 1 to N do begin Tmp := A[Nom]; while Tmp > 10 do Tmp := Tmp div 10;
if Tmp > SumMax then begin Max := A[Nom]; SumMax := Tmp; end;
end;
WriteLn('Первое число с максимальной первой цифрой ', Max);

Max := 0; SumMax := 0;
for Nom := 1 to N do begin Sum := 0; for Tmp := 2 to A[Nom] do
if A[Nom] mod Tmp = 0 then Sum := Sum + 1;
if Sum > SumMax then begin Max := A[Nom]; SumMax := Tmp; end;
end;
WriteLn('Первое число имеющее наибольшее количество делителей ', Max);

Max := 0; SumMax := 0;
for Nom := 1 to N do begin Sum := 0; for Tmp := 2 to A[Nom] do
if A[Nom] mod Tmp = 0 then Sum := Sum + Tmp;
if Sum > SumMax then begin Max := A[Nom]; SumMax := Tmp; end;
end;
WriteLn('Первое число имеющее наибольшую сумму делителей ', Max);

end.
При необходимости ненужное вычеркнуть!
Bова Золкин
Bова Золкин
96 004
Лучший ответ
вот я не понимаю. Программирование - это современная, востребованная, денежная специальность. Не говоря уже о том, что это просто интересно. Я понимаю еще можно не знать матан или историю. Но черт возьми, не взять себя за шкиряк и не усадить один раз просто взять и ПОНЯТЬ программирование - это выше моего понимания.
Сколько платишь? Готов помочь и ДАЖЕ сделать за тебя
Андрей Балакин
Андрей Балакин
15 446
слишком просто