Задан массив Q из N элементов определить последний целочисленный элемент вычислить сумму отрицательных элементов с индексами i=1,3,5,7,Найти среднее арифметическое элементов, значения которых не меньше B
Uses Crt; const n=5; m=7; type Mas = array [1..n, 1..m] of integer; var i, j, j1, j2: integer; Sumj1, Sumj2: real; A: Mas; begin ClrScr; Randomize; SumJ1:=0; SumJ2:=0; for i:=1 to n do for j:=1 to m do A[i,j]:=random (10); WriteLn (' Massiv A: '); for i:=1 to n do begin for j:=1 to m do Write (A[i,j]:4); WriteLn; end; WriteLn; repeat Write (' Stolbez #1 = '); ReadLn(j1); until (j1>=1) and (j1<=m); repeat Write (' Stolbez #2 = '); ReadLn(j2); until (j2>=1) and (j2<=m) and (j1<>j2); for i:= 1 to n do SumJ1 := SumJ1+A[i,j1]; for i:= 1 to n do SumJ2:=SumJ2+A[i,j2]; SumJ1:=SumJ1/n; SumJ2:=SumJ2/n; WriteLn; WriteLn (' Srednee stolbza ', j1, ' = ', SumJ1:4:2); WriteLn (' Srednee stolbza ', j2, ' = ', SumJ2:4:2); ReadLn; end.
И пояснение, как это работает, т.е. по сути алгоритм на русском языке. ArrRandom(30,0,1000) создает массив из 30 элементов и заполняет его случайными значениями из диапазона [0,1000]. Далее этот массив обрабатывается методом Println, который направляет значения элементов на вывод, разделяя их запятой с последующим пробелом и в конце вывода добавляет смену строки. Затем элементы массива проходят фильтр Where(x->Odd(x)), который пропускает через себя только те значения, которые удовлетворяют условию Odd(значение элемента)=True, а мы знаем, что Odd() возвращает True для нечетного аргумента. Далее фильтр элементы обрабатываются методом Average, который умеет принимать набор значений и возвращать их среднее. И наконец, процедура Writeln выводит полученное значение, предваряя его текстовым пояснением.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку