Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

мода выборки

57K
21 июня 2010 года
n-andriy
5 / / 21.06.2010
Заданы N действительных чисел. Составить программу вычисления моды (наиболее часто встречающегося числа). НЕЛЬЗЯ использовать счетчики и сортировку!!! Помогите, кто знает как реализовать.
61K
24 июня 2010 года
Serg112
3 / / 15.06.2010
Я думаю что задачу можно решить только с файломи.



Код:
var
  f: file of real;
{ Функция возращает кол-во чисел равные num }
function QNumberInFile( num: real ): integer;
var
  pos: integer;  { Для того чтобы запомнить позицию в файле при входе }
  r:   real;         { Промежуточная переменная }
  k:   integer;    { Кол-во чисел num }
begin
  pos:=FilePos( f );
  k:=0;
  Seek( f, 0 );
  while not eof( f ) do
  begin
    read( f, r );
    if r = num then
      Inc( k );
  end;
  Seek( f, pos );
  QNumberInFile:=k;
end;
{-------------------------------------}
var
  r, rmax: real;
  n, i, max: integer;
begin
  randomize;
  Assign( f, 'Real.fil' );
  ReWrite( f );
  write('Enter n -> ');
  readln( n );
  for i:=1 to n do    { Вывод и инициализация ряда }
  begin
    r:=Random( 5 ) / ( random( 5 ) + 1 );
    write( f, r );
    writeln( r:2:2 );
  end;
  Close( f );
  Reset( f );
  {------Находим моду---------}
  read( f, r ); { Будем считать что первое число есть мода }
  rmax:=r;
  max:=QNumberInFile( r );
  while not eof( f ) do { Перебираем все числа }
  begin
    read( f, r );
    n:=QNumberInFile( r );
    if n > max then
    begin
      rmax:=r;
      max:=n;
    end;
  end;
  Close( f );
  Writeln( 'Moda = ', rmax:2:0 );
  Writeln( 'Kol-vo povtorenei = ', max );
  Readln;
end.
-
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог