谁拿了最多奖学金pascal程序
題意
找出獎(jiǎng)學(xué)金最多的學(xué)生
分析
這題就是很簡(jiǎn)單的字符串處理,細(xì)心一點(diǎn)就好。
先把每一個(gè)學(xué)生的獎(jiǎng)學(xué)金算出來(lái),再排序,如果有兩位或兩位以上的學(xué)生獲得的獎(jiǎng)金最多,輸出他們之中在輸入文件中出現(xiàn)最早的學(xué)生的姓名。
var
n,tj,i,gb,xb,lw,q,b,j:longint;
m:array[0..100]of string;
t,p:array[0..100]of longint;
s:string;
begin
? ? readln(n);tj:=0;
? ? for i:=1 to n do
? ? begin
? ? ? ? readln(s);
? ? ? ? m[i]:=copy(s,1,pos(' ',s)-1);
? ? ? ? delete(s,1,pos(' ',s));
? ? ? ? val(copy(s,1,pos(' ',s)-1),q);
? ? ? ? delete(s,1,pos(' ',s));
? ? ? ? val(copy(s,1,pos(' ',s)-1),b);
? ? ? ? delete(s,1,pos(' ',s));
? ? ? ? if copy(s,1,pos(' ',s)-1)='Y' then gb:=1 else gb:=0;
? ? ? ? delete(s,1,pos(' ',s));
? ? ? ? if copy(s,1,pos(' ',s)-1)='Y' then xb:=1 else xb:=0;
? ? ? ? delete(s,1,pos(' ',s));
? ? ? ? lw:=ord(s[1])-ord('0');
? ? ? ? if (q>80)and(lw>=1) then
? ? ? ? begin
? ? ? ? ? ? tj:=tj+8000;
? ? ? ? ? ? t[i]:=t[i]+8000;
? ? ? ? end;
? ? ? ? if (q>85)and(b>80) then
? ? ? ? begin
? ? ? ? ? ? tj:=tj+4000;
? ? ? ? ? ? t[i]:=t[i]+4000;
? ? ? ? end;
? ? ? ? if (q>90) then
? ? ? ? begin
? ? ? ? ? ? tj:=tj+2000;
? ? ? ? ? ? t[i]:=t[i]+2000;
? ? ? ? end;
? ? ? ? if (xb=1)and(q>85) then
? ? ? ? begin
? ? ? ? ? ? tj:=tj+1000;
? ? ? ? ? ? t[i]:=t[i]+1000;
? ? ? ? end;
? ? ? ? if (gb=1)and(b>80) then
? ? ? ? begin
? ? ? ? ? ? tj:=tj+850;
? ? ? ? ? ? t[i]:=t[i]+850;
? ? ? ? end;
? ? ? ? p[i]:=i;
? ? end;
? ? for i:=1 to n-1 do
? ? begin
? ? ? ? for j:=i+1 to n do
? ? ? ? if (t[i]<t[j])or(t[i]=t[j])and(p[j]<p[i]) then
? ? ? ? begin
? ? ? ? ? ? t[0]:=t[i];t[i]:=t[j];t[j]:=t[0];
? ? ? ? ? ? p[0]:=p[i];p[i]:=p[j];p[j]:=p[0];
? ? ? ? ? ? m[0]:=m[i];m[i]:=m[j];m[j]:=m[0];
? ? ? ? end;
? ? end;
? ? writeln(m[1]);
? ? writeln(t[1]);
? ? write(tj);
end.
轉(zhuǎn)載于:https://www.cnblogs.com/YYC-0304/p/9500210.html
總結(jié)
以上是生活随笔為你收集整理的谁拿了最多奖学金pascal程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 凌乱的yyy
- 下一篇: 单词接龙pascal程序