我想要一个编程代码来打印一个范围之间的奇数来教学生。在这里,我将范围取为1到10.所以我想打印1到10之间的奇数。
我写了这个编码来打印1到10之间的奇数
program printOdd1to10; {Prints odd numbers 1 - 10}
var counter : integer;
begin
for counter := 1 to 10 do
begin
Writeln(counter); {prints new line}
counter := counter + 2 {increment by value 2, like step 2}
end;
Readln;
end.
但是当我跑步时,会打印一系列错误答案。 那么,如何在pascal编程中打印这种模式奇怪,甚至是3(3,6,9 ......)次数。
答案 0 :(得分:3)
Pascal中的for
语句不支持步长值,您不应该更改索引变量的值(这是编程的一般原则)。测试您感兴趣的条件的索引变量的值(例如,if odd(counter) then...
),或者重新编码为while
或repeat...until
循环,您可以在其中使用'伪 - index'你可以根据需要操纵的变量。
答案 1 :(得分:3)
根据Jeff的回答,编写程序的最佳方法是使用'while'。
i:= 1; // start with an odd number
while i < 10 do
begin
writeln (i);
i:= i + 2; // or inc (i, 2)
end;
每次增加i将确保我总是奇数,因此无需检查。
答案 2 :(得分:1)
我对帕斯卡不太熟悉。但是,我有一个建议,如果它被分成2除以1(如5/2,其余为1),则使用条件来检查数字然后打印它。
我希望它会对你有所帮助。