Pascal, цикл while или repeat Ввести число. Определить сумму цифр в первой половине числа...

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

Pascal, цикл while или repeat
Ввести число. Определить сумму цифр в первой половине числа .
Пример, N=123456, результат 6.


Информатика (2.1k баллов) | 48 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Program n1;
var s: string;
sum,i: longint;
begin
sum := 0;
write('введите число: ');
readln (s);
for i := 1 to (length(s) div 2) do
sum := sum + (ord(s[i]) - 48);
writeln ('сумма 1 половины цифр числа равна ',sum);
end.

(149k баллов)
0 голосов

Если вы уже прошли строки, то вот
program summa;
var
    s: string;
    I, sum: integer;
begin
    sum := 0;
    Readln (s);
    for i := 1 to (length(s) div 2) do
        sum := sum + (ord(s[i]) - 48);
    Writeln (sum);
end.


0

program abc;
var n,s,amount,i:integer;
begin
s:=0;
amount:=0;
readln(n);
while n>0 do
begin
s:=s+n mod 10;
inc(amount);
n:=n div 10;
end;
writeln("Число состоит из ", amount, " цифр, сумма числа ",s);
end.

По идее должно работать, паскаль давно не использовал, поэтому возможны "синтаксические" ошибки.

0

ну на счет синтаксиса, только writeln, вместо " (кавычек) поставь вот такой апостроф ' и все будет нормально с синтаксисом))