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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2017, 14:05   #41
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

БЛин я такая дура... Простите тупила наконецто начало доходить.

Только вот я правильно ваш фрагмент кода вставила?

Код:
program Lab1;

const NMAS=1000;
type tMass=array[1..NMAS] of Extended;

Procedure Otcenki(const x: tMass;var Mx,Dx:Real);
Var
  i:integer;
Begin
  Mx:=0; Dx:=0;
  For i:=1 to NMAS do Mx:=Mx+x[i];
  Mx:=Mx/NMAS;
  For i:=1 to NMAS do Dx:=Dx+Sqr(x[i]-Mx);
  Dx:=Dx/(NMAS-1);
end;

Var
  Mx,Dx,a,b,r:real;
  x:tMass;
  i :word;
  MaxVal,MinVal : real;
  hist: array [0..14] of integer;
  n:integer;
Begin
  Write('a  b:   ');
  ReadLn(a,b);
  Randomize;
  For i:=1 to NMAS do
   begin
    r:=Random;
    x[i]:=a+r*(b-a);
   end;
for i :=0 to 14 do hist[i] := 0 ;
    for i:=1 to NMAS do 
     begin
       n := Trunc((x[i]-1.0)*15.0);
       Inc (hist[n])
     end;
   MaxVal := x[i];
   MinVal := x[i];
   for i:=2 to NMAS do
     begin
       if x[i] < MinVal  then  MinVal := x[i];
       if x[i] > MaxVal  then  MaxVal := x[i];
     end;
  Otcenki(x,Mx,Dx);
  Writeln ('Min element is: ', MinVal, ' Max element is: ', MaxVal);
  WriteLn(Mx,Dx,Sqrt(Dx));
  ReadLn;
End.
Мария34 вне форума Ответить с цитированием
Старый 28.05.2017, 14:27   #42
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

У меня выдает ошибку
Изображения
Тип файла: png 1.png (1.8 Кб, 40 просмотров)
Мария34 вне форума Ответить с цитированием
Старый 28.05.2017, 14:41   #43
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,546
По умолчанию

Еще раз спрашиваю: какой Паскаль ? В какой среде? Кто такой fpc - я не знаю.
digitalis вне форума Ответить с цитированием
Старый 28.05.2017, 14:49   #44
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

У меня FreePascal.
Мария34 вне форума Ответить с цитированием
Старый 28.05.2017, 15:04   #45
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

Я как поняла ошибку, что n := Trunc((x[i]-1.0)*15.0);//значения n, скорее всего они вылазят из диапазона [0..14].

Последний раз редактировалось Мария34; 28.05.2017 в 15:09.
Мария34 вне форума Ответить с цитированием
Старый 28.05.2017, 15:37   #46
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,546
По умолчанию

Ну вот, наши старания были не бесплодны. Тут небольшой мой косячок.
Нужно ввести еще переменную M_b
Код:
  MaxVal,MinVal,M_b : real;
теперь расчет гистограммы будет звучать так
Код:
for i :=0 to 14 do hist[i] := 0 ;
    M_b := 15.0/(b-a) ;
    for i:=1 to NMAS do 
     begin
       n := Trunc((x[i]-a)*M_b);
       Inc (hist[n])
     end;
Фри Плескаля у меня нет так что или:
а. выводим гистограмму звездочками.
б. формулиируем запрос в форум : В Free Pascal нужна процедура виэуализации массива гистограммы hist [0..14] of integer
digitalis вне форума Ответить с цитированием
Старый 28.05.2017, 15:46   #47
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

ммм... Думаете так не выйдет?
Я имею в виду визуализация на паскале во FreePascal.

Да теперь все работает, как теперь мне вывести гистограмму цифрами?

Последний раз редактировалось Мария34; 28.05.2017 в 15:52.
Мария34 вне форума Ответить с цитированием
Старый 28.05.2017, 16:22   #48
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,546
По умолчанию

Никогда не имел с ним дела поэтому не зная трепаться не буду - бывает, на одной версии ОК, на других - ни в дугу. Попробовать надо. Я вот прогу из #39 в ТР7 запустил - работает, если и в FP заработает - прекрасно.
Последний вопрос не понял - просто цифрами - значения? Или псевдографикой - звездочками - длину столбиков, как у меня в #13 ? Первое - это просто:
Код:
  for i :=0 to 14 do WriteLn(hist[i]) ;
digitalis вне форума Ответить с цитированием
Старый 28.05.2017, 16:31   #49
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Последний вопрос не понял - просто цифрами - значения?
Да, я все таки попробую, визуализировать гистограмму на фрипаскале.

То есть это
Код:
for i :=0 to 14 do WriteLn(hist[i]) ;
просто добавляется?

Последний раз редактировалось Мария34; 28.05.2017 в 16:47.
Мария34 вне форума Ответить с цитированием
Старый 28.05.2017, 16:36   #50
Мария34
Пользователь
 
Регистрация: 30.04.2017
Сообщений: 40
По умолчанию

Вот у меня нули выходят.
Изображения
Тип файла: png 1.png (5.4 Кб, 47 просмотров)
Мария34 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти значение случайной величины по методу Монте-Карло Вероника99 Помощь студентам 0 13.07.2016 19:41
математическое ожидание для дискретной случайной величины Делфи 7 программирование Помощь студентам 2 10.10.2013 21:39
Нормальный (Гауссовский) закон распределения VOVA-74 C++ Builder 0 19.02.2013 18:33
закон распределения Эрланга. Lenr88 Паскаль, Turbo Pascal, PascalABC.NET 0 13.02.2012 12:56