Доказательство. Пусть числа m и n являются нечетными. Докажем, что число r = m • n также нечетно. m = 2k + 1, n = 2p + 1, где k и p — целые числа. Тогда r = m • n = (2k+1) • (2p+1) = 4kp + 2k + 2p + 1 = 2(2kp + k + p) + 1 = 2s + 1. Задание 16 Алгоритм вычисления значения функции F n , где n натуральное число, задан следующими соотношениями F n 2 при n 2 и при этом n чётно; F n F n 1 F n 2 2 n, если n 2 и при этом n нечётно. Решение Так как на каждом дежурстве, в котором участвует данный человек, он дежурит с двумя другими, то всех остальных можно разбить на пары.
Python 3. Циклы. Операторы while и for
Задача: Напишите программу, которая вводит два целых числа и находит их произведение, не используя операцию умножения. Учтите, что числа могут быть отрицательными.
Задача: Напишите программу, которая вводит натуральное число N и выводит первые N чётных натуральных чисел. Программа должна вывести в одну строчку N первых чётных натуральных чисел, разделив их пробелами.
Задача: Напишите программу, которая вводит натуральные числа a и b и выводит сумму квадратов натуральных чисел в диапазоне от a до b.
Задача: Напишите программу, которая вводит четыре натуральных числа (a, b, c и d) и находит все пятизначные числа, которые при делении на a дают в остатке b , а при делении на c дают в остатке d .
Входные данные: Входная строка содержит два натуральных числа – значения a и b, разделённых пробелами. Гарантируется, что a ≤ b.
Задача: Напишите программу, которая считает количество чётных цифр введённого числа.
Задача: Напишите программу, которая определяет, верно ли, что введённое число содержит две одинаковых цифры, стоящие рядом (как, например, 221).
Что предпочитаете: стационарный компьютер или ноут?
Задача: Напишите программу, которая определяет, верно ли, что введённое число содержит по крайней мере две одинаковых цифры, возможно, не стоящие рядом (как, например, 212). Программа должна вывести слово ‘YES’, если в числе есть две одинаковые цифры, и слово ‘NO’, если такой пары цифр нет.
Задача: Модифицированный алгоритм Евклида для вычисления наибольшего общего делителя двух натуральных чисел, формулируется так: нужно заменять большее число на остаток от деления большего на меньшее до тех пор, пока остаток не станет равно нулю; тогда второе число и есть НОД. Напишите программу, которая реализует этот алгоритм.
Входные данные: Входная строка содержит два числа, разделённые пробелом – a и b .
Выходные данные: Программа должна вывести в одной строке два числа: сначала наибольший общий делитель двух введённых чисел, а затем – количество шагов цикла, которые были выполнены.
Выходные данные: Программа должна вывести в одной строке сумму и произведение введённых чисел (не считая завершающий 0), разделив их пробелом.
Чоповец Владимир Петрович, специалист по ремонту ноутбуков
Если у вас не получается разобраться самостоятельно, пишите мне, я помогу!
Задать вопрос эксперту
Выходные данные Программа должна вывести в одной строке два числа сначала наибольший общий делитель двух введённых чисел, а затем количество шагов цикла, которые были выполнены. Если самостоятельно разобраться в нюансах не получается, пишите мне!
В JS проверка числа на четность также происходит при помощи оператора «%» , и выглядит это следующим образом: Далее пишем условие если остаток деления переменной a на 2 равно 0, то вывести на экран Четное число , в противном случае вывести Нечетное число. Задача Напишите программу, которая определяет, верно ли, что введённое число содержит две одинаковых цифры, стоящие рядом как, например, 221.
Решения задач с «ACMP — Школа программиста»
На нашем сайте представлены решения задач по программированию с сайта acmp.ru на языке C++, по таким темам как:
- Условные операторы и операторы цикла
- Строковые типы данных, строки
- Одномерные и двумерные массивы
- Функции
- Сортировки
- Рекурсия
- Целочисленная арифметика, длинная арифметика
- Теория графов
- Структуры данных
Задана целочисленная матрица, состоящая из N строк и M столбцов. Требуется транспонировать ее относительно горизонтали.
Первая строка входного файла INPUT.TXT содержит два натуральных числа N и M – количество строк и столбцов матрицы. В каждой из последующих N строк записаны M целых чисел – элементы матрицы. Все числа во входных данных не превышают 100 по абсолютной величине.
Во входном файле INPUT.TXT записано сначала число N — количество вершин графа (от 1 до 100). Далее записана матрица смежности размером N×N, в которой 1 обозначает наличие ребра, 0 — его отсутствие. Матрица симметрична относительно главной диагонали.
Но Вам необходимо исключить какие-либо внешние факторы, которые могут исказить исходную информацию и Вы должны реализовать программу «неглухой телефон», которая сможет безошибочно доставлять исходные данные, т.е. в нашем случае функция Fi(x) = x для всех i от 1 до n-1.
В единственной строке входного файла INPUT.TXT записано натуральное число от 1 до 100.
В шкатулке хранится разноцветный бисер (или бусины). Все бусины имеют одинаковую форму, размер и вес. Бусины могут быть одного из N различных цветов. В шкатулке много бусин каждого цвета.
Требуется определить минимальное число бусин, которые можно не глядя вытащить из шкатулки так, чтобы среди них гарантированно были две бусины одного цвета.
Входной файл INPUT.TXT содержит одно натуральное число N — количество цветов бусин (1 ≤ N ≤ 109).
Во входном файле INPUT.TXT содержатся 3 целых положительных числа N (N ≤ 100), A (A ≤ 100), B (B ≤ 100)
Напишите программу, которая считывает целое число и выводит текст с упоминанием следующего и предыдущего для него чисел.
Входной файл INPUT.TXT содержит целое число, не превосходящее 1000 по абсолютной величине.
Бандиты Гарри и Ларри отдыхали на природе. Решив пострелять, они выставили на бревно несколько банок из-под кока-колы (не больше 10). Гарри начал простреливать банки по порядку, начиная с самой левой, Ларри — с самой правой. В какой-то момент получилось так, что они одновременно прострелили одну и ту же последнюю банку.
Определите по этим данным, сколько банок не прострелил Гарри и сколько банок не прострелил Ларри.
Мы начнем с простейших примеров, а в заключительной части рассмотрим несколько олимпиадных заданий, в решении которых нам помогут соображения четности. Если самостоятельно разобраться в нюансах не получается, пишите мне!
Четность и нечетность. Задачи на четность для математического кружка
- Python 3. Циклы. Операторы while и for
- Решения задач с «ACMP — Школа программиста»
Модуль 5.2 (Цикл for. Обход элементов функции range).
Ниже представлены примеры задач с решением на тему Цикл for. Обход элементов функции range.
Программа принимает на вход натуральное число N. Ваша задача вывести на экран все числа от 1 до N каждое число на отдельной строке.
a = int(input())
for i in range(1, a + 1):
print(i)
Программа принимает на вход натуральное число N. Ваша задача вывести на экран все числа от N до 1 в сторону уменьшения каждое число на отдельной строке.
n = int(input())
for i in range(n, 0, -1):
print(i)
Минутка сожаления«Надо было брать биткоин в 2012!» именно такую фразу ваша программа должна вывести на экран 13 раз
for i in range(13):
print(«Надо было брать биткоин в 2012!»)
Каждый, кто смотрел Симпсонов, помнит, что в начале любой серии Барт писал забавные фразы на доске.
Давайте и мы напишем подобную программу. На вход ей будет поступать фраза и затем количество раз, которое эту фразу нужно повторить.
a=input() #фраза
n=int(input()) #количество раз для повторения
for i in range(n):
print(a)
Напишите программу, которая считывает два натуральных числа a и b (гарантируется, что a
— “Fizz”, если это число делится на 3;— “Buzz”, если это число делится на 5;— “FizzBuzz”, если выполнены оба предыдущих условия;— само это число в остальных случаях.
a=int(input())
b=int(input())
for i in range(a, b+1):
if i % 3 == 0 and i % 5 == 0: # если делится и на 3 и на 5 без остатка;
print(‘FizzBuzz’)
elif i % 5 == 0: # если делится и на 5 без остатка;
print(‘Buzz’)
elif i % 3 == 0: # если делится и на 3 без остатка;
print(‘Fizz’)
else:
print(i)
Давайте составим сводную информацию о квадратах и кубах интервала чисел.
На вход программе подается два натуральных числа a и b (гарантируется, что a
Кавычки выводить не нужно и пользуйтесь f-строкой.
Мишка — маленький белый медвежонок. А как известно, маленькие медвежата в свободное время любят играть в кости на шоколадки. Одним замечательным солнечным утром, гуляя по льдинам, Мишка встретила своего друга Криса, которому и предложила сыграть в эту занимательную игру.
Правила её очень просты: сначала определяется значение n — количество раундов игры. В очередном раунде каждый из игроков один раз бросает стандартный игральный кубик, на грани которого нанесены различные числа от 1 до 6. Игрок, выбросивший большее значение, становится победителем в раунде. В случае, если выпавшие значения равны, победа не засчитывается никому.
В самой же игре побеждает участник, выигравший в большем количестве раундов. Если же количества побед, заслуженных игроками, равны, то объявляется ничья.
Мишка ещё совсем маленькая и плохо умеет вести счёт, а потому попросила Вас понаблюдать за ходом игры и сообщить ей результат. Помогите ей!
Найдите, в каких строках из введённых и в каком месте упоминается «рок», причем регистр букв не важен.
Вместо явного цикла прохода по строке в цикле используйте подходящий метод строки.
Предположим, вы переписываете у друга рецепты в блокнотик, но вам не нравится «соль». Переписывайте без этого слова.
Если перечислить все натуральные числа ниже 10, которые кратны 3 или 5, то получим 3, 5, 6 и 9. Сумма этих чисел 23.
Напишите программу, которая принимает натуральное число n и находит сумму всех чисел ниже переданного числа n, которые делятся на 3 или на 5.
n = int(input()) #Вводим число
sum = 0 #Новая переменная, где мы будем записывать значение суммы
for i in range(n): #до нашего числа
#Условие, если число кратно 3 или 5
if i % 3 == 0 or i % 5 == 0:
sum += i #Прибавляем к сумме
print(sum)
Напишите программу, которая найдет сумму кубов натуральных чисел от 50 до 100 включительно
y = 0
for x in range(50, 101):
y += x ** 3
print(y)
24001875
Иногда некоторые слова вроде «civilization» или «internationalization» настолько длинны, что их весьма утомительно писать много раз в каком либо тексте.
Будем считать слово слишком длинным, если его длина строго больше 10 символов. Все слишком длинные слова можно заменить специальной аббревиатурой.
Эта аббревиатура строится следующим образом: записывается первая и последняя буква слова, а между ними — количество букв между первой и последней буквой (в десятичной системе счисления и без ведущих нулей).
Таком образом, «civilization» запишется как «c10n», а «internationalization» как «i18n».
Вам предлагается автоматизировать процесс замены слов на аббревиатуры. При этом все слишком длинные слова должны быть заменены аббревиатурой, а слова, не являющиеся слишком длинными, должны остаться без изменений.
Модуль 2.2 (Строки: индексы и срезы) посвящен изучению самых популярных объектов в программировании на Python — строки.
Ниже представлены примеры задач с решением на тему Строки: индексы и срезы.
У нас есть переменная s, в которой хранится строка «Messi». Как правильно получить символ «e»?
Программа получает на вход строку и ваша задача вывести первый элемент данной строки
Что выведет данная программа?
Ничего, будет ошибка IndexError
Программа получает на вход строку и ваша задача вывести последний символ этой строки
Программа получает на вход строку и ваша задача вывести первые 4 символа этой строки
Гарантируется, что вводится будет строка длиной не менее 4 символов
Программа получает на вход строку и ваша задача вывести последние 4 символа этой строки
Программа получает на вход строку. Ваша задача вывести все символы этой строки, которые имеют четные индексы
Программа получает на вход строку. Ваша задача вывести все символы этой строки, которые имеют нечетные индексы
Программа получает на вход строку. Ваша задача развернуть строку и вывести ее на экран.
Выведите каждый третий символ строки в обратном порядке, начиная с последнего.
Программа получает на вход одно слово. Ваша задача перенести последнюю букву в начало, тем самым сдвинуть все остальные буквы вправо на один разряд. В качестве ответа нужно вывести полученное слово
Строка — это
неизменяемый тип данных
Все решения этого курса
На этом уроке вы научитесь работать с условными операторами if & else, составлять программу с ними. Здесь будет полное решение всех задач с модуля 4.1 из курса «Поколение Python: курс для начинающих» с сайта stepik.org.
- if i / 2: print(i, ‘чётное’) else: print(i, ‘нечётное’)
- if i // 2: print(i, ‘чётное’) else: print(i, ‘нечётное’)
- if i % 2 == 0: print(i, ‘чётное’) else: print(i, ‘нечётное’)
- if i // 2 == 0: print(i, ‘чётное’) else: print(i, ‘нечётное’)
- if i % 2 != 0: print(i, ‘нечётное’) else: print(i, ‘чётное’)
- if i // 2 != 0: print(i, ‘нечётное’) else: print(i, ‘чётное’)
При регистрации на сайтах требуется вводить пароль дважды. Это сделано для безопасности, поскольку такой подход уменьшает возможность неверного ввода пароля.
Напишите программу, которая сравнивает пароль и его подтверждение. Если они совпадают, то программа выводит: «Пароль принят», иначе: «Пароль не принят».
Формат входных данныхНа вход программе подаются две строки.
Формат выходных данныхПрограмма должна вывести одну строку в соответствии с условием задачи.
a = input()
b = input()
if a == b:
print(‘Пароль принят’)
else:
print(‘Пароль не принят’)
Четное или нечетное?
Напишите программу, которая определяет, является число четным или нечетным.
Формат входных данныхНа вход программе подаётся одно целое число.
Формат выходных данныхПрограмма должна вывести «Четное», если число четное, и «Нечетное» — если число нечетное.
a = int(input())
if a % 2 == 0: # если делится без остатка значит четное
print(‘Четное’)
else:
print(‘Нечетное’)
Напишите программу, которая проверяет, что для заданного четырехзначного числа выполняется следующее соотношение: сумма первой и последней цифр равна разности второй и третьей цифр.
Формат входных данныхНа вход программе подаётся одно целое положительное четырёхзначное число.
Формат выходных данныхПрограмма должна вывести «ДА», если соотношение выполняется, и «НЕТ» — если не выполняется.
a = int(input())
first = a // 1000
second = a // 100 — (a // 1000 * 10)
third = (a % 100 — a % 10) / 10
last = a % 10
if first + last == second — third:
print(‘ДА’)
else:
print(‘НЕТ’)
Напишите программу, которая определяет, разрешен пользователю доступ к интернет-ресурсу или нет.
Формат входных данныхНа вход программе подаётся целое число — возраст пользователя.
Формат выходных данныхПрограмма должна вывести текст «Доступ разрешен» если возраст не менее 18, и «Доступ запрещен» в противном случае.
Напишите программу, которая определяет, являются ли три заданных числа (в указанном порядке) последовательными членами арифметической прогрессии.
Формат входных данныхНа вход программе подаются три числа, каждое на отдельной строке.
Формат выходных данныхПрограмма должна вывести «YES» или «NO» (без кавычек) в соответствии с условием задачи.
a = int(input())
b = int(input())
c = int(input())
if b — a == c — b:
print(‘YES’)
else:
print(‘NO’)
Наименьшее из двух чисел
Напишите программу, которая определяет наименьшее из двух чисел.
Формат входных данныхНа вход программе подаётся два различных целых числа.
Формат выходных данныхПрограмма должна вывести наименьшее из двух чисел.
Наименьшее из четырёх чисел ?️
Напишите программу, которая определяет наименьшее из четырёх чисел.
Формат входных данныхНа вход программе подаётся четыре целых числа.
Формат выходных данныхПрограмма должна вывести наименьшее из четырёх чисел.
Напишите программу, которая по введённому возрасту пользователя сообщает, к какой возрастной группе он относится:
до 13 включительно – детство; от 14 до 24 – молодость; от 25 до 59 – зрелость; от 60 – старость.
Формат входных данныхНа вход программе подаётся одно целое число – возраст пользователя.
Формат выходных данныхПрограмма должна вывести название возрастной группы.
Напишите программу, которая считывает три числа и подсчитывает сумму только положительных чисел.
Формат входных данныхНа вход программе подаются три целых числа.
Формат выходных данныхПрограмма должна вывести одно число – сумму положительных чисел.
Примечание. Если положительных чисел нет, то следует вывести 00.
Все решения для степика выложены только для самопроверки. Я не приветствую списывание и нежелание учиться.
Ответы 2
Доступ после просмотра рекламы
Ответы будут доступны после просмотра рекламы
ответ: 20%