Циклы

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

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

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

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

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

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

Анализ лунок микропланшета

Результаты эксперимента записаны в виде прямоугольной таблицы: R рядов по C лунок. Для каждой лунки измерена интенсивность сигнала.

Лунка считается активной, если её сигнал строго больше порога T. Для каждого ряда определите количество активных лунок.

Требование: используйте вложенные циклы for: внешний — по рядам, внутренний — по лункам ряда.

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

В первой строке записаны три целых числа R C T. Далее идут R строк, в каждой по C целых чисел — значения сигнала.

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

Выведите R строк. В каждой строке — количество активных лунок в соответствующем ряду.

Сравнение эксперимента с моделью

Для N опытов известны ожидаемое значение y и полученное значение x. Для каждого опыта вычисляют квадрат отклонения (y - x)².

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

Требование: пары значений обрабатывайте последовательно в цикле for; хранить все измерения целиком не требуется.

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

В первой строке дано целое число N (N > 0). Далее следуют N строк, в каждой два вещественных числа: ожидаемое и полученное значения.

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

Выведите сумму квадратов отклонений с двумя знаками после десятичной точки и номер опыта с наибольшим квадратом отклонения.

Наибольшее отклонение от эталона

Для N образцов измерили концентрацию глюкозы. Известно эталонное значение E.

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

Требование: обработайте измерения одним циклом for.

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

В первой строке записаны целое число N и вещественное число E. Во второй строке — N вещественных результатов измерений.

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

Выведите максимальное отклонение с двумя знаками после десятичной точки и номер пробы.

Первая аномальная проба

При калибровке pH-метра последовательно проверяют N буферных растворов. Нормальным считается результат от 6.8 до 7.2 включительно.

Найдите номер первой пробы, вышедшей за этот диапазон. Нумерация проб начинается с 1. Если все измерения нормальные, выведите 0.

Требование: используйте цикл for. После обнаружения первой аномалии дальнейший поиск не нужен.

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

В первой строке дано целое число N. Во второй строке записаны N вещественных чисел — результаты измерений.

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

Выведите номер первой аномальной пробы или 0.

pH проб в допустимом диапазоне

Для исследования воды измерили pH у N проб. Будем считать допустимыми значения от 6.5 до 8.5 включительно.

Определите количество допустимых проб и их долю в процентах.

Требование: обработайте значения циклом for.

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

В первой строке дано целое число N (N > 0). Во второй строке записаны N вещественных чисел — значения pH.

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

В первой строке выведите количество допустимых проб. Во второй — их процент с одним знаком после десятичной точки.

Ожидаемая доля гетерозигот

Для нескольких популяций известна частота аллеля A в процентах: p. В модели Харди—Вайнберга ожидаемая доля гетерозигот Aa равна 2pq, где q = 1 - p.

Для каждой популяции вычислите ожидаемую долю гетерозигот в процентах.

Требование: обработайте все популяции циклом for.

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

В первой строке дано целое число N. Во второй строке записаны N целых чисел от 0 до 100 — значения p в процентах.

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

Выведите N чисел через пробел. Каждое значение выведите с одним знаком после десятичной точки.

Серия клеточных делений

В начале наблюдения имеется B клеток. После каждого цикла деления количество клеток удваивается.

Выведите количество клеток после каждого из K циклов деления.

Требование: моделирование выполните циклом for.

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

В одной строке записаны два целых числа B K.

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

Выведите K целых чисел через пробел — количество клеток после 1-го, 2-го, ..., K-го деления. Если K = 0, выведите пустую строку.

Самый короткий и самый длинный ген

Для N генов известна их длина в нуклеотидах.

Найдите длину самого короткого и самого длинного гена.

Требование: выполните поиск в цикле for. Для тренировки не используйте встроенные функции min и max.

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

В первой строке дано целое число N (N > 0). Во второй строке записаны N положительных целых чисел — длины генов.

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

Выведите два числа: сначала минимальную длину, затем максимальную.

Сеянцы выше порога

В опыте измерили высоту N сеянцев. Растение считают достаточно выросшим, если его высота не меньше H миллиметров.

Определите, сколько сеянцев достигли порога.

Требование: переберите измерения циклом for и используйте счётчик.

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

В первой строке записаны два целых числа N H. Во второй строке — N целых чисел, высоты сеянцев.

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

Выведите количество сеянцев с высотой не меньше H.

Средняя масса плодов

С одного растения собрали N плодов. Масса каждого плода измерена в граммах.

Вычислите среднюю массу плода.

Требование: сумму масс получите с помощью цикла for.

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

В первой строке дано целое число N (N > 0). Во второй строке записаны N целых чисел — массы плодов.

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

Выведите среднюю массу с одним знаком после десятичной точки.

Суммарная масса листьев

Для исследования отобрали N листьев и измерили массу каждого листа в миллиграммах.

Найдите суммарную массу всех листьев.

Требование: обработайте измерения циклом for.

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

В первой строке дано целое число N. Во второй строке записаны N целых чисел — массы листьев.

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

Выведите одно целое число — суммарную массу.

Рост бактериальной колонии

В начале наблюдения в чашке Петри находится B бактерий. За каждую минуту число бактерий увеличивается на одно и то же число D.

Определите число бактерий через N минут.

Требование: изменение количества бактерий выполните в цикле for.

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

В одной строке записаны три целых числа: B D N.

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

Выведите одно целое число — количество бактерий через N минут.

Создайте пустой список. С помощью цикла добавьте в него числа от 1 до 10. Выведите получившийся список — все числа в одну строку через пробел.

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

Входных данных нет.

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

Одна строка: числа от 1 до 10 через пробел.

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

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

Каждая строка содержит два целых числа: часы и минуты прихода одного сотрудника (5 ≤ часы ≤ 12, 0 ≤ минуты ≤ 59). Последовательность заканчивается строкой «0 0».

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

Два числа через пробел — часы и минуты прихода самого раннего сотрудника.

Рабочий выполняет задания в течение смены. Длительность каждого задания фиксируется в часах и минутах. Определите суммарное рабочее время.

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

Каждая строка содержит два целых числа: часы и минуты длительности одного задания (0 ≤ часы ≤ 8, 0 ≤ минуты ≤ 59). Последовательность заканчивается строкой «0 0». Она не является заданием.

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

Два числа через пробел — суммарное рабочее время в часах и минутах.

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

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

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

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

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

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

Дано количество целых чисел n. Далее в n строках вводятся целые числа (обозначим их как x).

Для каждого введённого числа x необходимо вычислить значение функции \( f(x)=2x−5\).

Найти значение x (аргумент), при котором функция \( f(x)\) принимает максимальное значение.

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

  • Первая строка: целое число n (количество чисел в последовательности), где \(1 \le n \le 100\).

  • Следующие n строк: целые числа (значения x). Каждое число по модулю не превышает 105


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

Два числа через пробел:

  • первое число: значение x, при котором функция \( f(x)=2x−5\) достигает своего максимума
  • второе число: максимальное значение функции \( f(x)=2x−5\).

 

Дано количество целых чисел n. Далее в n строках вводятся целые числа. Найти число с минимальным абсолютным значением (по модулю). Выведите это значение по модулю.

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

  • Первая строка: количество чисел n. Количество чисел не больше 100.

  • Следующие n строк: целые числа (все числа по модулю не превышают 107)

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

  • Одно число - число с минимальным абсолютным значением. 

Поделиться
Класснуть