top of page


Цикл while
 

Задача 1.

На вход программе подается последовательность слов, каждое слово на отдельной строке. Концом последовательности является слово «КОНЕЦ» (без кавычек). При этом само слово «КОНЕЦ» не входит в последовательность, лишь символизируя её окончание. Напишите программу, которая выводит члены данной последовательности.

a = input() 

while (a != 'КОНЕЦ'): 

    print(a)      

    a = input() 

 

Задача 2.

На вход программе подается последовательность слов, каждое слово на отдельной строке. Концом последовательности является одно из трех слов: «стоп», «хватит», «достаточно» (маленькими буквами, без кавычек). Сами эти слова в последовательность не входят, лишь символизируя её окончание. Напишите программу, которая выводит общее количество членов данной последовательности.

 

k=0

a = input() 

while a != 'стоп' and a != 'хватит' and a != 'достаточно':

    k+=1     

    a = input() 

print(k)

 

Задача 3.

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

 

sum=0

a = int(input())

while a>=0:

    sum+=a   

    a = int(input()) 

print(sum)  

 

 

Задача 4.

На вход программе подается последовательность целых чисел от 11 до 55, характеризующее оценку ученика, каждое число на отдельной строке. Концом последовательности является любое неположительное число либо число, большее 55. Напишите программу, которая выводит количество пятерок.

 

k=0

a = int(input())

while a>0 and a<6:

    if a==5:

        k+=1   

    a = int(input()) 

print(k) 

 

Задача 5.

Всем известно, что ведьмак способен одолеть любых чудовищ, однако его услуги обойдутся недешево. К тому же ведьмак не принимает купюры, он принимает только чеканные монеты. В мире ведьмака существуют монеты с номиналами 1,5,10,251,5,10,25.Напишите программу, которая определяет, какое минимальное количество чеканных монет нужно заплатить ведьмаку.

k=0

a=int(input())

while a>=25:

    a=a-25

    k+=1

while a>=10 and a<25:

    a=a-10

    k+=1

while a>=5 and a<10:

    a=a-5

    k+=1

while a>0 and a<5:

    a=a-1

    k+=1

print(k)

 

Задача 6.

Дано натуральное число. Напишите программу, которая выводит его цифры в столбик в обратном порядке.

a=int(input())

while a!=0:

    print(a%10)

    a=a//10

 

Задача 7.

Дано натуральное число. Напишите программу, которая меняет порядок цифр числа на обратный.

a=int(input())

while a!=0:

    print(a%10, end="")

    a=a//10

 

 

Задача 8.

Дано натуральное число Напишите программу, которая определяет его максимальную и минимальную цифры.

max=0

min=10

a=int(input())

while a!=0:

    if a%10 >max:

        max=a%10

    if a%10<min:

        min=a%10

    a=a//10

print("Максимальная цифра равна", max)

print("Минимальная цифра равна", min)

 

Задача 9.

Дано натуральное число. Напишите программу, которая вычисляет:

  • сумму его цифр;

  • количество цифр в нем;

  • произведение его цифр;

  • среднее арифметическое его цифр;

  • его первую цифру;

  • сумму его первой и последней цифры.

 

sum=0

k=0

pr=1

posl=0

perv=0

a=int(input())

b=a

posl+=a%10

while a!=0:

    a%10

    k+=1

    sum+=a%10

    pr*=a%10

    a=a//10

while b>9:

    b=b//10

perv=b     

print(sum)

print(k)

print(pr)

print(sum/k)

print(perv)

print(posl+perv)

 

Задача 10.

Дано натуральное число Напишите программу, которая определяет его вторую (с начала) цифру.

a=int(input())

while a>99:

    a=a//10

print(a%10)

 

Задача 11.

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

 

n = int(input())

m = n % 10

answer = 'YES'

while n != 0:

    if m != n % 10:

        answer = 'NO'

    n = n // 10

print(answer)

 

Задача 12.

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

x = int(input())

result = 'YES'

while x // 10 != 0:

    x, n = divmod(x, 10)   

    if n > x % 10:

        result = 'NO'

        break              

print(result)

bottom of page