设计用于循环分配的伪代码

时间:2018-02-24 20:43:34

标签: loops pseudocode

我正在介绍java类(第一次接触编程)。我的教授指定了这个 "输入正数并显示10到20之间的数字"

到目前为止,我们已经学习了循环和if else语句,并且可以同时使用这两个语句,也可以两者都不使用。

到目前为止,我的伪代码看起来像这样。如果我走在正确的轨道上,请告诉我。

BEGIN

   Input number from user

   WHILE number is positive

         IF (number >=10 && number >= 20)

         Add 1 to count

         END IF

      Input another number if user wants

      Display amount of numbers between 10 and 20

   END WHILE

END

我是否在正确的轨道上?我已经和他摔跤了几个小时

3 个答案:

答案 0 :(得分:0)

如果您尝试计算10到20之间的数字,那么。 这种说法是错误的 IF(数字> = 10&& number> = 20) 正确的陈述是 IF(数字> = 10&& number< = 20)

答案 1 :(得分:0)

我会说你肯定会走上正确的道路。以下是我的一些建议:

BEGIN / END可能需要也可能不需要。老实说,我不会用它们。但有些人这样做。伪代码是一种 - 对每个人都不同。

始终如一地使用变量,并在代码中使用分配操作。

我的意思是,number = input from user代替Input number from userInput another number if user wants

您应该在while循环开始之前定义counter = 0。否则,您需要递增一个不存在的变量。

IF / END IF可能是一种方法,但您也可以使用括号或缩进来使代码更具可读性并且意味着同样的事情。

最后,关于代码的正确性:

您想要>= 10>= 20吗?您可能意味着<= 20,否则只有大于或等于20的值才有效。但除了一个标志外,你是否希望它们大于/小于或等于 这个数字? &#34;介于&#34;之间是模糊的,可能意味着11-19或1​​0-20。这取决于你如何构建问题。

我的最后一点输入是,你想在每次循环运行时显示数字吗?或者在输入负数后结束循环。如果只想显示一次,请向下移动一行。否则,没什么大不了的。

你肯定是在正确的轨道上,我不会那么冒汗。将伪代码视为逻辑指令。当你阅读它时,以及当你写它时它非常简单地流过它,它不是关于看起来看起来它是如何工作的

祝你好运,一切顺利:)

答案 2 :(得分:0)

伪代码总是难以纠正,但我认为这会更好

1)肯定是不合理的命令,假设输入是否为数字是未知的

2)在while循环之前将count初始化为0。

3)number <= 20而非number >= 20

4)将display移出while循环

5)Display count因为你当前的陈述确实是问题

6)count += 1更短更容易阅读

7)我们应该在while循环中获取数字,以确保在没有输入时停止。一旦输入为空白,while input number from user的某些内容将在某些语言中停止。如果输入无法强制转换为double,则会抛出错误。当输入负数时它将停止。

BEGIN

   Initialize count = 0
   WHILE number = input from user as double && number > 0  

         IF (number >=10 && number >= 20)

             count += 1

         END IF

   END WHILE
   Display count
END