Подсчитать сумму всех цифр в строке - Pascal

Узнай цену своей работы

Формулировка задачи:

дана строка символов состоящая из букв и цифр. подсчитать сумму всех цифр в строке

Решение задачи: «Подсчитать сумму всех цифр в строке»

textual
Листинг программы
program sd;
uses crt;
var s:string;
i,k,code,sum:integer;
Begin
sum:=0;
writeln('s: ');readln(s);
 
for i:=1 to length(s) do
 begin
      val(s[i],k,code);
      if code=0 then sum:=sum+k;
end;
 
if sum=0 then writeln('В строке нет цифр')
else
writeln('Summa= ',sum);
End.

Объяснение кода листинга программы

  1. Объявляются переменные:
    • s - строковая переменная, в которую будет сохраняться введенная пользователем строка.
    • i - целочисленная переменная, используемая в цикле для обхода всех символов в строке.
    • k - целочисленная переменная, в которую будет временно сохраняться цифра из строки для последующего подсчета суммы.
    • code - целочисленная переменная, хранящая код возврата при конвертации символа в число (используется в процедуре val).
    • sum - целочисленная переменная, в которую будет накапливаться сумма цифр.
  2. Инициализируется переменная sum значением 0.
  3. Выводится на экран приглашение s: и пользователь вводит строку, которая сохраняется в переменной s.
  4. Запускается цикл, который перебирает все символы в строке от первого до последнего.
  5. Внутри цикла происходит проверка каждого символа в строке на то, является ли он цифрой:
    • Происходит конвертация символа в число при помощи процедуры val(s[i], k, code). Если конвертация прошла успешно (code=0), то значение цифры сохраняется в переменной k.
    • Если код возврата из процедуры val равен 0, то данная цифра прибавляется к общей сумме в переменной sum.
  6. После окончания цикла происходит проверка на то, были ли найдены цифры в строке:
    • Если сумма оказалась равной 0, то на экран выводится сообщение В строке нет цифр.
    • В противном случае на экран выводится сообщение о сумме найденных цифр Summa= и значение переменной sum.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5
Похожие ответы