много на самом деле. Например самый банальный. Перебираешь массив и проверяешь, если текущий элемент при делении на 2 дает в остатке 0 - значит четное. Значит прибавляешь счетчик (например, переменную a++). Иначе ничего не делаешь. В конце выводишь результат счетчика (a)
begin var a:=ArrRandom(10,-50,50); writeln('1)'); a.Println; writeln('Среднее арифметическое четных элементов = ', a.Where(x->x mod 2=0).Average); var c:=ArrRandom(10,-50,50); writeln('2)'); c.Println; writeln('max+min = ',c.Max+c.Min); writeln('3)'); var n:=ReadInteger('n ='); var b:=SeqGen(n,random(5),x->x+random(1,5)).ToArray; b.Println; var s:=ReadInteger('s ='); var k:=b.Where(x->x<s).Count; b:=b[:k]+Arr(s)+b[k:]; b.Println; end.
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
srand ( time(NULL) );
int arr[10],i,k=0;
//Заполняешь массив
for (i=0;i<sizeof(arr)/sizeof(int);i++)
{
arr[i] = 1+rand()%10;
}
//Перебираешь массив
cout<<"Массив :";
for (int i=0; i<sizeof(arr)/sizeof(int);i++)
{
cout<<" "<<arr[i];
if (arr[i] % 2 == 0)
{
k++;
}
}
cout<<endl<<"Четных :"<<k;
return 0;
}
Объяснение:
много на самом деле. Например самый банальный. Перебираешь массив и проверяешь, если текущий элемент при делении на 2 дает в остатке 0 - значит четное. Значит прибавляешь счетчик (например, переменную a++). Иначе ничего не делаешь. В конце выводишь результат счетчика (a)
begin
var a:=ArrRandom(10,-50,50);
writeln('1)'); a.Println;
writeln('Среднее арифметическое четных элементов = ',
a.Where(x->x mod 2=0).Average);
var c:=ArrRandom(10,-50,50);
writeln('2)'); c.Println;
writeln('max+min = ',c.Max+c.Min);
writeln('3)');
var n:=ReadInteger('n =');
var b:=SeqGen(n,random(5),x->x+random(1,5)).ToArray;
b.Println;
var s:=ReadInteger('s =');
var k:=b.Where(x->x<s).Count;
b:=b[:k]+Arr(s)+b[k:];
b.Println;
end.
Пример:
1)
-24 12 -31 -5 -45 36 27 43 46 -6
Среднее арифметическое четных элементов = 12.8
2)
24 -13 -20 -47 16 27 -33 11 22 -33
max+min = -20
3)
n = 10
0 4 5 7 11 15 19 20 24 25
s = 10
0 4 5 7 10 11 15 19 20 24 25