2014-10-20 3 views
-1

Как я могу это исправить, Когда он выполняется, он не решает для A, B, C, он выводит только то, что я вводил, например, я ввожу 3, B, 5, выдает 3, B, 5, а не ! 3,4,5 Обратите внимание, что отношение тригонометрические являются не завершена, и я просто скопировал их вКак правильно использовать if/then/else здесь?

print("Welcome to my right triangle solver") 
print("What is side A?Enter A if unknown!") 
A=io.read() 
print("What is side B?Enter B if unknown!") 
B=io.read() 
print("What is side C?Enter C if unknown!") 
C=io.read() 
print("What is angle a?Enter a if unknown!") 
a=io.read() 
print("What is angle b?Enter b if unknown!") 
b=io.read() 
print("What is angle c?Enter c if unknown!") 
c=io.read() 
if A == "string" then 
    A=math.sqrt(C^(2)-B^(2)) 
elseif B == "string" then 
    B=math.sqrt(C^(2)-A^(2)) 
elseif C == "string" then 
    C=math.sqrt(A^(2)+B^(2)) 
end 
print("Great!") 
print("Calculating") 
print("Side A is=" .. A) 
print("Side B is=" .. B) 
print("Side C is=" .. C) 
print("Side a is=" .. a) 
print("Side b is=" .. b) 
print("Side c is=" .. c) 
print("done") 
print("What is your name? ") 
name=io.read() 
print("Thank you," .. name) 
print("How was your day?") 
day=io.read() 
print("mine too,bye!") 
io.read() 
+0

Благодарим за быстрый ответ, и это сработало :) –

ответ

1
if B == "string" 

должен быть

if B == "B" 
0

Также возможное решение:.

a = io.read() 

if not tonumber(a) then 
    --do stuff 
end 

Любой вход (даже без ввода), который не является числом, является истинным.

Это, вероятно, то, что вы там пытаетесь сделать.

0

Попробуйте изменить:

If A == "string" then 

С

If type(A) == "string" then 

И сделать это также для В и С, он должен работать.

Смежные вопросы