1010:平均绩点 分数: 1
题目描述

每门课的成绩分为A、B、C、D、F五个等级,为了计算平均绩点,规定A、B、C、D、F分别代表4分、3分、2分、1分、0分。


输入格式

有多组测试样例。每组输入数据占一行,由一个或多个大写字母组成,字母之间由空格分隔。


输出

每组输出结果占一行。如果输入的大写字母都在集合{A,B,C,D,F}中,则输出对应的平均绩点,结果保留两位小数。否则,输出“Unknown”。


样例输入

A B C D F
B F F C C A
D C E F


样例输出

2.00
1.83
Unknown

program p1010;
var ch:char; st:string;
    s:real;
    i,j,k:longint;
    y:boolean;
begin
  while not eof do
    begin
      readln(st); s:=0; y:=true;
      while pos(' ',st)<>0 do
       delete(st,pos(' ',st),1);
      for i:=1 to length(st) do
        case st[i] of
        'A':s:=s+4;
        'B':s:=s+3;
        'C':s:=s+2;
        'D':s:=s+1;
        'F':s:=s+0
        else
         y:=false;
       end;
     if y then writeln((s/length(st)):0:2) else writeln('Unknown');
   end;
end.

 

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jing1223639316/article/details/46826509
个人分类: 编程
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

1010:平均绩点 分数: 1

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