Viết chương trình nhập số nguyên N (0 < N ≤ 10 000) và mảng a gồm N số nguyên. Tính và in ra trung bình cộng của các số âm, số dương trong a. Không tính số 0.

Ví dụ : a[] = {1, -6, 0, 3, -1}. Trung bình cộng là -0.75

Bài giải

PROGRAM tbc_am_duong_mang; USES crt; VAR a:ARRAY[1..100] OF REAL; i,n,x,y:INTEGER; tongam,tongduong,tba,tbd:REAL; BEGIN clrscr; write('So phan tu cua day n= ');readln(n); FOR i:=1 TO n DO BEGIN write('Nhap phan tu a[',i,']: '); readln(a[i]); END; tongam:=0; x:=0; FOR i:=1 TO n DO IF a[i]<0 THEN BEGIN tongam:=tongam+a[i]; x:=x+1; END; tba:=tongam/x; write('TB cong cac so am la: ',tba:5:1); writeln; tongduong:=0; y:=0; FOR i:=1 TO n DO IF a[i]>0 THEN BEGIN tongduong:=tongduong+a[i]; y:=y+1; END; tbd:=tongduong/y; write('TB cong cac so duong la: ',tbd:5:1); readln; END.