Delphi. Массивы. Среднее геометрическое
в мартице Х(9,9), сформированной случайным образом, найти среднее геометрическое положительных элементов расположеных ниже главной диагонали и сумму отрцательных ее элементов находящихся на главной диагонали! Пожалуйста!!!
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Если считать, что в X(i,j) i - строки, а j - столбцы
Код: Выделить всё
P:=1;
for i:=2 to 9 do for j:=1 to pred(i) do P:=P*x[i,j];
G:=exp(ln(P)/36);
//36 - это количество элементов под главной диаголью
//оно равно (9*9-9)/2
Нет, что то тут не то, а именно - необходимо вычислить ср. геом. положительных чисел. И еще не забыть что операция произведения применима для двух операндов.
Не проверено, но должно работать
Код: Выделить всё
P:=1;
N:=0;
For i := 2 to 9 do for j := 1 to i-1 do
If x[i,j] > 0 then
begin
inc(n);
p := p*x[i,j];
end;
If n < 2 then writeln('Undefined due to few operand count (',n,')')
else writeln('Average geometric : ',exp(ln(P)/N):9:3);
P := 0;
For i := 1 to 9 do if x[i,i] < 0 do P := P + x[i,i];
If P <> 0 then Writeln('Summ = ',P:9:3) else writeln('Only positive numbers has found');
It's a long way to the top if you wanna rock'n'roll
спасибо, но только мне нужно решение на делфли, а не на паскале !!!
Не вижу разницы, вставьте код в обработчик нажатия кнопки к примеру и замените writeln на memo.lines.add предварительно положив на форму TMemo с именем memo. Для вывода чисел используйте конкатенацию строк (+) и функции преобразования в строку FloattostrF для действительных и Inttostr для целых
It's a long way to the top if you wanna rock'n'roll
