Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.12.2010, 18:07
radiokarazinec@mail.ru radiokarazinec@mail.ru вне форума
Прохожий
 
Регистрация: 13.12.2010
Сообщения: 25
Репутация: 10
По умолчанию надо найти в этом массиве 3 наибольших и записать их в текстовый файл

Код:
procedure TfrmMain.Button1Click(Sender: TObject);
var
 // число точек в исходных данных и в результатах
 In_N : Integer;
 // массив с исходными данными
 In_Data: array of Double;
 // переменная для записи в файл
DataFile : TextFile;[/quote]
 // переменная цикла
 i: Integer;
 // линия для графика - если нужна
 Line : TLineSeries;
begin
 // получение числа точек в исходных данных с формы
 In_N := 35;
 ////////////////////////////////////////// In_N :=StrToInt(edValN.Text);
 // получение параметра - пример
 ///////////////////Scale := StrToFloat(eScale.Text);
 // создаем массив данных
 // вначале задаем размер массива
 SetLength(In_Data,In_N);
 // задаем элементы массива
 for i := 0 to In_N - 1 do
     In_Data[i] := Cos(i*In_N)*Exp(-i*0.44)+1;
   MemoOut.Clear;
 // и покажем новые
 for I := 0 to In_N - 1 do
     // Format() - преобразование числа в строку по указанному
     // формату. Подробнее и с примерами в справке Delphi - F1.
     MemoOut.Lines.Add(Format('%8.3f',[In_Data[i]]));
 // *** добавим график - если нужно
 // уберем старый график
 ChartMain.SeriesList.Clear;
 // создадим новый
 Line := TLineSeries.Create(ChartMain);
 // присвоим значения Y координат
 Line.AddArray(In_Data);
 // изменим цвет и толщину линии
 Line.LinePen.Color := clBlue;
 Line.LinePen.Width := 1;
 // и выведем на форму
 ChartMain.AddSeries(Line);
 // свяжем переменную с файлом DataFile
AssignFile(DataFile,'in.txt');
 // откроем для записи
Rewrite(DataFile);
 // запись параметров
 Writeln(DataFile);   //стояло еще (,Scale)
 // размер массива чисел
 Writeln(DataFile,In_N);
 // каждое значение пишем в новую строку
 for i := 0 to In_N - 1 do
 Writeln(DataFile,In_Data[i]);
//закрываем файл - сохраняем его
 CloseFile(DataFile);
 DeleteFile('out.txt');

end;
запись в текстовый файл тут есть, надо только сделать, так чтобы после того как оно строит график, из массива выбирались 4 наибольших числа, не меняя, своего положения, а дальше сохранялись и передавались в txt
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:46.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter