Цикл while

137 задач
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.

Фитнес-браслет фиксирует время начала каждой тренировки и её длительность. Вечерней считается тренировка, начавшаяся в 18:00 или позже. Определите суммарную длительность вечерних тренировок.

Формат входных данных

Каждая строка содержит четыре целых числа: часы и минуты начала тренировки, затем часы и минуты её длительности. Последовательность заканчивается строкой «0 0 0 0».

Формат выходных данных

Два числа через пробел — суммарная длительность вечерних тренировок в часах и минутах. Если вечерних тренировок нет — вывести «0 0».

Робот стоит на ступеньке номер X и должен добраться до ступеньки номер Y. Он может прыгать только на Z ступенек вниз за раз. Напишите программу, которая выводит номер ступеньки после каждого прыжка (если робот не может добраться точно до Y, он останавливается на ближайшей возможной ступеньке).

Входные данные:

  • X — начальная ступенька - целое число не больше 100

  • Y — целевая ступенька - целое число не больше 10

  • Z — размер прыжка - целое число не больше 10
    Каждое число в отдельной строке.

Выходные данные: номер ступеньки после каждого прыжка (каждое число на новой строке)

У учительницы есть X конфет. Она раздаёт их ученикам по очереди, давая каждому по Z конфет. Последний ученик может получить неполную порцию, если конфет останется меньше Z. Учеников в школе достаточно много. Напишите программу, которая выведет, сколько конфет получил каждый ученик.

Входные данные:

  • X — количество конфет - целое число не больше 100

  • Z — конфет каждому - целое число не больше 10
    Каждое число в отдельной строке

Выходные данные: номер ученика и количество конфет через пробел (каждая пара на новой строке). 

По данному натуральному числу N найдите наименьшее натуральное число k, такое что сумма всех натуральных чисел от 1 до k (включительно) не меньше N

Формат входных данных
Во входной строке записано одно натуральное число N (N <= 109)

Формат выходных данных
Выведите одно число - искомое число k.

Макс купил премиум-подписку в Roblox и получил Y робуксов. Каждый день он тратит ровно X робуксов на скины и улучшения, если у него есть такая возможность. Напишите программу, которая выводит остаток робуксов на конец каждого дня, пока у него не закончатся робуксы (станет меньше X).​

Входные данные:

  • X — робуксов тратит в день

  • Y — начальное количество робуксов

Выходные данные: остаток робуксов на конец каждого дня (каждое число на новой строке)

Артём играет в игру, где каждый день его монеты удваиваются. Сейчас у него Y монет, и он хочет узнать, сколько монет будет у него каждый день, пока он не накопит хотя бы Z монет.​

Напишите программу, которая выводит количество монет на конец каждого дня (после удвоения).​

Входные данные:

  • Y — начальное количество монет

  • Z — целевое количество монет

Выходные данные: количество монет на конец каждого дня (каждое число на новой строке)

Даша играет в Roblox и зарабатывает по X робуксов каждый день. Сейчас у неё Y робуксов, и она хочет накопить не менее Z робуксов.

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

Входные данные:

  • X — робуксов зарабатывает в день

  • Y — текущие робуксы

  • Z — цель

Каждое число в отдельной строке.

Выходные данные: баланс на конец каждого дня (каждое число на новой строке)

✓ 9✗ 32500лёгкаяВойти и решать
⏰ Починка машины времени:
[█████████████████░░░] 86% - Модуль 6 из 7 восстановлен
✅ Центральный процессор: СИНХРОНИЗИРОВАН
⚠️ Последний модуль критически важен!

Все модули восстановлены, но машина времени не запускается! Нужен специальный цифровой код синхронизации, который генерируется по древнему алгоритму Хроноса. Этот код создает резонанс между временными потоками! 

Цифровой код состоит из последовательности чисел, которая генерируется по алгоритму, описанному в дневнике Хроноса: 
  • Код начинается с числа, которое отображается на экране.
  • Далее временной поток раздваивается и ускоряется: если предыдущее число было четным, то к нему прибавляется 3 (+3), нечетное число создает квантовый скачок и оно удваивается  (х2).
  • Когда энергия превысит 100 единиц — цифровой код готов!

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


 
На школьной ярмарке вы собираете пожертвования. Волонтёры вводят суммы одну за другой (только целые неотрицательные числа, волонтёры не будут вводить отрицательные числа). Когда кто-то вводит 0 — сбор закрывается, нужно вывести общую сумму.

