Skip to content

Instantly share code, notes, and snippets.

@bannovGB
Last active April 7, 2024 15:30
Show Gist options
  • Save bannovGB/a6c8bd1be85c37de5c135efd7e9961a1 to your computer and use it in GitHub Desktop.
Save bannovGB/a6c8bd1be85c37de5c135efd7e9961a1 to your computer and use it in GitHub Desktop.
Python_lesson02
'''Задача 10
На столе лежат n монеток. Некоторые из них лежат вверх решкой, а некоторые – гербом.
Определите минимальное число монеток, которые нужно перевернуть,
чтобы все монетки были повернуты вверх одной и той же стороной.
Выведите минимальное количество монет, которые нужно перевернуть.
Пример:
5 -> 1 0 1 1 0
2 '''
n = int(input('Введите число монеток: '))
from random import randint
a, b = 0, 0
for i in range(n):
temp = randint(0, 1)
print(temp, end=' ')
if temp > 0: a += 1
else: b += 1
print()
if a > b:
print(f'Нужно перевернуть {b} монеток')
else:
print(f'Нужно перевернуть {a} монеток')
# или
list_coins = []
for i in range(n):
list_coins.append(randint(0, 1))
print(list_coins)
zero = list_coins.count(0)
if len(list_coins) - zero < zero:
print(f'Нужно перевернуть {len(list_coins) - zero} монеток')
else:
print(f'Нужно перевернуть {zero} монеток')
'''Задача 12
Петя и Катя – брат и сестра. Петя – студент, а Катя – школьница. Петя помогает Кате по математике.
Он задумывает два натуральных числа X и Y (X,Y≤1000), а Катя должна их отгадать.
Для этого Петя делает две подсказки. Он называет сумму этих чисел S и их произведение P.
Помогите Кате отгадать задуманные Петей числа.
Пример:
4 4 -> 2 2
5 6 -> 2 3 '''
s = int(input('Введите сумму числе: '))
p = int(input('Введите произведение: '))
a = 0
for x in range(s):
for y in range(s):
if x + y == s and x * y == p:
a += 1
print(x, y)
# или
'''for x in range(s):
y = s - x
if x + y == s and x * y == p:
a += 1
print(x, y)
break'''
if a == 0:
print('Вы ввели не корректные данные!')
'''Задача 14
Требуется вывести все целые степени двойки (т.е. числа вида 2**k), не превосходящие числа N.
Пример:
10 -> 1 2 4 8'''
n = int(input('Введите число N: '))
k = 0
res = 1
while res < n+1:
print(res, end=' ')
k += 1
res = 2 ** k
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment