Вывести ** экран сумму цифр введенного пользователем числа(дополнительно: вывести...

+563 голосов
4.4m просмотров

Вывести на экран сумму цифр введенного пользователем числа(дополнительно: вывести количество разрядов)


Информатика | 4.4m просмотров
Дано ответов: 2
+111 голосов

Ответ:

program z1;

var a,k,s: integer;

begin

write ('a = ');

readln (a);

s:=0;

k:=0;

repeat

s:=s+a mod 10;

k:=k+1;

a:=a div 10

until a=0;

writeln('s = ',s);

writeln('k = ',k)

end.

(2.2k баллов)
+84 голосов

                                     PascalABC.NET                                      

Ответ:

  • begin
  • var s := ReadReal('Число:').ToString.Remove('.','-');
  • Println('Сумма:',s.ToArray.ConvertAll(c->c.ToDigit).Sum);
  • Println('Разрядов:',s.Count);
  • end.

В отличии от программы данной в другом ответе, эта в разы короче и быстрей, а также работает с отрицательными и вещественными числами.

Пример работы:

(3.7k баллов)