Найти сумму тех элементов массива, которые больше десяти, и каждый элемент массива разделить на половину этой суммы. Сумму, а также начальный и полученные массивы отпечатать. Паскаль.С использованием подпрограмм: процедур и фун...

Найти сумму тех элементов массива, которые больше десяти, и каждый элемент массива разделить на половину этой суммы. Сумму, а также начальный и полученные массивы отпечатать. Паскаль.С использованием подпрограмм: процедур и функций.
Гость
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.0, сборка 1128 function Sum(a:array of real):real; begin   Result:=0;   foreach var x in a do     if x>10 then Result+=x end; procedure Half(a:array of real); begin   var s:=Sum(a)/2;   for var i:=0 to a.Length-1 do a[i]/=s end; procedure PrintRealArray(a:array of real); begin   foreach var x in a do Write(x:0:3,' ');   Writeln end; begin   var n:=ReadInteger('Количество элементов массива:');   var P:=ArrRandomReal(n,0,20);   Writeln('Исходный массив'); PrintRealArray(P);   Half(P);   Writeln('Результирующий массив'); PrintRealArray(P) end. Тестовое решение: Количество элементов массива: 10 Исходный массив 2.835 3.159 11.777 19.562 1.392 8.941 15.501 14.392 7.945 12.443 Результирующий массив 0.077 0.086 0.320 0.531 0.038 0.243 0.421 0.391 0.216 0.338
Не нашли ответ?
Ответить на вопрос
Похожие вопросы