【发布时间】:2018-07-24 06:07:24
【问题描述】:
我有一个简单但令人恼火的问题。
当我执行下面的代码并为“a”写 10 时,结果是 1010,
但我真的不知道如何,如果我尝试自己解决这个问题。
知道操作的顺序,但我有点卡住了,好像我会忽略一些东西。
请给我一个启动。我将不胜感激。
program task1 (input,output);
var
a, b, c : integer;
begin
b := 0;
c := 1;
readln(a);
while a > 0 do
begin
b := b + c * (a mod 2);
a := a div 2;
c := c * 10;
end;
writeln(b)
end.
【问题讨论】:
-
把每个循环写在纸上,你会看到的。你也应该learn to debug
-
感谢您的评论和提示,我会记住不要太快打扰社区。span>
标签: math pascal operator-precedence