欢迎来到贱贱的博客

扩大
缩小

Pascal之计算小系统

 1 program Project16;
 2 
 3 {$APPTYPE CONSOLE}
 4 VAR
 5 n,i,k,score,b,a:integer;
 6 answer,c:real;
 7 ch:char;
 8 Begin
 9   repeat
10   writeln('1.加法练习');
11   writeln('2.减法练习');
12   writeln('3.乘法练习');
13   writeln('4.除法练习');
14   writeln('5.退出系统');
15    score:=0;              {得分初值为零}
16    k:=0;                  {答对题数初值为零}
17    write('请选择练习项目:');
18     readln(n);
19     writeln;
20      if n<>5 then
21         begin
22            if n=4 then writeln('结果保留两位小数');   {除法运算时提示用户要保留两位小数}
23            writeln;
24            for i:=1 to 10 do
25             begin
26               write('',i,'题:');
27               randomize;
28               a:=random(10)+1;{产生1~10内的随机数}
29               b:=random(10)+1;
30               case n of
31                    1: begin
32                         write(a,'+',b,'=');
33                         read(answer);
34                         if answer=a+b then     {判断输入的答案与正确答案是否相等}
35                                         begin
36                                           score:=score+10;   {正确则加10分}
37                                            k:=k+1;           {记录答对的题数}
38                                            writeln(' ':15,'正确');
39                                          end
40                                        else writeln(' ':15,'错误');
41                         end;
42 
43                    2: begin
44                         write(a,'-',b,'=');
45                         read(answer);
46                         if answer=a-b then
47                                         begin
48                                            score:=score+10;
49                                            k:=k+1;
50                                            writeln(' ':15,'正确');
51                                          end
52                                        else writeln(' ':15,'错误');
53                         end;
54                    3: begin
55                         write(a,'×',b,'=');
56                         read(answer);
57                         if answer=a*b then
58                                         begin
59                                            score:=score+10;
60                                            k:=k+1;
61                                            writeln(' ':15,'正确');
62                                          end
63                                        else writeln(' ':15,'错误');
64                         end;
65                    4: begin
66                         write(a,'÷',b,'=');
67                         read(answer);
68                         c:=(round((a/b)*100))/100;
69                         if answer=c then  {正确答案保留两位小数}
70                                         begin
71                                            score:=score+10;
72                                            k:=k+1;
73                                            writeln(' ':15,'正确');
74                                          end
75                                        else writeln(' ':15,'错误');
76                         end;
77 
78                 end;
79               end;
80   writeln;
81    write('你一个回答对了',k,'道题,','得了',score,'分。');   {输出测试结果}
82   if score>=90 then writeln('Very Good!')
83      else if score>=80 then writeln('Good!')
84           else if score>=70 then writeln('Well')
85               else if score>=60 then writeln('Pass!')
86                  else writeln('Fail!');
87    writeln;
88    write('你想继续选择练习项目吗?',' ':2,'(Y/N)',' ':4);  {判断用户是否想继续测试}
89    readln;
90    read(ch);
91    writeln
92    end;
93    until (ch='N')OR(CH='n')or(n=5);{输入N或n则表示用户退出测试}
94    end.

posted on 2017-01-20 10:40  L的存在  阅读(217)  评论(0编辑  收藏  举报

导航