主题:题需要简单.但是能考出的耐性和能力
cicna
[专家分:0] 发布于 2005-06-21 12:23:00
用pascal语言编写如下程序.
第一题
s=1^3+2^3+3^3+……+n^3
^后面的数字为立方数(如1的立方数1^3的表示.其它的类同)
第二题
编写程序,读取一列正数,并确定最大值和最小值之间的差.
第三题
求1+1/2-1/3+1/4-1/5+……+1/100的值
(后面提示:98-1/99+1/100)
第四题
编写一个统计选票的程序。选票的格式是这样的:候选人Li,Zhang,Wang,Xie的代号分别为1,2,3,4,要求在
读到其他代号时报出出错信息并统计废票张数.
注明:不会做的别看.看了就要做出来.哪怕是一条.呵呵
回复列表 (共11个回复)
沙发
zhsas [专家分:1680] 发布于 2005-06-21 15:24:00
看样子我是非要做出来不可了.你好过分呀!不会做就不能看,看了就要做出来.
天底下有这样的道理吗?????????????????你真了得,一出就是四题.真要命呀.
好呀,给其中一个代码;
program zhs (input,output);
var
n,i,s,term:longint;
begin
s:=1;
read(n);
for i:=2 to n do
begin
term:=i*i*i;
s:=s+term
end;
writeln('s=',s)
end.
板凳
zhsas [专家分:1680] 发布于 2005-06-21 16:21:00
还要其它题目代码说话.
3 楼
lubei [专家分:50] 发布于 2005-06-21 19:40:00
我自己算的
第一题的答案是
S=[n(n+1)/2]^2
是吧!!!???
我数学还可以
就是计算机不行
4 楼
zhaoren [专家分:420] 发布于 2005-06-26 17:25:00
第二题答案:
program ex;
var a:array[1..100] of real;
i,j,n:integer;
k:real;
begin
write('n='); readln(n);
for i:=1 to n do read(a[i]);
for i:=1 to n-1 do {
for j:=i+1 to n do {
if a[i]<a[j] then begin {排序}
k:=a[i];a[i]:=a[j];a[j]:=k;{
end; {
k:=abs(a[1]-a[n]);
writeln(k);
end.
加分不?QQ:523614832
[em19]
5 楼
zhaoren [专家分:420] 发布于 2005-06-26 17:43:00
第三题编码如下:
var i:integer;r:real;
begin
a:=1;
for i:=2 to 100 do
a:=a+a/i;
writeln(a:1);
end.
第四题没写清楚,如果能看清“要求在”后面的字,
一定也一并解决了。^_^……QQ523614832
6 楼
zhsas [专家分:1680] 发布于 2005-06-30 02:07:00
第二题
编写程序,读取一列正数,并确定最大值和最小值之间的差.
第三题
求1+1/2-1/3+1/4-1/5+……+1/100的值
(后面提示:98-1/99+1/100)
请看清题目再做.楼上的有错误.
7 楼
zhsas [专家分:1680] 发布于 2005-06-30 02:47:00
program zhs (input,output);
var
t,i:integer;
s:real;
begin
t:=1;
s:=1;
for i:=2 to 100 do
begin
t:=t*-1;
s:=s-t/i
end;
writeln('1+1/2-1/3+1/4-1/5+...+1/98-1/99+1/100=',s)
end.
8 楼
菜鸟飞啊飞 [专家分:0] 发布于 2005-07-02 18:35:00
问和弱智D的问题。。。这个有什么问题。。。(第3题)
program haha;
var a:integer;b,c,d:real;
begin
for a:=2 to 100 do
begin
if a mod 2=0 then b:=1/a
else c:=-1/a;
begin
d:=1+b+c;
writeln('1+1/2-1/3+1/4-1/5......+1/100=',d);
end;
end;
end.
9 楼
菜鸟飞啊飞 [专家分:0] 发布于 2005-07-02 18:39:00
初学的。。请大家多多指教啊。。。
10 楼
yyf1100 [专家分:0] 发布于 2005-07-11 10:47:00
第3题
var s,s1,s2:real;
i:integer;
begin
for i:=1 to 50 do
begin
s1:=(1/(i*2))+s1;
s2:=-(1/(i*2-1))+s2;
end;
s:=s1+s2+2;
writeln(s:0:3);
end.
不过 楼主你也太不给人余地了
话可不是你这样 说的
我来回复