伪代码理解莫赫课
pseudocode understanding Mauch lesson
display user message
WHILE TRUE
get score
if score is from 0 to 100
add score to score total
add 1 to number of scores
elseif score i 999
end loop
else print error message
calculate average score
display results
------------------------------------我是这样写的---- ------
#welcome message
print("thank us for testing")
print ("enter 999 to top running")
print ("*"* 20)
while True:
score = int(input("Enter grad score: "))
scores = 0
if score >=0 and score <=100:
score += scoreTotal
scores += 1
elif score == 999:
break
else:
print("error message")
averageScore = scoreTotal / score.
我正在尝试使用这本 Mauch 的书来学习,尽管一旦我开始使用伪代码就会有点困惑。有人可以解释我做错了什么吗?
您只是在添加内容的顺序等方面存在一些简单的语法问题。每次循环时将分数保持在循环中会将其重置为 0,我认为这不是您想要的。另外,确保在循环结束时检查除以零。都可以在下面看到:
#welcome message
print("thank us for testing")
print ("enter 999 to top running")
print ("*"* 20)
scoreTotal = 0
scores = 0 #moved out of the loop to maintain value
while True:
score = int(input("Enter grad score: "))
if score >=0 and score <=100:
scoreTotal += score #equivalent to scoreTotal = scoreTotal + score
scores += 1
elif score == 999:
break
else:
print("error message")
#check for division by zero error
if scores > 0:
averageScore = scoreTotal / scores
else:
averageScore = 0
display user message
WHILE TRUE
get score
if score is from 0 to 100
add score to score total
add 1 to number of scores
elseif score i 999
end loop
else print error message
calculate average score
display results
------------------------------------我是这样写的---- ------
#welcome message
print("thank us for testing")
print ("enter 999 to top running")
print ("*"* 20)
while True:
score = int(input("Enter grad score: "))
scores = 0
if score >=0 and score <=100:
score += scoreTotal
scores += 1
elif score == 999:
break
else:
print("error message")
averageScore = scoreTotal / score.
我正在尝试使用这本 Mauch 的书来学习,尽管一旦我开始使用伪代码就会有点困惑。有人可以解释我做错了什么吗?
您只是在添加内容的顺序等方面存在一些简单的语法问题。每次循环时将分数保持在循环中会将其重置为 0,我认为这不是您想要的。另外,确保在循环结束时检查除以零。都可以在下面看到:
#welcome message
print("thank us for testing")
print ("enter 999 to top running")
print ("*"* 20)
scoreTotal = 0
scores = 0 #moved out of the loop to maintain value
while True:
score = int(input("Enter grad score: "))
if score >=0 and score <=100:
scoreTotal += score #equivalent to scoreTotal = scoreTotal + score
scores += 1
elif score == 999:
break
else:
print("error message")
#check for division by zero error
if scores > 0:
averageScore = scoreTotal / scores
else:
averageScore = 0