Приклади задач з розгалуженням
Приклади задач з розгалуженням
x = int(input('Введіть число: ')) # вводимо число за допомогою команди inputif x > 0: # команда розгалуження! перевіряємо, чи число додатне print(x) # виводимо число без зміниelse: # інакше — виводимо число з протилежним знаком print(-x)Примітка. Якщо не використовувати розгалуження, для відшукання модуля числа достатньо скористатися вбудованою функцією abs(x).
n = int(input('Введіть число n: ')) # вводимо ціле число за допомогою команди inputprint('Введене число:')if n > 0: # команда розгалуження! перевіряємо, чи число додатне print('додатнє,')elif n < 0: print('від\'ємне,') # перевіряємо, чи число від'ємнеelse: print('є нулем,')if abs(n) < 10: # перевіряємо кількість цифр у числі print('однозначне,') # elif abs(n) >= 10 and abs(n) < 100: # print('двозначне,') # else: # print('багатозначне,') if n % 2 == 0: # перевіряємо, чи число ділиться на 2 print('парне')else: ('непарне')year = int(input('Введіть рік: ')) # вводимо рік за допомогою команди inputif year % 4 == 0: # перевіряємо вказані умови if year % 100 == 0 and year % 400 != 0: print('Не високосний') else: print('Високосний')else: print('Не високосний')units = str(input('Оберіть одиницю вимірювання: \nB - байти, \nKB - кілобайти,\nMB - мегабайти, \nGB - гігабайти, \nTB - терабайти\n\n'))amount = float(input('Введіть величину: '))print('')if units == 'B': print('Кілобайти: %s' % (amount / 2 ** 10)) print('Мегабайти: %s' % (amount / 2 ** 20)) print('Гігабайти: %s' % (amount / 2 ** 30)) print('Терабайти: %s' % (amount / 2 ** 40))elif units == 'KB': print('Байти: %s' % (amount * 2 ** 10)) print('Мегабайти: %s' % (amount / 2 ** 10)) print('Гігабайти: %s' % (amount / 2 ** 20)) print('Терабайти: %s' % (amount / 2 ** 30))elif units == 'MB': print('Байти: %s' % (amount * 2 ** 20)) print('Кілобайти: %s' % (amount * 2 ** 10)) print('Гігабайти: %s' % (amount / 2 ** 10)) print('Терабайти: %s' % (amount / 2 ** 20))elif units == 'GB': print('Байти: %s' % (amount * 2 ** 30)) print('Кілобайти: %s' % (amount * 2 ** 20)) print('Мегабайти: %s' % (amount * 2 ** 10)) print('Терабайти: %s' % (amount / 2 ** 10))elif units == 'TB': print('Байти: %s' % (amount * 2 ** 40)) print('Кілобайти: %s' % (amount * 2 ** 30)) print('Мегабайти: %s' % (amount * 2 ** 20)) print('Гігабайти: %s' % (amount * 2 ** 10))import math # імпортуємо бібліотеку з математичними функціямиprint("Введіть коефіцієнти квадратного рівняння ax^2 + bx + c = 0: ") # вводимо коефіцієнти квадратного рівнянняa = float(input("a = "))b = float(input("b = "))c = float(input("c = ")) D = b ** 2 - 4 * a * c # обчислюємо дискримінантif D > 0: # перевіряємо, чи дискримінант додатній x1 = (-b + math.sqrt(D)) / (2 * a) # шукаємо корені при додатному дискримінанті x2 = (-b - math.sqrt(D)) / (2 * a) print('x1 = %s \nx2 = %s' % (x1, x2)) # виводимо результатelif D == 0: # перевіряємо, чи дискримінант дорівнює нулю x = -b / (2 * a) # шукаємо корінь print('x = %s' % x) # виводимо результатelse: print("Рівняння із заданими коефіцієнтами коренів не має") # якщо дискримінант від'ємний, то коренів немаєprint('Введіть координати точки:') # вводимо координати точкиx = float(input("x = "))y = float(input("y = "))if x > 0 and y > 0: # здійснюємо перевірку попадання у першу чверть, у якій обидві координати додатні print('Точка в I четверті')elif x < 0 and y > 0: # команда elif здійснює перевірку альтернативної умови (друга чверть) print('Точка в II четверті')elif x < 0 and y < 0: print('Точка в III четверті')elif x > 0 and y < 0: print('Точка в IV четверті')elif x == 0 and y == 0: print('Точка в початку координат')elif x == 0: print('Точка на осі Y')elif y == 0: print('Точка на осі X')import math figure = str(input('Оберіть фігуру (введіть слово \"круг", \"прямокутник" чи \"трикутник"): ')) if figure == 'круг': print('Введіть радіус круга:') r = float(input('r = ')) print('Площа круга = %s' % (math.pi * r ** 2))elif figure == 'прямокутник': print('Введіть довжини сторін:') a = float(input('a = ')) b = float(input('b = ')) print('Площа прямокутника = %s' % (a*b))elif figure == 'трикутник': print('Введіть довжини сторін:') a = float(input('a = ')) b = float(input('b = ')) c = float(input('c = ')) p = (a + b + c) / 2 s = math.sqrt(p * (p - a) * (p - b) * (p - c)) print('Площа трикутника = %s' % (s))x = float(input('Введіть значення аргументу функції x: '))if x < 0: y = -2 * x + 8 # обчислення значення функції при x < 0 elif x == 0: y = 0 # обчислення значення функції при x = 0 else: y = abs(x) # обчислення значення функції при x > 0 print('x =', x, '\ny =', y)Програма для перевірки усної лічби.
1. Скільки буде _+_? (після того, як користувач вводить відповідь, програма відповідає «Правильно» чи «Неправильно»).
2. Скільки буде _-_?
3. Скільки буде, якщо _ поділити націло на _?
4. Чому дорівнює добуток чисел _ та _?
5. Чому дорівнює остача від ділення числа _ на число _?
import random # підключення модуля генерації випадкових чиселprint('Програма для перевірки усної лічби.')x1 = random.randint(0, 99) # генерація випадкового цілого числа з проміжку [0, 99]x2 = random.randint(0, 9)y1 = random.randint(0, 99)y2 = random.randint(0, 9)z1 = random.randint(0, 99)z2 = random.randint(1, 9) # оскільки ділення на 0 неприпустиме, дільник обираємо з проміжку [1, 9]k1 = random.randint(0, 99)k2 = random.randint(0, 9)l1 = random.randint(0, 99)l2 = random.randint(1, 9)mark = 0 # задаємо початкове значення для оцінки quest1 = int(input('1. Скільки буде %s+%s? ' % (x1, x2)))if quest1 == x1 + x2: # здійснюємо перевірку print('Правильно!') mark = mark + 1 # зараховуємо 1 бал за правильну відповідьelse: print('Неправильно :(') quest2 = int(input('2. Скільки буде %s-%s? ' % (y1, y2)))if quest2 == y1 - y2: print('Правильно!') mark = mark + 1else: print('Неправильно :(') quest3 = int(input('3. Скільки буде, якщо %s поділити націло на %s? ' % (z1, z2)))if quest3 == z1 // z2: print('Правильно!') mark = mark + 1else: print('Неправильно :(') quest4 = int(input('4. Чому дорівнює добуток чисел %s та %s? ' % (k1, k2)))if quest4 == k1 * k2: print('Правильно!') mark = mark + 1else: print('Неправильно :(') quest5 = int(input('5. Чому дорівнює остача від ділення числа %s на число %s? ' % (l1, l2)))if quest5 == l1 % l2: print('Правильно!') mark = mark + 1else: print('Неправильно :(') print('Ваша оцінка: %s' % mark) # виводимо результуючу оцінкуprint('Введіть координати точки: ')x = float(input('x = ')) # введення першої координати точки з клавіатури y = float(input('y = ')) # введення другої координати точки з клавіатури if pow(x, 2) + pow(y, 2) < 4 and y < -x + 2 and y > x - 2: # перевірка умови попадання у задану область print('так') # вивід повідомлення із позитивною відповіддюelse: # перевірка альтернативних варіантів if pow(x, 2) + pow(y, 2) > 4 and y > -x + 2 and y < x - 2: print('ні') else: print('точка на межі')n = int(input('n = '))m = int(input('m = '))k = int(input('k = '))if (k % n == 0 or k % m == 0) and (k < n * m): print('Це можливо')else: print('Це неможливо')