Вмассиве хранятся сведения об общей стоимости товаров, проданных фирмой за каждый день марта. определить дни, в которые стоимость проданных товаров превысила значение s.
var a,b,i,S:integer; x: array[1..100] of integer; begin for i:=1 to 31 do begin x[i]:=random(1001); write(x[i]:4); end; writeln; readln(S); writeln; for i:=1 to 31 do begin if x[i]>S then write(i:4); end; end.
И пояснение, как это работает, т.е. по сути алгоритм на русском языке. ArrRandom(30,0,1000) создает массив из 30 элементов и заполняет его случайными значениями из диапазона [0,1000]. Далее этот массив обрабатывается методом Println, который направляет значения элементов на вывод, разделяя их запятой с последующим пробелом и в конце вывода добавляет смену строки. Затем элементы массива проходят фильтр Where(x->Odd(x)), который пропускает через себя только те значения, которые удовлетворяют условию Odd(значение элемента)=True, а мы знаем, что Odd() возвращает True для нечетного аргумента. Далее фильтр элементы обрабатываются методом Average, который умеет принимать набор значений и возвращать их среднее. И наконец, процедура Writeln выводит полученное значение, предваряя его текстовым пояснением.
Чтобы прекратить ввод чисел в массив нужно ввести число "-1". class ArrayMiddle{ public static void main(String args[]){ java.util.Scanner in = new java.util.Scanner(System.in); long eArray[] = new long[1]; while((eArray[eArray.length-1] = in.nextLong())!=-1){ long nArray[] = new long[eArray.length+1]; for(int nCell = 0; nCell<eArray.length; nCell++)nArray[nCell]=eArray[nCell]; eArray = nArray; } eArray[eArray.length-1] = 0; for(int cCell = 0; cCell<eArray.length-1; cCell++)eArray[eArray.length-1]+=eArray[cCell]; System.out.print(eArray[eArray.length-1]/(double)(eArray.length-1)); } }
var
a,b,i,S:integer;
x: array[1..100] of integer;
begin
for i:=1 to 31 do
begin
x[i]:=random(1001);
write(x[i]:4);
end;
writeln;
readln(S);
writeln;
for i:=1 to 31 do
begin
if x[i]>S then
write(i:4);
end;
end.