viết dùm chương trình này nha(cùng trong 1 chương trình)
a) nhập điểm miệng môn toán của n học sinh trong 1 lớp(1<=n<=50)
b) In ra thứ tự của các học sinh có điểm lớn nhất
c) In ra số học sinh giỏi và tỉ lệ % của số học sinh giỏi
d) In ra số học sinh bị điểm dưới 5 và tỉ lệ %
e) Sắp xếp dãy điểm trên theo thứ tự tăng dần
Uses Crt;
Var hs:array[1..500] of integer;
i,j,n,tg,hsg,k:longint;
Begin
Clrscr;
{a}write(‘Nhap so ptu N= ‘); Readln(n);
For i:=1 to n do
Begin
Repeat
Write(‘ Nhap diem mon toan cho hs[‘,i,’] = ‘); Readln(hs[i]);
{c1} until (hs[i]<=10);
If hs[i]>=8 then hsg:=hsg+1;
{d1} If hs[i]<5 then k:=k+1;
End;
Write(‘Thu tu cac hs co diem cao nhat: ‘);
For i:=1 to n-1 do
For j:=j+1 to n do
if hs[i]>hs[j] then
begin
tg:=hs[i];
hs[i]:=hs[j];
hs[j]:=tg;
end;
For i:= 1 to n do write(Hs[i],’ ‘); Writeln;
Write(‘So hoc sinh gioi la: ‘,hsg,’. Ti le chiem: ‘,hsg/n*100:0:0,’%’);
Writeln;
Write(‘So hoc sinh duoi diem 5 la: ‘,k,’. Ti le chiem: ‘,k/n*100:0:0,’%’);
Readln
End.
*Vì ý b= ý d nên mình sẽ không viết dài dòng nữa nhá! Nhớ tick và chọn làm câu trả lời hay nhất giúp mình với nhá. Thanks :333
*p/s: Hỏi và đáp,comment bên dưới!!!
uses crt;
var i,n,j,t,hsg,k:longint; a:array[1..100000]of longint;
begin
clrscr;
write(‘a) Nhap N: ‘);readln(n);
for i:=1 to n Do
begin
write(‘Nhap diem mon toan cua ban thu ‘,i,’: ‘);readln(a[i]);
if a[i]>=8 then inc(hsg);
if a[i]<5 then inc(k);
end;
write(‘b) Thu tu cua cac hoc sinh co diem lon nhat: ‘);
for i:=1 to n Do
for j:=1 to i Do
if a[i]<a[j] then
begin t:=a[i]; a[i]:=a[j]; a[j]:=t; end;
for i:=1 to n Do write(a[i],’ ‘); writeln;
writeln(‘c) So hoc sinh gioi: ‘,hsg,’; Ti le: ‘,hsg/n*100:0:0,’%’);
writeln(‘d) So hoc sinh bi diem duoi 5: ‘,k,’; Ti le: ‘,k/n*100:0:0,’%’);
readln
end.