Напишите программу, которая запрашивает у пользователя ввод чисел в цикле (вводятся только неотрицательные числа), пока не будет введён ноль и выведет сумму чисел.
 
✓ 406✗ 906300лёгкаяВойти и решать
Чтобы найти последнюю цифру числа n необходимо вычислить остаток от деления этого числа на 10. 
d = n % 10
Чтобы уменьшить число в 10 раз (убрать последнюю цифру из записи числа) необходимо целочисленно разделить это число на 10.
n = n // 10
 
Контрольные суммы применяются в штрихкодах, билетах, банковских операциях и это не полный список их применения.

Чтобы быстро проверить, не ошиблись ли при вводе суммы в чеке, считают сумму цифр числа (так называемая контрольная сумма). Выберите программу, которая правильно найдёт сумму цифр числа 123.
 
1) 
n = 123
s = 0
while n > 0:
    n = n // 10
    d = n % 10
    s = s + d
print(s)
3)
n = 123
s = 0
while n > 0:
    d = n // 10
    s = s + d
    n = n % 10
print(s)
2) 
n = 123
s = 0
while n > 0:
    d = n % 10
    s = s + d
    n = n // 10
print(s)
4)
n = 123
s = 1
while n > 0:
    d = n % 10
    s = s + d
    n = n // 10
print(s)
Что будет выведено после выполнения программы?
i = 1
while i <= 3:
    print("Шаг", i)
    i = i + 1
Выберите верный вариант ответа
1)
Шаг 1
Шаг 2
Шаг 3


2) 
Шаг 0
Шаг 1
Шаг 2


3)
Шаг 1
Шаг 2


4)
Ничего не выведет
1631 - 7#60302
Дано натуральное число N. Фрагмент алгоритма 
int M, N;
cin >> N;
M = 0;
while (N != 0) {
    if ((N % 10) % 2 != 0) M++;
    N = N / 10;
}
cout << M;
  1. находит количество четных цифр в числе;

  2. находит количество нечетных цифр в числе;

  3. находит сумму четных цифр числа;

  4. находит произведение нечетных цифр числа.

С клавиатуры вводятся целые положительные числа. Напишите программу, которая находит сумму введенных чисел. Числа вводятся до тех пора, пока не будет введено число 0.

Выведите на экран ответ - сумму введенных чисел.
✓ 365✗ 701300лёгкаяВойти и решать
В салон красоты пришли n девушек. Каждая из них должна посетить парикмахера и косметолога. У каждого она проводит по m часов. За какое наименьшее время k сотрудников салона красоты смогут обслужить всех девушек, если каждый сотрудник может выполнять функции как косметолога, так и парикмахера?

Входные данные
Вводится три натуральных числа k, m, n, не превосходяших 10 000.

Выходные данные
Вывести одно число – минимальное время в часах, которое потребуется для обслуживания всех девушек.
✓ 1✗ 661 200средняяВойти и решать
У исполнителя Калькулятор две команды:

прибавь 1

умножь на 4

Выполняя первую из них, Калькулятор прибавляет к числу на экране 1, а выполняя вторую, умножает число на экране на 4. Запишите порядок команд в программе для получения из нуля числа N.

Входные данные
Вводится одно натуральное число N, не превосходящее 1000.

Выходные данные
Выведите последовательность из команд 1 (прибавь 1) и 4 (умножь на 4), разделенные пробелами. Если решений несколько, выведите любое из них.
✓ 9✗ 16600лёгкаяВойти и решать
В первый день спортсмен пробежал x километров, а затем он каждый день увеличивал пробег на 70% от предыдущего значения. По данному числу y определите номер дня, на который суммарный пробег спортсмена составит не менее y километров.

Входные данные
На вход программа получает два действительных числа x и y . Числа положительные, действительные, не превосходят 1000, заданы с точностью до шести знаков после запятой.
Внимание! В некоторых тестах оба числа находятся на одной строке, а в некоторых — на разных!

Выходные данные
Программа должна вывести единственное целое число.
В первый день спортсмен пробежал x километров, а затем он каждый день увеличивал пробег на 70% от предыдущего значения. По данному числу y определите номер дня, на который пробег спортсмена составит не менее y километров.

Входные данные
На вход программа получает два действительных числа x и y. Числа положительные, действительные, не превосходят 1000, заданы с точностью до шести знаков после запятой.

Выходные данные
Программа должна вывести единственное целое число.
Поделиться
Класснуть