Посчитать общее количество определенных цифр в числах

Задача

Посчитать, сколько раз встречается определенная цифра в введенной последовательности чисел. Количество вводимых чисел и цифра, которую необходимо посчитать, задаются вводом с клавиатуры.

Пояснение к задаче и алгоритм решения

  1. Запросить у пользователя количество вводимых чисел (n) и цифру для подсчета (d).
  2. Присвоить счетчику цифр значение 0.
  3. Выполнить n раз цикл, в теле которого
    1. запрашивать очередное число,
    2. пока это число не сократиться до нуля
      1. извлекать последнюю его цифру и сравнивать с цифрой, которую надо посчитать,
      2. увеличивать значение счетчика цифр на 1, если сравниваемые цифры совпадают,
      3. избавляться от последней цифры числа.
  4. В конце программы вывести количество посчитанных цифр на экран.

Исходный код на языке программирования Pascal

var
    m: word;
    n,d,i, count: byte;
begin
    write('Количество чисел: ');
    readln(n);
    write('Цифра: ');
    readln(d);
    count := 0;
    for i:=1 to n do begin
        readln(m);
        while m > 0 do begin
            if m mod 10 = d then
                count := count + 1;
            m := m div 10;
        end;
    end;
    writeln('Количество цифр: ', count);
end.

Пример(ы) выполнения программы на языке Pascal

Количество чисел: 6
Цифра: 5
301
8952
155
306
200
541
Количество цифр: 4

Исходный код на языке программирования C

#include <stdio.h>
 
main () {
    int n,d,m,count,i;
    printf("Количество чисел: ");
    scanf("%d", &n);
    printf("Цифра: ");
    scanf("%d", &d);
    count = 0;
    for(i=0;i<n;i++) {
        scanf("%d", &m);
        while (m>0) {
            if (m%10 == d) count += 1;
            m = m / 10;
        }
    }
    printf("Количество цифр: %d\n", count);
}

Пример(ы) выполнения программы на языке C

Количество чисел: 4
Цифра: 1    
10500
1400
500
201
Количество цифр: 3

Исходный код на языке программирования Python

n = int(input("Сколько будет чисел? "))
d = int(input("Какую цифру считать? "))
count = 0
for i in range(1,n+1):
    m = int(input("Число " + str(i) + ": "))
    while m > 0:
        if m%10 == d:
            count += 1
        m = m // 10
 
print("Было введено %d цифр %d" % (count, d))

Пример(ы) выполнения программы на языке Python

Сколько будет чисел? 5
Какую цифру считать? 0
Число 1: 508
Число 2: 1024
Число 3: 300
Число 4: 10101
Число 5: 15
Было введено 6 цифр 0

Исходный код на языке программирования КуМир

алг количество цифры
нач
  цел m,n,d,i,count;
  вывод "Количество чисел: "
  ввод n
  вывод "Цифра: "
  ввод d  
  count := 0
  нц для i от 1 до n
    ввод m
    нц пока m > 0
      если mod(m,10) = d то
        count := count + 1
      все
      m := div(m,10)
    кц
  кц
  вывод "Количество цифр: ", count
кон

Пример(ы) выполнения программы на языке КуМир

Количество чисел: 5
Цифра: 0
1099
8586
2300
15
10
Количество цифр: 4

Исходный код на языке программирования Basic

input "Количество чисел: ", n
input "Цифра: ", d
c = 0
for i=1 to n
        input m
        while m > 0
                if m%10 = d then c = c+1
                m = m \ 10
        endwhile
next i
print "Количество цифр: " + c

Пример(ы) выполнения программы на языке Basic

Количество чисел: 10
Цифра: 4
1234
11
1287
8945
200783
12
84
9600
544
244
Количество цифр: 7

Тема

Вложенные циклы

Уровень сложности

Средний

Дата публикации