Данные задачи по программированию мы с моими учениками разбираем в первую очередь. Не смотря на их сильную абстрактность и отдаленность от реальности, проработка таких небольших задачек помогает научиться мыслить в алгоритмических терминах, небольшими инструкциями. Всё это помогает лучше понимать задачи во время перевода человеческого решения на язык, понятный компьютеру.
Итак, попробуйте решить 7 задач для тренировки навыком программирования.
Задачи подходят для начинающих и тех, у кого есть проблемы с пониманием циклов. В конце будут предложены решения.
Задание № 1:
Напишите функцию fun(n), которая возвращает минимальное натуральное число такое, что если от этого числа отнять 7, то оно разделится на 7; если отнять 8, то оно разделится на 8; и если отнять n, то оно разделится на n. (n - натуральное число).
Задание № 2:
Напишите функцию not_leap(), которая возвращает количество невисокосных лет в первых 20 веках нашей эры.
Задание № 3:
Напишите функцию fun(n), которая перебирает числа от 1 до n включительно (n - натуральное число). Если число не оканчивается на 1, то его в счет не берем. Если число не делится на 17, то его в счет не берем. Если число не делится на 19, то его тоже в счет не берем. Функция должна вернуть количество оставшихся чисел.
Задание № 4:
Напишите функцию fun(n), которая перебирает числа i от 1 до n включительно (n - натуральное число) и возвращает количество чисел таких, что i-1 не заканчивается на 3, а i+1 не заканчивается на 9.
Задание № 5:
Напишите функцию fun(n), которая возвращает сумму всех чисел от 1 до n включительно, кроме тех, что делятся на 3 или на 7. (n - натуральное число).
Задание № 6:
Напишите функцию fun(n), которая возвращает произведение всех чисел от 1 до n включительно, кроме тех, что делятся на 2 или на 3. (n - натуральное число).
Задание № 7:
Дано двузначное число n. Напишите функцию fun(n), которая возвращает количество чисел от 1 до n включительно, в записи которых нет троек. Напомним, что первая цифра двузначного числа равна n // 10, а последняя цифра любого числа равна n % 10.
Немного подумайте... Далее будут предложенные решения...
Решения
Задание № 1:
Напишите функцию fun(n), которая возвращает минимальное натуральное число такое, что если от этого числа отнять 7, то оно разделится на 7; если отнять 8, то оно разделится на 8; и если отнять n, то оно разделится на n. (n - натуральное число).
Задание № 2:
Напишите функцию not_leap(), которая возвращает количество невисокосных лет в первых 20 веках нашей эры.
Примечание:
Если год не делится на 4, значит он обычный.
- Иначе надо проверить не делится ли год на 100.
- Если не делится, значит это не столетие и можно сделать вывод, что год високосный.
- Если делится на 100, значит это столетие и его следует проверить его делимость на 400.
- Если год делится на 400, то он високосный.
- Иначе год обычный.
Задание № 3:
Напишите функцию fun(n), которая перебирает числа от 1 до n включительно (n - натуральное число). Если число не оканчивается на 1, то его в счет не берем. Если число не делится на 17, то его в счет не берем. Если число не делится на 19, то его тоже в счет не берем. Функция должна вернуть количество оставшихся чисел.
Задание № 4:
Напишите функцию fun(n), которая перебирает числа i от 1 до n включительно (n - натуральное число) и возвращает количество чисел таких, что i - 1 не заканчивается на 3, а i+1 не заканчивается на 9.
Задание № 5:
Напишите функцию fun(n), которая возвращает сумму всех чисел от 1 до n включительно, кроме тех, что делятся на 3 или на 7. (n - натуральное число).
Задание № 6:
Напишите функцию fun(n), которая возвращает произведение всех чисел от 1 до n включительно, кроме тех, что делятся на 2 или на 3. (n - натуральное число).
Задание № 7:
Дано двузначное число n. Напишите функцию fun(n), которая возвращает количество чисел от 1 до n включительно, в записи которых нет троек. Напомним, что первая цифра двузначного числа равна n // 10, а последняя цифра любого числа равна n % 10.
Спасибо, что дочитали до конца :) Если вам нравятся такие разборы, и вы хотите видеть их чаще, то оставьте обратную связь (лайки, комментарии, ваши мысли).
Еще много полезного и интересного вы сможете найти на ресурсах:
Репетитор IT mentor в Instagram
Physics.Math.Code в контакте (VK)