ПРОГРАММИРОВАНИЕ В ПАСКАЛЬ Изменить программу которая ниже так, чтобы в ней...

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

ПРОГРАММИРОВАНИЕ В ПАСКАЛЬ
Изменить программу которая ниже так, чтобы в ней подсчитывалось и выдавалось
!!!ОДНОВРЕМЕННО!!! 3 ответа, A НЕ 3 РАЗНЫЕ ПРОГРАММЫ
а) количество цифр числа;
б) произведение цифр, больших 0;
в) сумма цифр, меньших 3.

ПРОГРАММА. Ввести с клавиатуры натуральное число. Найти сумму его цифр.
Решение: Programm Sum;
Var chislo; word; {число, введенное с клавиатуры}
tchifra, Summa:integer; {tchifra - правая цифра}}
begin
Write ('введи число');
Readln (chislo);
Summa:=0;
Repeat
tchifra:-chislo mod 10; {скопировали правую цифру}
Summa:=Summa+tchifra;
chislo:=chislo div 10 {оставили от числа левую часть}
Until chislo=0; {выход из цикла, если нет больше цифр}
Writeln ('сумма цифр= ', Summa);
Readln end.


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

Program Sum;

var
  chislo: longint; {число, введенное с клавиатуры}
  tchifra, Summa, n, p: integer;{tchifra - правая цифра}

begin
  Write('введи число: ');
  Readln(chislo);
  Summa := 0;n := 0;p := 1;
  repeat
    tchifra := chislo mod 10; {получили правую цифру}
    Inc(n);
    if tchifra > 0 then p := p * tchifra;
    if tchifra < 3 then Summa := Summa + tchifra;
    chislo := chislo div 10{оставили от числа левую часть}
  until chislo = 0; {выход из цикла, если нет больше цифр}
  Writeln('Количество цифр в числе- ', n);
  Writeln('Сумма цифр, меньших 3- ', Summa);
  Writeln('Произведение цифр, больших нуля- ', p);
  Readln
end.

Тестовое решение:
введи число: 10354
Количество цифр в числе- 5
Сумма цифр, меньших 3- 1
Произведение цифр, больших нуля- 60

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

Программа в файле
Program Sum;
Var chislo: word;
tchifra, Summa,proizv, k:integer;
begin
Write ('введи число');
Readln (chislo);
Summa:=0;
proizv:=1;
Repeat
tchifra:=chislo mod 10;
inc(k);
if tchifra<3 then Summa:=Summa+tchifra;<br>if tchifra>0 then proizv:=proizv*tchifra;
chislo:=chislo div 10 ;
Until chislo=0; {выход из цикла, если нет больше цифр}
writeln('количество цифр ',k);
writeln('произведение цифр, больших 0 =',proizv);
Writeln ('сумма цифр, больших 3 = ', Summa);


end.

(354 баллов)