列举出10到1000中所有能被3整除的
最后一位带4的数 //这里都会
然后所有的数字累乘//这里输出到label总是出错,得出的不是所有的乘积,而是最后一个数
结果除以255
var i,k:integer;
begin
for i:=10 to 1000 do
if (i mod 3=10) and (rightstr(inttostr(i),1)='4') then
begin
k:=1;
k:=i*k;
end;
label1.Caption:=inttostr(k);看看,好奇怪啊
最后一位带4的数 //这里都会
然后所有的数字累乘//这里输出到label总是出错,得出的不是所有的乘积,而是最后一个数
结果除以255
var i,k:integer;
begin
for i:=10 to 1000 do
if (i mod 3=10) and (rightstr(inttostr(i),1)='4') then
begin
k:=1;
k:=i*k;
end;
label1.Caption:=inttostr(k);看看,好奇怪啊
begin
k:=1;//此句应该放在循环外
for i:=10 to 1000 do
if (i mod 3=10) and (rightstr(inttostr(i),1)='4') then
begin
k:=i*k;
end;
label1.Caption:=inttostr(k);
i: Integer;
k: Double;
begin
k := 1;
for i := 10 to 1000 do
if (i mod 3 = 0) and (i mod 10 = 4) then k := i * k;
label1.Caption := FloatToStr(k);
end;
Prelude> foldr (*) 1 [x|x <- [10..1000], x `mod` 3 == 0, x `mod` 10 ==4]
20553983621604168089736592814705526241000556016485632299306672719850972361445672484864
i: Integer;
k: Double;
begin
k := 1;
for i := 10 to 1000 do
if (i mod 3 = 0) and (i mod 10 = 4) then k := i * k;
label1.Caption := FloatToStr(k);
end;
==========================
顶