
•••Помогите пожалуйста••• Дано натуральное число n (n меньше или равно 9999). Выяснить, верно ли,
что это число содержит ровно три одинаковые цифры с учетом четырех цифр, как, например, числа 3363, 4844, 0300 и т.п. ( если не трудно, напишите решение, 9 класс )

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

Program G;
Uses Crt;
Var NumS: Array [1..10] of byte;
n: integer; count, i, k, equal, truth: byte;
Begin
ClrScr;
Truth:=0;
Writeln('Введите число N (меньше или равное 9999).');
Repeat
Readln(N);
If N>9999 then Writeln('Введено неверное число. Повторите ввод.');
Until N<=9999; Count:=0;
While N>0 do
Begin
Inc(Count);
NumS[Count]:=N mod 10;
N:=N div 10;
End;
For i:=1 to Count do
Begin
Equal:=0;
For k:=i+1 to Count do
If NumS[i]=NumS[k] then
Inc(Equal);
If Equal=2 then Truth:=1;
End;
If Truth=1 then Writeln('В числе совпадает три разряда.')
Else Writeln('В числе совпадает менее/более трёх разрядов.');
Readln;
End.



Для решения этой задачи можно воспользоваться следующим алгоритмом:
Сначала проверьте, что число n находится в диапазоне от 0 до 9999. Если число находится вне этого диапазона, то оно не подходит.
Затем разбейте число n на его четыре цифры (тысячи, сотни, десятки и единицы). Для этого можно использовать операции деления нацело и взятия остатка от деления на 10.
После разбиения числа на цифры, проверьте, есть ли среди них хотя бы одна цифра, которая встречается ровно три раза. Для этого можно воспользоваться циклом и счетчиком для каждой цифры.
Если найдена цифра, которая встречается ровно три раза, то ответ на задачу положительный. В противном случае ответ отрицателен.
Вот пример решения на Python:
pythonn = int(input("Введите натуральное число (от 0 до 9999): "))
# Проверка, что число находится в диапазоне от 0 до 9999
if 0 <= n <= 9999:
digits = [0] * 10 # Создаем список для подсчета каждой цифры
# Разбиваем число на цифры и считаем их
while n > 0:
digit = n % 10
digits[digit] += 1
n //= 10
# Проверяем, есть ли цифра, которая встречается ровно три раза
for digit_count in digits:
if digit_count == 3:
print("Да, число содержит ровно три одинаковые цифры.")
break
else:
print("Нет, число не содержит ровно три одинаковые цифры.")
else:
print("Число не находится в диапазоне от 0 до 9999.")
Этот код сначала проверяет, что число находится в нужном диапазоне, затем разбивает его на цифры и считает их количество, и, наконец, проверяет, есть ли цифра, которая встречается ровно три раза.


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