Ввести натуральное число и определить, какие цифры встречаются несколько раз. обязательно использовать until, repeat.

доброx5 доброx5    1   09.09.2019 11:50    3

Ответы
matveysandors matveysandors  07.10.2020 03:03
Судя, по ключевым словам надо написать программу на языке Pascal с использованием цикла с потусловием. Алгоритм может быть такой:
1. Создадим массив для хранения информации о количестве встретившихся цифр во введенном числе.
2. Ввод самого числа, далее в цикле находим остаток от деления на 10 и увеличиваем значение элемента массива с индексом равным получившемуся остатку на 1. Делим число нацело на десять. Повторяем пока число не равно 0.
3. Выводим результат. В массиве индекс элемента указывает на цифру числа, а значение элемента на количество этой цифры в числе. 

//РасаlABC.net v3.1

var a:array[0..9]of integer;

n,i,m: integer;

begin

  readln(n);

  repeat

    m:=n mod 10;

    inc(a[m]);

    n:=n div 10;

  until n<=0;

  for i := 0 to 9 do begin

    if a[i]>1 then writeln('Цифра:',i,' количество:', a[i]);

  end;

end.

Тестовый прогон:

1112333

Цифра:1 количество:3

Цифра:3 количество:3

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика