СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости




Задания
Версия для печати и копирования в MS Word
Задание 25 № 3636

Опишите на русском языке или на одном из языков программирования алгоритм подсчета произведения всех отрицательных элементов заданного целочисленного массива размером 30 элементов, в предположении, что в массиве есть хотя бы один отрицательный элемент.

Решение.

Решение на естественном языке:

Объявим константу N, равную числу элементов массива (30), целочисленные переменные р для хранения текущего произведения отрицательных элементов и i для хранения индекса просматриваемого элемента. Ввод значений в массив описывать не требуется, так как он задан. Присвоим р значение единица. В цикле от первого (нулевого) до последнего (N или N - 1) значения индекса совершим следующие действия.

Сравним с нулем значение текущего элемента массива. В случае, если значение текущего элемента меньше нуля, умножим текущее значение переменной р на значение рассматриваемого элемента массива.

По завершении цикла выводим значение переменной р.

 

ПРОГРАММА НА ПАСКАЛЕ

ПРОГРАММАНА БЕЙСИКЕПРОГРАММА НА СИ
const N=30;

var a: array [1..N] of integer;

p, i: integer;

begin

p := 1;

for i := 1 to N do readln(a[i]);

for i:= 1 to N do

if a [i] < 0

then

p : = p * a [ i ] ;

writeln (p);

end.

N=30

DIM A(N), Р, I AS INTEGER

P = i

FOR i TO N

INPUT A(i)

NEXT i

FOR i=1 TO N

IF A(I) < 0 THEN

P = P * A (I)

ENDIF

NEXT i

PRINT P

END

void main(void)

{ const N=30;

int array [N];

int p;

p = 1;

for (int i = 0; i< N; i++)

scanf(array[i]);

for (int i=0; i{ if (array [i]<0)

{ p= p * array[i];

}

}

printf ("%d", p);

}