#include <iostream>
#include <time.h>
using namespace std;
int main()
{
srand(time(NULL));
int N[100];
int sum = 0;
for(int i=0;i<100;i++){
N[i] =rand();
}
cout << "vse elementu" << endl;
for(int i=0;i<100;i++)
cout << N[i] << " ";
cout << endl;
cout << "nechetnue elementu" << endl;
for(int i=0;i<100;i++){
if(N[i]%2!=0)
sum = sum + N[i];
cout << N[i] << " ";
}
cout << endl;
cout<< "suma nechetnuh = " << sum << endl;
system("pause");
return 0;
}
Объяснение:
Написал программу так, что-бы сначала выводило 100 элементов(рандом чисел), потом выводило нечетные элементы, потом выведет уже суму нечетных
begin
var a:=ArrRandom(20,1,100);
a.Println;
var tri:=a.Where(x->(x mod 10)=3);
writeln(tri.Max);
end.
Ввод - 9 13 22 49 68 67 98 11 28 12 69 73 20 91 63 69 81 93 99 66
Вывод - 93
ВАРИАНТ 2
const m = 20;
var a, b: array [1..m] of integer;
i, max_num: integer;
begin
for i := 1 to m do
Read(a[i]);
for i := 1 to m do
if (a[i] mod 10 = 3) then begin
b[i] := a[i];
end;
max_num := b[1];
for i := 2 to m do
if (b[i] > max_num) then
max_num := b[i];
writeln('Max = ', max_num);
end.