
В числовую переменную последовательно вводятся целые числа, не равные нулю. кол-во вводимых чисел n
неизвестно. Найти сумму тех чисел, в которых встречаются ровно две цифры 5.(в паскале написать программу)

Ответы на вопрос

var
n,a,k,sum,i,j: integer;
s: string;
begin
sum:=0;
write ('Введите количество чисел: ');
readln (n);
for i:=1 to n do begin
write ('Введите число: ');
readln (a);
Str(a,s);
k:=0;
for j:=1 to length(s) do
if s[j]='5' then k:=k+1;
if k=2 then sum:=sum+a;
end;
writeln ('Sum = ',sum);
end.
========== 2 вариант через div и mod ==========
var
n,a,x,k,sum,i: integer;
begin
sum:=0;
write ('Введите количество чисел: ');
readln (n);
for i:=1 to n do begin
write ('Введите число: ');
readln (a);
x:=abs(a);
k:=0;
while x>0 do begin
if x mod 10 =5 then k:=k+1;
x:=x div 10;
end;
if k=2 then sum:=sum+a;
end;
writeln ('Sum = ',sum);
end.
========== пример результата: ==========
Введите количество чисел: 3
Введите число: 550001
Введите число: -550000
Введите число: 123456
Sum = 1



begin
var sum := 0;
for var i := 1 to ReadInteger('n=') do
begin
var num := ReadInteger('Введите число =');
if num.ToString().ToCharArray.Count(c -> c = '5') = 2 then
sum += num;
end;
Writeln(sum);
end.



Поиск суммы чисел, в которых встречаются ровно две цифры 5
Для решения данной задачи на языке Паскаль можно использовать следующий алгоритм:
1. Объявить переменные `n`, `number`, `sum` и инициализировать `sum` нулем. 2. Ввести значение переменной `n` - количество чисел, которые будут вводиться. 3. Создать цикл, который будет выполняться `n` раз: - Ввести значение переменной `number` - целое число. - Проверить, содержит ли число `number` ровно две цифры 5: - Создать переменную `count` и инициализировать нулем. - Преобразовать число `number` в строку. - Пройти по каждому символу строки: - Если символ равен "5", увеличить значение переменной `count` на единицу. - Если значение переменной `count` равно двум, добавить значение `number` к переменной `sum`. 4. Вывести значение переменной `sum`.
Пример программы на языке Паскаль:
```pascal program SumOfNumbers;
var n, number, sum, count, i: integer;
begin sum := 0; write('Введите количество чисел: '); readln(n); for i := 1 to n do begin write('Введите число: '); readln(number); count := 0; str(number, number); for i := 1 to length(number) do begin if number[i] = '5' then count := count + 1; end; if count = 2 then sum := sum + number; end; writeln('Сумма чисел, в которых встречаются ровно две цифры 5: ', sum); end. ```
Пожалуйста, обратите внимание, что данная программа представлена на языке Паскаль. Если вам нужна программа на другом языке программирования, пожалуйста, уточните это.


Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili