Помогите закончить программу.

GPavel

Новичок
Пользователь
Авг 11, 2022
18
0
1
Есть программа, но она не заканчивается. Какой команды не хватает?

from random import randint, choice
from math import pow, sqrt, ceil, floor
from time import sleep
while True:
num = float(input("Введите число: "))
print("1. Возведение числа в квадрат")
print("2. Извлечь квадратный корень")
print("3. Округлить число в меньшую сторону")
print("4. Округлить число в большую сторону")
operation = int(input("Выберите операцию: "))
if operation == 1:
print(pow(num, 2))
elif operation == 2:
print(sqrt(num))
elif operation == 3:
print(floor(num))
elif operation == 4:
print(ceil(num))
else:
print("Такой операции нет")
 

pythoner

Новичок
Пользователь
Авг 18, 2022
4
0
1
Так если ты хочешь, что бы она отработала только 1 раз, то зачем используешь бесконечный цикл While? Если я правильно понял проблему, то просто убери цикл.
 

GPavel

Новичок
Пользователь
Авг 11, 2022
18
0
1
Оставить только True?
 

pythoner

Новичок
Пользователь
Авг 18, 2022
4
0
1
Оставить только True?
нет, вообще убери полностью эту строчку:
Python:
while True:
 

pythoner

Новичок
Пользователь
Авг 18, 2022
4
0
1
Оставить только True?
либо можно сделать что бы перед каждым новым кругом программа спрашивала продолжить или завершить:

Python:
from random import randint, choice
from math import pow, sqrt, ceil, floor
from time import sleep
a = 'n'
while a == 'n':
    num = float(input("Введите число: "))
    print("1. Возведение числа в квадрат")
    print("2. Извлечь квадратный корень")
    print("3. Округлить число в меньшую сторону")
    print("4. Округлить число в большую сторону")
    operation = int(input("Выберите операцию: "))
    if operation == 1:
    print(pow(num, 2))
    elif operation == 2:
    print(sqrt(num))
    elif operation == 3:
    print(floor(num))
    elif operation == 4:
    print(ceil(num))
    else:
    print("Такой операции нет")
    a = input('Завершить работу программы y/n:')
    if a == y:
        break
 

GPavel

Новичок
Пользователь
Авг 11, 2022
18
0
1
Спасибо!
 

Форум IT Специалистов