Напечатать сумму, произведение и номера положительных элементов после последнего нулевого элемента
Категория: Delphi/Pascal
2012-03-12 23:20:09
code: #pascal
uses crt; var i,size,num,summa,pr,k:integer; x:array[1..10000] of integer; n:array[1..10000] of integer; begin; clrscr; writeln('Введите размер массива'); readln(size); FOR i := 1 TO size do begin clrscr; writeln('Введите элементы массива'); readln(x[i]); end; writeln('Введенный массив'); FOR i := 1 TO size do begin writeln(x[i]); IF x[i] = 0 THEN num := i; end; if num=0 then begin writeln('Нулевые элементы не найдены'); halt; end; pr := 1; FOR i := num + 1 TO size do begin IF x[i] > 0 THEN begin summa := summa + x[i]; pr := pr * x[i]; k := k + 1; n[k] := i; end; end; writeln('Номера положительных элементов после последнего 0'); FOR i := k TO size do begin writeln(n[i]); end; writeln('Сумма положительных элементов после последнего 0 равна ', summa); writeln('Произведение положительных элементов после последнего 0 равна ', pr); end.
Поделиться: