Найти сумму пятизначного числа:у меня вот что но это неправильно можете найти ошибку...

0 голосов
16 просмотров

Найти сумму пятизначного числа:у меня вот что но это неправильно можете найти ошибку пожалуйста:

program summa5znchisla;
uses crt;
var A,B,C,D,E,S,X:integer;
begin
clrscr;
writeln('Введите 5-ое число');
readln(x);
A:= X div 10000;
B:= X div 10000 mod 1000;
C:= X div 1000 mod 100;
D:= X div 100 mod 10;
E:= X div 100 mod 10;
S:= A+B+C+D+E;
writeln('Сумма числа', X, 'равна',S);
end.


Информатика (225 баллов) | 16 просмотров
0

масивы знаешь?

Дано ответов: 2
0 голосов
Правильный ответ

Твой код был правильный, разве что местами div и mod стоило поменять:

program summa5znchisla;
uses crt;
var A,B,C,D,E,S,X:integer;
begin
clrscr;
write('Введите пятизначное число: ');
readln(x);
A:= X div 10000;
B:= X mod 10000 div 1000;
C:= X mod 1000 div 100;
D:= X mod 100 div 10;
E:= X mod 10 div 1;
S:= A+B+C+D+E;
writeln('Сумма числа ', X, ' равна ',S);
end.



(630 баллов)
0 голосов

Во общем всё намного проще! Создаёшь массив a[1..5](это твои A,B и т.д)
Потом с помощью цикла заполняешь его!
for i:=1 to 5 do
begin
a[i]:=x mod 10;
s:=s+a[i];
x:=x div 10;
end;
Потом выводишь S и задача решена!
Сам на паскале давно не пишу так, что прости за небольшие ошибки(не компилировал).



(111 баллов)