function Nod(a, b: integer): integer;
begin
while b <> 0 do
a := a mod b;
Swap(a, b)
end;
Result := a
procedure ArrIn(var a: array of integer) := a := ReadArrInteger(a.Length);
procedure ArrOut(a: array of integer) := a.Println;
function NodArr(a: array of integer): integer;
var n := a.Length;
if n = 1 then
Result := a[0]
else
Result := Nod(a[0], a[1]);
for var i := 2 to n - 1 do
Result := Nod(a[i], Result);
var n := ReadInteger('Число элементов в массиве 1:');
var a := new integer[n];
Writeln('Введите элементы массива 1');
ArrIn(a);
Writeln('введены элементы:');
ArrOut(a);
Writeln('НОД элементов равен ', NodArr(a));
n := ReadInteger('Число элементов в массиве 2:');
SetLength(a, n);
Writeln('Введите элементы массива 2');
n := ReadInteger('Число элементов в массиве 3:');
Writeln('Введите элементы массива 3');
end.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int A[10]={};// Создаем массив состоящий из 10 элементов.
int CountForPlus = 0;// Счетчик для положительных значений.
int CountForMinus = 0;// Счетчик для отрицательных значений.
int Summ = 0;// Переменная в которой будут храниться сумма элементов массива
printf("Vvedite 10 elementov massiva \n");
for (int i = 0; i < 10; i++)
scanf_s("%d", &A[i]);
if (A[i] < 0)
CountForMinus++;// Если, элемент массива будет отрицательным,
// то счетчик для отрицательных значений будет увеличиваться.
}
CountForPlus++;// Иначе, элемент массива будет положительным,
// то счетчик для положительных значений будет увеличиваться.
//Summ += Arr[i];
if (CountForPlus > CountForMinus) // Сравниваем счетчики, если положительный больше отрицательного то
{ // находим сумму всех элементов массива
Summ += A[i];
printf("%d \n", Summ);
printf("otricatelnih elemntov massiva bolshe chem polochitelnih \n");
system("pause");
return 0;
Объяснение:
function Nod(a, b: integer): integer;
begin
while b <> 0 do
begin
a := a mod b;
Swap(a, b)
end;
Result := a
end;
procedure ArrIn(var a: array of integer) := a := ReadArrInteger(a.Length);
procedure ArrOut(a: array of integer) := a.Println;
function NodArr(a: array of integer): integer;
begin
var n := a.Length;
if n = 1 then
Result := a[0]
else
begin
Result := Nod(a[0], a[1]);
for var i := 2 to n - 1 do
Result := Nod(a[i], Result);
end;
end;
begin
var n := ReadInteger('Число элементов в массиве 1:');
var a := new integer[n];
Writeln('Введите элементы массива 1');
ArrIn(a);
Writeln('введены элементы:');
ArrOut(a);
Writeln('НОД элементов равен ', NodArr(a));
n := ReadInteger('Число элементов в массиве 2:');
SetLength(a, n);
Writeln('Введите элементы массива 2');
ArrIn(a);
Writeln('введены элементы:');
ArrOut(a);
Writeln('НОД элементов равен ', NodArr(a));
n := ReadInteger('Число элементов в массиве 3:');
SetLength(a, n);
Writeln('Введите элементы массива 3');
ArrIn(a);
Writeln('введены элементы:');
ArrOut(a);
Writeln('НОД элементов равен ', NodArr(a));
end.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int A[10]={};// Создаем массив состоящий из 10 элементов.
int CountForPlus = 0;// Счетчик для положительных значений.
int CountForMinus = 0;// Счетчик для отрицательных значений.
int Summ = 0;// Переменная в которой будут храниться сумма элементов массива
printf("Vvedite 10 elementov massiva \n");
for (int i = 0; i < 10; i++)
{
scanf_s("%d", &A[i]);
if (A[i] < 0)
{
CountForMinus++;// Если, элемент массива будет отрицательным,
// то счетчик для отрицательных значений будет увеличиваться.
}
else
{
CountForPlus++;// Иначе, элемент массива будет положительным,
// то счетчик для положительных значений будет увеличиваться.
}
//Summ += Arr[i];
}
if (CountForPlus > CountForMinus) // Сравниваем счетчики, если положительный больше отрицательного то
{ // находим сумму всех элементов массива
for (int i = 0; i < 10; i++)
{
Summ += A[i];
}
printf("%d \n", Summ);
}
else
{
printf("otricatelnih elemntov massiva bolshe chem polochitelnih \n");
}
system("pause");
return 0;
}
Объяснение: