Viết chương trình cho phép nhập một dãy gồm N số nguyên từ bàn phím và thực hiện. a) Tính tổng các số nguyên chẵn trong dãy số đó và in ra màn hình. b) In ra màn hình dãy số tăng dần đã được sắp xếp. c) In ra màn hình phần tử có giá trị tuyệt đối lớn nhất trong dãy. Ví dụ: Nhap N: 6 Day so: 5, 2, -6, 1, 3, -8 a) Tong cac so nguyen chan: 2 b) Day so tang dan: -8, -6, 1, 2, 3, 5 c) Phan tu co gia tri tuyet doi lon nhat la: -8 Bài làm Program Cau4; Uses crt; Var A:array[1..20] of integer; tam,i,N,j:byte; S:integer; Begin clrscr; write('Nhap so luong phan tu:',N); Readln(N); For i:=1 to N do begin write('A[',i,'] ='); Readln(A[i]); end; For i:=1 to N do if A[i] mod 2 = 0 then S:=S+A[i]; Writeln('Tong cac so chan trong day = ',S); writeln('Day vua sap xep la:'); For i:=1 to N-1 do for j:=i+1 to N do if A[i]>A[j] then begin tam:=A[i]; A[i]:=A[j]; A[j]:=tam; End; For i:=1 to N do write(A[i],' '); writeln(''); If abs(A[1])>abs(A[N]) then writeln('Phan tu co gia tri tuyet doi lon nhat la: ',A[1]) else writeln('Phan tu co gia tri tuyet doi lon nhat la: ',A[n]); Readln END. Xem hộ mk sai chỗ nào mà chạy mãi ko đc

1 câu trả lời

Program Cau4;
Var A:array[1..20] of integer;
       tam,i,N,j:byte;
       S:integer;
Begin
     write('Nhap so luong phan tu:',N);
     Readln(N);
For i:=1 to N do
     begin
          write('A[',i,'] =');
          Readln(A[i]);
     end;
     For i:=1 to n do
         If A[i] mod 2 = 0 then S:=S+A[i];
         Writeln('Tong cac so chan trong day = ',S);
writeln('Day vua sap xep la:');
     For i:=1 to N-1 do
         for j:=i+1 to N do
         if A[i]>A[j] then
         begin
              tam:=A[i];
              A[i]:=A[j];
              A[j]:=tam;
         End;
For i:=1 to N do
         write(A[i],' ');
writeln('');
     If abs(A[1])>abs(A[N]) then writeln('Phan tu co gia tri tuyet doi lon nhat la: ',A[1])
     else  writeln('Phan tu co gia tri tuyet doi lon nhat la: ',A[n]);
Readln
END.

bạn thử copy xong chạy xem đc chưa