Viết chương trình thực hiện các yêu cầu sau: Cho số nguyên dương N (N≤50) và dãy A gồm N số nguyên A1, A2,… AN, mỗi số không vượt quá 500. a. Nhập giá trị cho dãy A từ bàn phím. b. Tính tổng các phần tử của dãy. c. Tìm giá trị và chỉ số phần tử lớn nhất, nếu có nhiều phần tử cùng lớn nhất tìm chỉ số lớn nhất. d. Đếm có bao nhiêu phần tử cùng lớn nhất. e. In chỉ số các phần tử = 0.(cứu đang kt giúp dùm các bạn ơi)

2 câu trả lời

Var a:array[1..100] of integer;

      j,n,i,max,m,S:integer;

Begin

  repeat

   write('Nhap so N: ');readln(n);

  until n<=50;

/cau a/

For i:=1 to n do

 Begin

   repeat 

   write('Phan tu thu '  ,i,'  :);readln(A[i]);

  until A[i]<=500;

 End;

/cau b/

For i:=1 to n do S:=S+A[i];

Writeln('Tong cua day',S);

/cau c va cau d/

max :=A[1];

m:=1;

For i:=2 to n do

  If A[i]>max then begin

    max:=A[i];

    m:=i;

   End;

writeln('Gia tri lon nhat cua day',max);

writeln('Chi so lon nhat cua day',m);

j:=0;

 For i:=1 to n do 

If A[i]= max then 

  j:=j+1;

writeln('so phan tu cung lon nhat',j);

 /cau e/

Writeln('Chi so cac phan tu =0');

For i:=1 to n do

 If A[i]=0 then writeln(i);

readln;

end.

program Hotrotinhoc;

var d,i,n,t,max,min: integer;

begin

write(n='); readln(n);

for i:=1 to n do

begin

write('a[',i,']='); readln(a[i]);

t:=t+a[i];

end;

max:=0; min:=32000;

for i:=1 to n do

if a[i]>max then max:=a[i];

for i:=1 to n do

if max=a[i] then inc(d);

if d>1 then

begin

for i:=1 to n do

if min>a[i] then min:=a[i];

write(min);

end;

for i:=1 to n do if a[i]=0 then write(i,' ');

readln

end.