如何用pascal写一个数的倒数?

如何用pascal写一个数的倒数?,pascal,Pascal,我的pascal程序有点问题 我需要输入一个数字,然后我需要程序将该数字的倒数相加。它应该是这样的:假设数字是5(n=5),那么我需要我的程序编写1/1+1/2+1/3+1/4+1/5,作为这个加法的结果,我需要使用for,to,do来得到一个解决方案,所以如果有人能帮助我,我会非常感谢。 我试过这样的方法: program reciprocaladdition; var x : integer: begin writeln('enter number'); readln(x); f

我的pascal程序有点问题

我需要输入一个数字,然后我需要程序将该数字的倒数相加。它应该是这样的:假设数字是5(n=5),那么我需要我的程序编写
1/1+1/2+1/3+1/4+1/5
,作为这个加法的结果,我需要使用
for,to,do
来得到一个解决方案,所以如果有人能帮助我,我会非常感谢。 我试过这样的方法:

 program reciprocaladdition;
 var x : integer:
 begin
 writeln('enter number');
 readln(x);
 for x:=1 to x do writeln(1/x:0:2)
 readln
end.

但是它不能满足我的需要,所以如果有人能帮助我,我会非常感激。

你的拼写有几个错误:

整数
后面的冒号应为分号;及

writeln后面需要一个分号,因为后面有另一条语句(readln)

除此之外,它在Lazarus+FPC中编译并运行良好。在下面的更正版本中,我添加了计算和显示中间值总和的代码

program reciprocals;

var
  x : integer;
  Sum : Double;  //  a floating-point datatype

begin
  writeln('enter number');
  readln(x);

  Sum := 0;
  for x:=1 to x do begin
    writeln(1/x:0:2);
    Sum := Sum + 1/x;
  end;
  writeln('Sum: ', Sum:0:2);
 readln
end.           
这将产生输出

enter number
3
1.00
0.50
0.33
Sum: 1.83

这是你想要的吗?如果没有,请说明原因。

是的,差不多就是这样,但我的程序还需要将特定数字的值相加,程序应该显示1,83(如果x=3 1.0+0.5+0.33)