Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

(Pascal) нужно расписать решение задачи чтобы ставить в паскаль

zlak Ученик (100), открыт 1 неделю назад
Дан целочисленный одномерный массив, состоящий из n элементов. Найти сумму и произведение нечетных элементов, кратных 3
2 ответа
Jurijus Zaksas Искусственный Интеллект (445688) 1 неделю назад
Ну мне-то не жалко, но боюсь, засыпесси ты с таким кодом-то:

 type 
PInteger = ^integer;

procedure SumMulInt(_a: PInteger; _n: integer; var __Sum, __Mul: integer);
var
i: integer;
begin
__Sum := 0;
__Mul := 1;
for i := 1 to _n do
if (_a^ mod 3 = 0) and (_a^ and 1 = 1) then
begin
__Sum := __Sum + _a^;
__Mul := __Mul * _a^;
Inc(_a);
end;
end;
Вертолётов 625 Мудрец (12919) 1 неделю назад
Код:
 program SumAndProductOfOddMultiplesOfThree; 

const
n = 10; // Количество элементов в массиве

var
i: Integer;
arr: array[1..n] of Integer;
Sum, Product: Integer;
HasFound: Boolean;

begin
// Пример заполнения массива (можно заменить на чтение из входных данных)
for i := 1 to n do
arr[i] := Random(30) - 15; // Заполняем случайными числами от -15 до 14

Sum := 0;
Product := 1;
HasFound := False;

for i := 1 to n do
begin
if (arr[i] mod 3 = 0) and (Odd(arr[i])) then
begin
Sum := Sum + arr[i];
Product := Product * arr[i];
HasFound := True;
end;
end;

if not HasFound then
Product := 0; // Если не было найдено ни одного подходящего элемента

WriteLn('Сумма нечетных элементов, кратных 3: ', Sum);
WriteLn('Произведение нечетных элементов, кратных 3: ', Product);

Readln;
end.
Код без рандома:
 program SumAndProductOfOddMultiplesOfThree; 

const
n = 10; // Количество элементов в массиве

var
i: Integer;
arr: array[1..n] of Integer;
Sum, Product: Integer;
HasFound: Boolean;

begin
// Ввод элементов массива с клавиатуры
WriteLn('Введите ', n, ' целых чисел:');
for i := 1 to n do
begin
Write('Элемент ', i, ': ');
Readln(arr[i]);
end;

Sum := 0;
Product := 1;
HasFound := False;

for i := 1 to n do
begin
if (arr[i] mod 3 = 0) and (Odd(arr[i])) then
begin
Sum := Sum + arr[i];
Product := Product * arr[i];
HasFound := True;
end;
end;

if not HasFound then
Product := 0; // Если не было найдено ни одного подходящего элемента

WriteLn('Сумма нечетных элементов, кратных 3: ', Sum);
WriteLn('Произведение нечетных элементов, кратных 3: ', Product);

Readln;
end.
Похожие вопросы