Заполнить массив С из 20 элементов следующим образом: первые 10 элементов случайные числа из интервала (-15, 21), следующие 7 по формуле i*6, остальные ввести с клавиатуры. Распечатать массив в строчку. Найти: а) сумму четных э...

Заполнить массив С из 20 элементов следующим образом: первые 10 элементов случайные числа из интервала (-15, 21), следующие 7 по формуле i*6, остальные ввести с клавиатуры. Распечатать массив в строчку. Найти: а) сумму четных элементов б) количество положительных элементов в) найти минимальный элемент во второй половине массива г) отсортировать массив по убыванию
Гость
Ответ(ы) на вопрос:
Гость
//Сегодня буду скучным //Pascal ABC.NET v3.1 сборка 1219 Const  n=20; Var  ar:array[1..n] of integer;  i,s,k,min,j:integer; begin  randomize;  min:=2147483647;  for i:=1 to 10 do  ar[i]:=random(-15,21);  for i:=11 to 17 do  ar[i]:=i*6;  for i:=18 to n do  readln(ar[i]);  writeln('Array:');  for i:=1 to n do  write(ar[i]:4);  writeln;  i:=2;  while i<>n+2 do  begin  s:=s+ar[i];  i:=i+2;  end;  writeln('Sum=',s);  for i:=1 to n do  if ar[i]>0 then k:=k+1;  writeln('Count of positive elements=',k);  for i:=10 to n do  if min>ar[i] then min:=ar[i];  writeln('Min=',min);  for i:=1 to n-1 do   for j:=i+1 to n do    if ar[i]
Гость
//PascalABC.NET 3.1 сборка 1239 begin     var a := ArrRandomInteger(10, -15, 21) + ArrGen(7, i -> i * 6, 11) + ReadArrInteger(3);     a.Println;     Println('а) сумму четных элементов = ', a.Where(x -> x mod 2 = 0).Aggregate((s, x)-> s + x));     Println('б) количество положительных элементов = ', a.Count(x -> x > 0));     Println('в) найти минимальный элемент во второй половине массива = ', a.Skip(10).Min);     Println('г) отсортировать массив по убыванию = ');     a := a.SortedDescending.ToArray;     a.Println; end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы