Вобласти 20 районов.площади,засеянные пшеницей (в гектарах)и урожай,собранный в каждом районе(в центнерах)хранятся в двух массивах.определите средний урожайность пшеницы по каждому району и по области решить двумя а)без использования дополнительного третьего массива в)с использованием дополнительного массива
// PascalABC.NET 3.2, сборка 1356 от 04.12.2016
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadArrReal('Площади:',20);
var u:=ReadArrReal('Урожай:',20);
s.Zip(u,(x,y)->y/x).Println
end.
Пример работы программы
Площади: 3200 2670 1530 3040 2360 2350 1250 4150 4790 2210 4300 2950 3100 4290 3710 3790 2930 2380 4630 3760
Урожай: 55040 84639 56151 107008 83308 58045 40500 46065 148969 24310 46010 97645 102920 50193 115752 142125 82040 29988 170384 90616
17.2 31.7 36.7 35.2 35.3 24.7 32.4 11.1 31.1 11 10.7 33.1 33.2 11.7 31.2 37.5 28 12.6 36.8 24.1
Вот с массивом )))
// PascalABC.NET 3.2, сборка 1356 от 04.12.2016
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadArrReal('Площади:',20);
var u:=ReadArrReal('Урожай:',20);
var q:=s.Zip(u,(x,y)->y/x).ToArray; q.Println
end.
Также порядок ввода здесь по районам, но при желании можно изменить на ввод по массивам.
А) без использования дополнительного третьего массива
const n=20;
var
a,b: array[1..n] of integer;
sa: real;
i: byte;
begin
randomize;
sa:=0;
for i:=1 to n do begin;
writeln ('Район № ',i);
{write ('Площадь пшеницы: ');
readln (a[i]);
write ('Собрано пшеницы: ');
readln (b[i]);}
a[i]:=random(50,100);
b[i]:=random(500,1000);
writeln ('Площадь пшеницы: ',a[i],' га');
writeln ('Собрано пшеницы: ',b[i],' т');
writeln ('Средняя урожайность: ',b[i]/a[i]:6:2,' т/га');
writeln;
sa:=sa+b[i]/a[i];
end;
sa:=sa/n;
writeln;
writeln ('Средняя урожайность по области = ',sa:6:2,' т/га');
writeln;
writeln ('Массив 1:');
println (a);
writeln ('Массив 2:');
println (b);
end.
Результат работы для N=2
Район № 1
Площадь пшеницы: 98 га
Собрано пшеницы: 815 т
Средняя урожайность: 8.32 т/га
Район № 2
Площадь пшеницы: 63 га
Собрано пшеницы: 583 т
Средняя урожайность: 9.25 т/га
Средняя урожайность по области = 8.79 т/га
Массив 1:
98 63
Массив 2:
815 583
В) с использованием дополнительного массива
const n=20;
var
a,b,c: array[1..n] of real;
sa: real;
i: byte;
begin
randomize;
sa:=0;
for i:=1 to n do begin;
writeln ('Район № ',i);
{write ('Площадь пшеницы: '); readln (a[i]);
write ('Собрано пшеницы: '); readln (b[i]);}
a[i]:=random(50,100);
b[i]:=random(500,1000);
writeln ('Площадь пшеницы: ',a[i],' га');
writeln ('Собрано пшеницы: ',b[i],' т');
c[i]:=b[i]/a[i];
writeln ('Средняя урожайность: ',c[i]:6:2,' т/га');
sa:=sa+c[i];
end;
sa:=sa/n;
writeln;
writeln ('Средняя урожайность по области = ',sa:6:2,' т/га');
writeln;
writeln ('Массив 1:');
println (a);
writeln ('Массив 2:');
println (b);
writeln ('Массив 3:');
println (c)
end.
Результат работы для N=2
Район № 1
Площадь пшеницы: 97 га
Собрано пшеницы: 891 т
Средняя урожайность: 9.19 т/га
Район № 2
Площадь пшеницы: 87 га
Собрано пшеницы: 945 т
Средняя урожайность: 10.86 т/га
Средняя урожайность по области = 10.02 т/га
Массив 1:
97 87
Массив 2:
891 945
Массив 3:
9.18556701030928 10.8620689655172