Вопрос задан 07.09.2023 в 11:24. Предмет Информатика. Спрашивает Кирьянова Виктория.

•••Помогите пожалуйста••• Дано натуральное число n (n меньше или равно 9999). Выяснить, верно ли,

что это число содержит ровно три одинаковые цифры с учетом четырех цифр, как, например, числа 3363, 4844, 0300 и т.п. ( если не трудно, напишите решение, 9 класс )
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Казанов Слава.
Не уверен, что в 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.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи можно воспользоваться следующим алгоритмом:

  1. Сначала проверьте, что число n находится в диапазоне от 0 до 9999. Если число находится вне этого диапазона, то оно не подходит.

  2. Затем разбейте число n на его четыре цифры (тысячи, сотни, десятки и единицы). Для этого можно использовать операции деления нацело и взятия остатка от деления на 10.

  3. После разбиения числа на цифры, проверьте, есть ли среди них хотя бы одна цифра, которая встречается ровно три раза. Для этого можно воспользоваться циклом и счетчиком для каждой цифры.

  4. Если найдена цифра, которая встречается ровно три раза, то ответ на задачу положительный. В противном случае ответ отрицателен.

Вот пример решения на Python:

python
n = 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.")

Этот код сначала проверяет, что число находится в нужном диапазоне, затем разбивает его на цифры и считает их количество, и, наконец, проверяет, есть ли цифра, которая встречается ровно три раза.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос