个人年度工作计划范文:谁能告诉我哪儿错了

来源:百度文库 编辑:高考问答 时间:2024/04/28 13:45:41
program shuxueheidong(input,output);
var
m,i,n,e,box,max,min:integer;
k:array [1..4] of integer;
begin
e:=0;
writeln('Please input four different numbers');
readln(n);
while n<>6174 do
begin
k[1]:=n div 1000;
k[2]:=(n-1000*k[1]) div 100;
k[3]:=(n-1000*k[1]-100*k[2]) div 10;
k[4]:=n-1000*k[1]-100*k[2]-10*k[3];
for m:=1 to 4 do
for i:=1 to 3 do
if k[i]<k[i+1] then
begin
box:=k[i];
k[i]:=k[i+1];
k[i+1]:=k[i];
end;
max:=1000*k[1]+100*k[2]+10*k[3]+k[4];
min:=1000*k[4]+100*k[3]+10*k[2]+k[1];
n:=max-min;
e:=e+1;
end;
writeln(e:5);
end.
是数学黑洞的问题(去掉第五行)
谢谢

我不知道数学黑洞是什么,但是你的程序有一个明显的问题:

k[i]:=k[i+1];
k[i+1]:=k[i];

如此赋值之后,k[i]与k[i+1]不都等于原来的k[i+1]了吗?第二行究竟是 k[i+1] := box 还是其它什么?

你总要大概介绍一下你的程序是做什么的吧,不然怎么知道你错在哪里?

Pascal
请把题目发上来。。
我再看你的程序!
不然难度太大了!!!!
数学黑洞是什么?? 太专业了!

就是就是
楼下说的很对
是程序实践上出了问题
k[i+1]:=k[i];
应改为:
k[i+1]:=box;
MichaelMagic 的勇气是在令在下佩服!!!!!
在不知道程序要干什么的情况下就可以看程序!
强人。。我要向MichaelMagic学习!!!