Задание №2
9. Дан
целочисленный массив из 30 элементов. Элементы массива могут принимать
произвольные целые значения. Опишите на русском языке или на одном из
языков программирования алгоритм, который находит и выводит номер
третьего положительного элемента массива (если из массива вычеркнуть все
неположительные элементы, этот элемент стоял бы в получившемся массиве
на третьем месте). Если в массиве меньше, чем три положительных
элемента, вывести сообщение об этом.
Паскаль
|
Естественный язык
|
Const N=30 ;
Var a : array
[1..N] of integer ;
i, j, k :
integer ;
begin
for i : =1
to N do
readln (a [i]) ;
…
end.
|
Объявляем массив А из 30 элементов. Объявляем
целочисленные переменные i, j, k. В цикле от 1 до 30 вводим
элементы массива А с 1-го по 30-й.
…
|
В качестве ответа необходимо привести фрагмент программы (или описание
алгоритма на естественном языке), который должен находится на месте
многоточия.
Код Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | uses crt; const nmax=20; var a: array [1..nmax] of integer; i,n,k,ii: byte; begin repeat write('n (ne bolee ',nmax,')='); readln(n); until n in [1..nmax]; for i:=1 to n do begin a[i]:=random(19)-9; write(a[i]:3); if a[i]>0 then begin inc(k); if k=3 then ii:=i; end; end; writeln; if k>=3 then writeln('Третий положительный элемент=',a[ii],', под индексом ',ii) else writeln('В массиве нет трех положительных элементов'); end. |
1)??? Формулировка задания взята не из блога
ОтветитьУдалить2)Дан целочисленный массив из 30 элементов,а в программе :const nmax=20;
var a: array [1..nmax] of integer;
3) n in [1..nmax] - этого мы еще не проходили
У меня возникли сомнения по поводу твоего авторства