![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Всем привет. Помогите плиз разобраться с лажовой задачей. Вроде все правильно а работает вообще не так как надо (выдает не верный результат)Можете просто другое решение дать.
Задание Определить элемент, имеющий минимальное отклонение от среднего значения элементов массива. Код:
procedure TForm1.Button1Click(Sender: TObject); var m:array[1..10] of integer; i:integer; s:real; c:integer; t:integer; begin s:=0; c:=0; t:=100; Label2.Caption:=''; for i:=1 to 10 do begin randomize; m[i]:=random(10); Label2.Caption:= Label2.Caption+inttostr(m[i])+' '; c:=c+m[i]; end; s:= c div i; for i:=1 to 10 do if abs(s-m[i])<t then t:=m[i]; Label1.Caption:='Среднее значение равно '+floattostr(s); Edit1.Text:=inttostr(t); Спасибо. Последний раз редактировалось Admin, 02.12.2009 в 16:56. |
#2
|
||||
|
||||
![]() пиши s:= c / 10;
вместо s:= c div i; Возник вопрос? Посмотри в хелпе. Нет в хелпе? Спроси у гугла. И вот если и гугл не нашел, спрашивай на форуме. ------------------------------------ Хочешь что кто-то за тебя написал программу? Оплати человеку его труд. |
#3
|
|||
|
|||
![]() Читай внимательно задание =)
Спрашивается элемент, а не само значение отклонения |
#4
|
|||
|
|||
![]() все равно не правильно работает
|
#5
|
|||
|
|||
![]() так я и ищу элемент - t
|
#6
|
|||
|
|||
![]() Я понял в чем дело
if abs(s-m[i])<t then t:=m[i]; вместо t надо abs(s-t) вставить!!извините за тупую тему ![]() Последний раз редактировалось Goodi52, 02.12.2009 в 18:15. |