Помощь - Поиск - Пользователи - Календарь
Полная версия: Помогите решить задачу через условный оператор, оченнь надо
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Bazz
[font=Times New Roman]
Дано 4 числа.Если сума найбольшего и найменшего больше суммы 2 - х других чисел, тогда найти среднее геометрическое всех чисел, в другом случае найти их среднее арифметическое.

Помогите очень надо!!! Срочно.
Артемий
Числа вводятся? smile.gif Они в массиве?
Артемий
Вот посмотри по среднему арифметическому:
(и кстати, скажи формулу нахождения среднего геометрического..)
var
arr:array [1..4] of Integer;
min,max,i,o: Integer;
_result: real;
other: array [1..2] of integer;
begin
o:=0;
writeln('Vvedite chisla: ');
for i:=1 to 4 do begin
writeln('Vvedite chislo ',i);
readln(arr[i]);
end;
min:=arr[1];
max:=arr[1];
for i:=1 to 4 do begin
if arr[i]<min then min:=arr[i];
if arr[i]>max then max:=arr[i];
end;
repeat
o:=o+1;
if arr[o]=min then arr[o]:=0;
if arr[o]=max then arr[o]:=0;
until o=4;
for i:= 1 to 4 do begin
if arr[i]<>0then other[i]:=arr[i];
end;
if (min+max)>(other[1]+other[2]) then begin
_result:=((min+max+other[1]+other[2])/4);
end else writeln('I cant do it!');
writeln;
writeln(_result:3:2);
readln


Добавлено через 1 мин.
Если перемудрил, не сердись,сплю находу... smile.gif
compiler
Цитата(Артемий2 @ 20.02.2007 12:14) *

и кстати, скажи формулу нахождения среднего геометрического..

среднее геометрическое n чисел, является корень n-ой степени из произведения этих чисел
Нажмите для просмотра прикрепленного файла
Артемий
Ну тогда так:
function kor(y:real;z:integer):real;
var z1,x:integer;
begin
z1:=z div 2;
for z1:=1 to z1 do begin
y:=sqrt(y);end;
kor:=y;
end;

И используй так:
if (min+max)>(other[1]+other[2]) then begin
_result:=kor(max*min*other[1]*other[2],4);
end else writeln('I cant do it!');


?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.