Ну начнем с того, что твоя функция ничего не возвращает, она выводит на экран информацию. Второй косяк в том, что функция isdigit() проверяет всю строку, то есть, при строке с одними цифрами твоя программа даст верный ответ.
Исправить максимально просто, нам нужно проверить каждый символ строки, если встречаем хоть 1 цифру, то возвращаем true, а если не встретим в строке цифр - false.
Максимально простой вариант для новичка, скорее всего, такой:
14.9 (равнобедренные трапеции (с комментариями)):
#S=1/2h(a+b)
print ('Введите первое основание для первой трапеции')
af=int(input()) # Первое основание первой
print('Введите второе основание для первой трапеции')
bf=int(input()) # Второе основание первой
print('Введите высоту для первой трапеции')
hf=int(input()) # Высота первой
print ('Введите первое основание для второй трапеции')
aas=int(input()) # Первое основание второй
print ('Введите второе основание для второй трапеции')
bs=int(input()) # Второе основание второй
print ('Введите высоту для второй трапеции')
hs=int(input()) # Высота второй
pf=(af+bf)+af-bf)/2)**2+hf**2)**0.5)*2 #Периметр первой
ps=(aas+bs)+aas-bs)/2)**2+hs**2)**0.5)*2 #Периметр второй
sf=(af+bf)*hf/2 # Площадь первой
ss=(aas+bs)*hs/2 #Площадь второй
print ('Сумма периметров=', pf+ps)
print ('Сумма площадей=', sf+ss)
14.23 (Трехзначные простые числа):
for a in range (100,1000):
b=0
for i in range (2,a):
if a%i==0:
b+=1
if b==0:
print(a)
P.S: Вставлено из среды разработки, проверку на компиляторе программы
Ну начнем с того, что твоя функция ничего не возвращает, она выводит на экран информацию. Второй косяк в том, что функция isdigit() проверяет всю строку, то есть, при строке с одними цифрами твоя программа даст верный ответ.
Исправить максимально просто, нам нужно проверить каждый символ строки, если встречаем хоть 1 цифру, то возвращаем true, а если не встретим в строке цифр - false.
Максимально простой вариант для новичка, скорее всего, такой:
def number(x):
for i in x:
if i.isdigit():
return True
return False
print(number('xx'))