Страница 1 из 1

Пожалуйста помогите написать программу

Добавлено: 27 май 2006, 16:00
Linochka
Даны данные(точки) хранящиеся в файле:
/см ниже/


Надо написать программу, которая бы вызвала эти данные из файла и по ним построила фигуру(точками) на координатах XY, а потом на XYZ. После построения эта программа соединила точки и получили бы фигуру.Писать программу надо в Delphi.

Если кто знает напишите плз. Или напишите в какой книге(в электронном виде) можно по примеру написать эту программу и разобраться.

Node________ X_______________Y_____________ Z

1__________0.0000_________0.3000E-01_______0.0000
2 _________0.0000___________0.0000_________ 0.0000
3_________ 0.20000E-01_____0.30000E-01_______0.0000
4__________ 0.00E-01________0.0000___________0.0000
5__________0.0000__________0.0000___________0.50000
6__________0.2000E-01_______0.0000__________0.50000

Добавлено: 27 май 2006, 23:39
maelz
Чета я не понял, эти числа из какой системы исчисления?

Добавлено: 28 май 2006, 11:09
Duncon
maelz писал(а):Чета я не понял, эти числа из какой системы исчисления?
E-01 Скорей всего с плавающей точкой, остальные просто с нулями лишними...

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

Код: Выделить всё

for i &#58]

Добавлено: 29 май 2006, 00:04
Linochka
Про файл если он в обычном виде пойдет решение либо считывать по строкам либо попроще прогрузить его в ListBox иль еще куда все равно и обрабатывать его опять же по строкам, пишется нечто типа
Код:

for i := 0 to ListBox.Items.Count-1 do
begin
//нужно как-то распарсить строки что-то типа
DoThat(RichEdit, SearchText, Memo);
//далее вопрос насколько тебе нужно отрисовывать точки я бы сразу ///линии рисовал... Про то как и где рисовать линии поройся по
//форуму не раз обсуждалось...
lineTo(x,y);
end;
//*
вот моя реализация парсинга по определенному символу, недостаток только одной строки, но в твоем случае перекидываешь в
RichEdit строку из ListBox,,,, SearchText у тебя "__________" должен быть одинаков либо пропиши в функции проверку следующего символа если он _ перейти дальше итд -- это всеголишь пример додумывай сам... A: TMemo это куда выводим результат, в принцыпе его можно загнать и в многомерный массив и от туда уже развлекаться..
*//
procedure Tform.DoThat(RichEdit: TRichEdit; SearchText: string; A: TMemo);
var
f, S: string;
begin
s:= RichEdit.Text;
gStartPos := 0;
gEndPos := Length(RichEdit.Text);
if RichEdit.FindText(SearchText, gStartPos, gEndPos, [stMatchCase])>0 then
begin
gEndPos := Length(RichEdit.Text) - gStartPos;
gPosition := RichEdit.FindText(SearchText, gStartPos, gEndPos, [stMatchCase]);
f := Copy(RichEdit.Text, gStartPos, gPosition);
A.Lines.Add(f);
RichEdit.Lines[0] := Copy(RichEdit.Text, gPosition+2, gEndPos);
// DoThatX(RichEdit, SearchText, A); //2 процыдура для цекличности
// я долго мучался нашел только такой способ -- времени тогда небыло
end;
end;
Большое спасибо за ответ. Только не совсем все понятно. Вы не могли бы описать подробнее. Просто я не сильно разбираюсь в программировании.......
Про файл если он в обычном виде пойдет решение либо считывать по строкам либо попроще прогрузить его в ListBox иль еще куда все равно и обрабатывать его опять же по строкам
Файл в обычном виде. Как его обрабатывать по строкам? Какую программу надо для этого написать?

Заранее спасибо......

Добавлено: 29 май 2006, 11:20
Duncon
Ну создаем форменную апликацию в 7 версии она поумолчанию выскакивает помоему (называется по разному просто)
на форму ляпаем компонент TListBox, потом в Form onShow при нажатии на кнопку пишем TListBox.items.loadfromfile("123.txt")
потом все как писалось выше,, у меня нет времени, за вас писать не буду...--> читайте учебники, либо тему в решите мне задачку мож кто и напишет..