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

Как найти сумму цифр пятизначного числа в турбо паскаль? Помогите, пожалуйста!!!

Можно и трехзначное и пяти- и девяти- ..

var
n: longint;
s: integer;
begin
write('n? ');
readln(n);
n := abs(n);
while (n <> 0) do begin
inc(s, n mod 10);
n := n div 10;
end;
writeln('sum: ', s);
end.

Положительное пятизначное число:

var
n: longint;
begin
write('n? ');
readln(n);
writeln('sum: ', n div 10000 + n div 1000 mod 10 +
n div 100 mod 10 + n div 10 mod 10 + n mod 10);
end.
Дмитрий Шимаров
Дмитрий Шимаров
95 073
Лучший ответ
Алгоритм очень прост: делишь целочисленно с помощью mod и div на 10.
При делении mod получаешь остаток (последнюю цифру) :
101 mod 10 =1
10234 mod 10 =4
Узнав эту цифру, можно с помощью div 10 получить число без этой цифры... Сообразила?
Ну и в цикл все это.
PS.Ну ra даже тебе подумать не дал )).
пять раз делите на 10 берете остаток от деления mod - остаток div - целое
Русик Кущанов
Русик Кущанов
35 594
старшая цифра a div 10000
следующая (a div 1000)-(a div 10000)*10
следующая (a div 100)-(a div 10000)*100-(a div 1000)*10
следующая (a div 10)- (a div 10000)*1000-(a div 1000)*100-(a div 100)*10
последняя a-(a div 10000)*10000-(a div 1000)*1000-(a div 100)*100-(a div 10)*10
кажется не ошибся
складываешь все.
b:=(a div 10000)+((a div 1000)-(a div 10000)*10)+((a div 100)-(a div 10000)*100-(a div 1000)*10)+((a div 10)- (a div 10000)*1000-(a div 1000)*100-(a div 100)*10)+(a-(a div 10000)*10000-(a div 1000)*1000-(a div 100)*100-(a div 10)*10)

подобный алгоритм использовался при поиске счастливых билетиков"