Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения...

0 голосов
76 просмотров

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые
значения от –100 до 100 включительно. Напишите алгоритм, позволяющий найти и
вывести количество пар двузначных и противоположных по знаку элементов массива.
Под парой подразумевается два любых элемента массива, один элемент может быть
участником разных пар. Исходные данные объявлены так, как показано ниже.
Запрещается использовать переменные, не описанные ниже, но разрешается не
использовать некоторые из описанных переменных.


Информатика (21 баллов) | 76 просмотров
0

constN = 30;vara: array [1..N] of longint;i, j, k: longint;beginfor i := 1 to N doreadln(a[i]);...end.

0

Не совсем понял задание. Эти элементы должны быть равны по модулю, но разные по знаку?

0

Нет, они могут быть разные, но одно отрицательное, а другое положительное.

0

1? 5 и -1

Дан 1 ответ
0 голосов

Подозреваю, что не самый рациональный метод решения, но чем смог тем помог :)

const 
N = 30; 
var 
a: array [1..N] of longint; 
i, j, k: longint; 
begin 
for i := 1 to N do 
readln(a[i]); 
j:=0; 
k:=0; 
for i:=1 to N do begin 
if (abs(a[i])>=10) and (abs(a[i])<100) and (a[i]>0) then inc(k); 
if (abs(a[i])>=10) and (abs(a[i])<100) and (a[i]<0) then inc(j); </span>
end; 
if k>j then writeln(j) 
else if k
else if k=j then writeln(k); 
end.

(1.9k баллов)