Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2009, 18:44   #1
-ushёl-
Форумчанин
 
Аватар для -ushёl-
 
Регистрация: 04.02.2009
Сообщений: 141
Вопрос массив целых чисел

каким способом возможно найти в одномерном массиве число,наиболее приближённое по своему значению к среднему? т.е. например создан массив из 5и чисел(3|5|8|1|7) и из массива средним числом являеться по идеи число 5.Задачу решил,но с ошибкой!подскажите,как можно её исправить?? ЗАДАЧА:Создать массив целых чисел.Найти элемент,наиболее приближённый по своему значению к среднему.Вывести его на экран и вычислить a1+a2^2+a3^3+...an^n. вот моё решение: const
N=5;
var
M:array[1..N] of integer;
a,s,min,max,st:integer;
chs,ss:real;
begin
for a:=1 to N do
begin
M[a]:=Random(10);
{write(M[a], '|');}
end;
s:=0;
st:=0;
ss:=0;
max:= M[1];
min:= M[1];
for a:=1 to N do
begin
s:=s+M[a];
if M[a] < min then
min:= M[a]
else
if M[a] > max then
max:= M[a];
st:=st+1;
chs:=Exp(st * Ln(M[a]));
ss:=ss+chs
end;
for a:=1 to N do
write(M[a], '|');
writeln;
writeln('среднее число массива = ',trunc(s/N));
writeln('сумма степенного многочлена =',ss);
end.
-ushёl- вне форума Ответить с цитированием
Старый 28.02.2009, 18:51   #2
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

Среднее у вас 4.8,а не 5 а trunc(4.8) вернет 4! а для определения наиболее близкого к среднему ищете abs(m[a]-sred) чем оно меньше тем ближе!
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 28.02.2009, 18:54   #3
-ushёl-
Форумчанин
 
Аватар для -ushёl-
 
Регистрация: 04.02.2009
Сообщений: 141
По умолчанию

да надобно найти среднее число из представленных массивом.вот в чём вопрос-то!
-ushёl- вне форума Ответить с цитированием
Старый 28.02.2009, 19:07   #4
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

Код:
var i,sred:integer
    a:array [1..5] of integer;
   raz,sr:real;
begin
sr:=0;
for i:=1 to 5 do
 begin
readln(a[i]);
sr:=sr+a[i];
end;
sr:=sr/5;
raz:=abs(a[1]-sr);
sred:=a[1];
for i :=2 to 5 do
if abs(a[i]-sr)<raz then begin
raz:=abs(a[i]-sr);
sred:=a[i];
end;
writeln('naib bliz k sred',sred);
readln;end.
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 28.02.2009, 19:18   #5
-ushёl-
Форумчанин
 
Аватар для -ushёl-
 
Регистрация: 04.02.2009
Сообщений: 141
По умолчанию

РЕСПЕКТЪ!ТО ЧТО НУЖНО!!!
-ushёl- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
массив целых чисел ^SPARTAK^ Паскаль, Turbo Pascal, PascalABC.NET 1 27.12.2008 10:59
Умножение длинных целых чисел Rifler Паскаль, Turbo Pascal, PascalABC.NET 1 04.06.2008 21:12
Перемещение из массива целых чисел... Си Sota Помощь студентам 1 01.06.2008 19:51
Вывод целых и десятичных чисел Maycal Общие вопросы C/C++ 2 24.10.2007 12:34
Задача: перевод целых чисел в римские n0x Паскаль, Turbo Pascal, PascalABC.NET 4 12.12.2006 19:52