Предмет: Информатика,
автор: Sparta2016840
Python, студия не видит переменные 'a' и 'b', в одном участке кода, но видит их в другом и видит 'c' везде. ДАЮ 60 БАЛЛОВ
Не видит в def Checker()
код:
name = input("start, give me your name: ")
def fixering(number):
print(number)
def Checker(numb):
if numb == 0:
try:
a = int(input("I need only ints! what is a? - "))
except:
Checker(0)
else:
print("a = " + str(a))
elif numb == 1:
try:
b = int(input("I need only ints! what is b? - "))
except:
Checker(1)
else:
print("b = " + str(b))
elif numb == 2:
try:
c = int(input("I need only ints! what is c? - "))
except:
Checker(2)
else:
print("c = " + str(c))
print("Count: ((a + b) * c + 25) + a = ?")
print("Count: ((" + str(a) +" + "+ str(b) + ") * " + str(c) + " + 25) + " + str(a) + " = " + " ?")
answ = input("What is your answer? Give it me first! - ")
summAB = int(a) + int(b)
summ1 = summAB * int(c)
summ2 = summ1 + 25
summ3 = int(summ2) + int(a)
if str(answ) == str(summ3):
print("((" + str(a) +" + "+ str(b) + ") * " + str(c) + " + 25) + " + str(a) + " = " + str(summ3) +
". Yes, " + str(name) + ", you said right!" + " It's really " + str(summ3) + "!")
else:
print("((" + str(a) +" + "+ str(b) + ") * " + str(c) + " + 25) + " + str(а) + " = " + str(summ3) +
". No, " + str(name) + ", look at the answer and try again!" + " It's easy, the asnwer is " + str(summ3) + "!")
fixering(2)
def main():
try:
a = int(input("what is a? - "))
except:
Checker(0)
else:
print("a = " + str(a))
try:
b = int(input("what is b? - "))
except:
Checker(1)
else:
print("b = " + str(b))
# c
try:
c = int(input("what is c? - "))
except:
Checker(2)
else:
print("c = " + str(c))
print("Count: ((a + b) * c + 25) + a = ?")
print("Count: ((" + str(a) +" + "+ str(b) + ") * " + str(c) + " + 25) + " + str(a) + " = " + " ?")
answ = input("What is your answer? Give it me first! - ")
print(a,b,c)
summAB = int(a) + int(b)
summ1 = summAB * int(c)
summ2 = summ1 + 25
summ3 = int(summ2) + int(a)
if str(answ) == str(summ3):
print("((" + str(a) +" + "+ str(b) + ") * " + str(c) + " + 25) + " + str(a) + " = " + str(summ3) +
". Yes, " + str(name) + ", you said right!" + " It's really " + str(summ3) + "!")
else:
print("((" + str(a) +" + "+ str(b) + ") * " + str(c) + " + 25) + " + str(a) + " = " + str(summ3) +
". No, " + str(name) + ", look at the answer and try again!" + " It's easy, the asnwer is " + str(summ3) + "!")
main()
badnsnus:
фото кода скинь
Ответы
Автор ответа:
1
Ответ:
Переменные видны только в той области, где их определили.
Объяснение:
Существуют типы переменных, глобальные и локальные.
Глобальные запускаются из любой точки кода и доступны для всех. А локальные, только там, где ты их инициализируешь.
Если допустим, ты объявил переменную в одной области (функции), то в другой ее ты уже не можешь использовать.
Конечно если не укажешь ее глобальной (global)
По коду точно смотреть unreal, никакой табуляции. Там только голову сломаешь. Но в теории объяснил принцип действия.
Похожие вопросы
Предмет: Другие предметы,
автор: еееее16
Предмет: Русский язык,
автор: mrbitex
Предмет: Окружающий мир,
автор: Аноним
Предмет: Русский язык,
автор: cgtiycacc
Предмет: История,
автор: omelonov228