[CENTER]Добрый вечер![/CENTER]
Народ, у меня конечно же проблема.
Нужно решить задачу на нахождение максимума и минимума в одномерном вещественном массиве в объектно-ориентированной среде. Дело совсем туго как с массивами так и с объектно-ориентированным программирование. Если вы можете мне помочь, то пожалуйста, напишите код программы, если хоть не в объектно-ориентированной среде, то в императивной, чтобы мне было откуда плясать. Заранее благодарю за вашу помощь.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Хыиуду: "Раздел "Алгоритмы", тема "Нахождение максимума""- конечно спасибо, но вопрос в объектно-ориентированной среде так и остался не решённым! Ну вот, мы имеем массив и нам надо найти максимум, на какие тут классы можно разбить эту задачу, я не понимаю???
Класс - массив. Метод класса - найти максимум. Еще один метод класса - найти минимум.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
[syntax='Delphi']
Program prog;
Const lmax=20;
Type mass=array[1..lmax] of real;
Var B,D,A:mass;
i,k,n,nmax:integer;
x,z1,z2,x1,max:real;
begin
writeln('Vvesti dlinny massiva B ot 1 do',lmax);
read(k);
writeln('Vvedite massiv B iz ',k:3,' eiementov');
for i:=1 to k do
read (b);
writeln ('Vvedite x');
read(x);
nmax:=0;
max:=0;
for i:=1 to k do
if (abs(b)<x) and (abs (b)>=abs(max)) then
Begin
max:=b;
nmax:=i;
end;
{analiz}
if nmax=0 then
writeln ('net maximyma')
else
writeln ('max=',max:10:3,'nmax=',nmax:3);
writeln ('Vvedite z1, z2 (z1<=z2)');
repeat
read (z1,z2);
until (z1<=z2);
n:=0;{Dlinna Massiva}
for i:=1 to k do
if (z1<b) and (b<z2) then
Begin
n:=n+1;
d[n]:=-b;
end;
if n=0 then
writeln ('net massivov D i A')
else
begin
Writeln('massiv D iz',n:3,'elementov');
for i:=1 to n do
writeln (D:10:3);
writeln;
writeln ('vvedite x1');
read(x1);
for i:=1 to n do
if d>x1 then
a:=d[i]
else
a[i]:=-d[i]/2;
writeln ('massiv A iz',n,'ilimentov');
for i:=1 to n do
write(A[i]:10:3);
writeln;
end;
end.
[/syntax] Может Поможет)