Задание № 7187

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от -10 000 до 10 000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести количество пар элементов массива, сумма которых кратна 7 и отрицательна. Под парой подразумевается два подряд идущих элемента массива.

Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.

Бейсик


N = 30
DIM A(N) AS INTEGER
DIM I, J, К AS INTEGER
FOR I = 1 TO N
	INPUT A(I)
NEXT I
...
END

Алгоритмический язык

ал г нач
	цел N = 30 
	цел таб а[1:N] 
	цел i, j, k 
	нц для i от 1 до N 
		ввод а[i] 
	кц
...
кон

Паскаль

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.

Си

#include <stdio.h>
# define N 30 void main()
{
	int a[N]; 
	int i, j, k; 
	for (i =0; i < N; i++) 
		scanf("%d", &a[i]);
...
}

Естественный язык

Объявляем массив А из 30 элементов.
Объявляем целочисленные переменные I, J, К.
В цикле от 1 до 30 вводим элементы массива А с 1-го по 30-й.
...

Решать другие задания по теме: Ал­го­рит­мы обработки массивов

Показать ответ
Комментарий:

Содержание верного ответа

На языке Паскаль

к := 0;
for i := 1 to N - 1 do
	if ( (a [ i] + a[i + l]) mod 7 = 0) and (a[i] + a[i+l] < 0) then
		inc(k); 
writeln(k);

На алгоритмическом языке

k : = 0
нц для i от 1 до N - 1
	если mod(a[i] + a[i+l],7) = 0 и a[i] + a[i+l] < 0 
	то
		k := k + 1 
	все
кц
вывод k

На языке Бейсик

K = 0
FOR I = 1 ТО N - 1
	IF (A(I) + A(I+1)) MOD 7=0 AND A(I) + A(I+1) < 0 THEN 
		К = К + 1 
	END IF 
NEXT I 
PRINT К

На языке Си

k = 0;
for (i = 0; i < N - 1; i++)
	if ((a[i] + a[i+1]) % 7 == 0 && a[i] + a[i+1] < 0)
		k++
printf("%d", k);

На естественном языке

Записываем в переменную К начальное значение, равное 0.  В цикле от первого элемента до предпоследнего находим остаток от деления суммы текущего и лсдеюущего элементов массива на 7. Если значение данного остатка равно 0 и сумма текущего и следующего элементов массива меньше 0, увеличиваем переменную К на единицу. 
После завершения цикла выводим значение переменной К.
Ответ:

Нашли ошибку в задании? Выделите фрагмент и нажмите Ctrl + Enter.