45 баллов! Помогите, пожалуйста!
Задачи по теме циклов, есть сомнения что температуру и объем нужно находить через цикл. Посмотрите, возможно ли это и проверьте мою программу.

1. Напишите программу, которая просит ввести температуру по Цельсию, переводит температуру по Цельсию в температуру по Фаренгейту и печатает результаты. Программа должна работать до тех пор, пока не будет введено число меньшее -273. (TF=9/5*TC+32). Перевод температур оформите в виде вспомогательной функции, при описании программы опишите интерфейс вспомогательной функции.

2. Оформите приводимую ниже программу в виде вспомогательной функции и напишите программу, которая просит ввести радиус шара и печатает соответствующий объём шара. Цикл должен работать до тех пор, пока не будет введено отрицательное число.
r=3
v = 3/4 * 3.14 * r ** 3
print ("Объём шара равен %.2f" %v)
Вычисление объёма оформите в виде вспомогательной функции, при описании программы опишите интерфейс вспомогательной функции.

def temp(tc):
for i in range(tc):
tf = (9 / 5) * tc + 32
return tf

def main():
tc = int(input('Введите температуру в градусах Цельсия: '))
while tc >= -273:
tf = temp(tc)
print('Температура Цельсия', tc, 'равна', tf, 'градусам Фаренгейта.')
tc = int(input('Введите температуру в градусах Цельсия: '))

main()


restIess: так у вас же есть циклы?
Аноним: Честно говоря не понял что там цикл делает у тебя

Ответы

Ответ дал: Аноним
2

def convert(temp):

   return (9 / 5) * temp + 32

def main():

   temp_c = 0

   while temp_c > -273:  # пока введённое число больше -273

       temp_c = int(input('Введите температуру в градусах Цельсия: '))

       temp_f = convert(temp_c)

       print(f'Температура Цельсия {temp_c} равна {temp_f} градусам Фаренгейта.\n')

main()


Ada057: От учителя, он часто пишет что-то новое и обычно мудреное. Не знаю, есть ли эта задача в его сборники, но вот ссылка https://studref.com/513961/informatika/osnovy_algoritmizatsii_i_programmirovaniya_na_yazyke_piton
Ada057: *сборнике)
Аноним: Понятно, а какое задание по этому коду?
Ada057: http://skrinshoter.ru/s/171120/oD2EwPUU?a
Аноним: Специально очень запутанно:)
Аноним: print(1)
for i in range(2, 101): # перебор от 2 до 101
x = 1
for j in range(2, i): # перебор от 2 до i
n = i % j # остаток от деления i на j
if n == 0: # если делится без остатка, отметить это в x
x = 0
if x == 1: # если внутри этого цикла до сих пор i на j делилось с остатком
print(i)
Аноним: '''
Показывает для каждого числа (от 1 до 101):

Сколько подряд на список чисел от 2 до этого числа делится на него без остатка, это отражает количество одинаковых чисел.
Само число означает для какого числа происходит эта проверка.
'''
Аноним: # более лаконично это будет выглядеть так
print(1)
for i in range(2, 101): # перебор от 2 до 101
for j in range(2, i): # перебор от 2 до i
if i % j == 0: # если делится без остатка, прекратить перебор
break
print(i)
Ada057: Большое спасибо!)
Аноним: ;)
Вас заинтересует