
Напишите программу, которая получает с клавиатуры натуральное число и определяет, есть ли в его
десятичной записи одинаковые цифры, стоящие рядом. пожалуйста питон, с использованием цикла while и если не сложно с объяснениями

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

Ответ:
Var
N,A:integer;
Begin
Write('N = ');Read(N);
A:=0;
While N>0 do
Begin
if (N mod 10) > A then A:= N mod 10;
N:=N div 10;
End;
Write(A)
End.
Var
N,A,B:integer;
C:boolean;
Begin
Write('N = ');Read(N);
A:=-1;
B:=-2;
C:=false;
While N>0 do
Begin
if A=B then C:=true;
if N>0 then
Begin
A:=N mod 10;
N:=N div 10;
End;
if A=B then C:=true;
if N>0 then
Begin
B:=N mod 10;
N:=N div 10;
End;
End;
if A=B then C:=true;
if C then Write('Есть')
else Write('Нет')
End.



Конечно, вот программа на Python, которая выполняет указанную задачу с использованием цикла while
и объяснениями:
python# Получаем натуральное число от пользователя
number = int(input("Введите натуральное число: "))
# Преобразуем число в строку для работы с его цифрами
number_str = str(number)
# Флаг, который будет указывать на наличие одинаковых цифр
has_repeating_digits = False
# Индекс, с которого начинаем проверку (с первой цифры)
index = 0
# Используем цикл while для проверки каждой пары соседних цифр
while index < len(number_str) - 1:
if number_str[index] == number_str[index + 1]:
has_repeating_digits = True
break # Если найдена одинаковая пара цифр, завершаем цикл
index += 1
# Выводим результат
if has_repeating_digits:
print("В числе есть одинаковые цифры, стоящие рядом.")
else:
print("В числе нет одинаковых цифр, стоящих рядом.")
Объяснения:
Мы сначала запрашиваем у пользователя натуральное число с помощью
input
и преобразуем его в целое число с помощьюint
.Затем мы преобразуем это число в строку
number_str
, чтобы иметь доступ к его цифрам по отдельности.Устанавливаем флаг
has_repeating_digits
вFalse
, чтобы начать с предположением, что нет одинаковых цифр.Используем цикл
while
, чтобы перебирать пары соседних цифр в числе. Мы сравниваем цифры по индексуindex
иindex + 1
. Если они одинаковы, мы устанавливаемhas_repeating_digits
вTrue
и выходим из цикла с помощьюbreak
.По завершении цикла мы проверяем значение
has_repeating_digits
и выводим соответствующее сообщение пользователю.


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








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