Компьютерный форум NoWa.cc

Компьютерный форум NoWa.cc (https://nowa.cc/index.php)
-   Delphi (https://nowa.cc/forumdisplay.php?f=300)
-   -   Срочно помогите написать программу по Delphi (https://nowa.cc/showthread.php?t=254884)

shymaxer777 06.12.2009 17:49

Срочно помогите написать программу по Delphi
 
В файле хранится прайс-лист продукции некоторой фирмы (название товара, цена). Выбирая из списка некоторое название, получить цену этого товара. Элементы списка формируются в момент запуска приложения и соответствуют перечню товаров из файла. :(

Добавлено через 1 минуту
Цитата:

Сообщение от shymaxer777 (Сообщение 2847918)
В файле хранится прайс-лист продукции некоторой фирмы (название товара, цена). Выбирая из списка некоторое название, получить цену этого товара. Элементы списка формируются в момент запуска приложения и соответствуют перечню товаров из файла. :(

Если сможете пожалуйста скиньте на мыло shymaxer777_91@mail.ru

Nomto 09.12.2009 10:21

Re: Срочно помогите написать программу по Delphi
 
прайсник то exel? самое главное то не уточнил

NiceOlya 09.12.2009 16:22

Re: Срочно помогите написать программу по Delphi
 
файл с прайс листом в каком формате?

pleasure 16.12.2009 22:31

Re: Срочно помогите написать программу по Delphi
 
ODBC драйвера для доступа ;), если использовать Делфи (тема вроде про это ))))))

FominVM 10.01.2010 22:28

Re: Срочно помогите написать программу по Delphi
 
Народ помогите написоть программу!
условие:
Нам дан текст проги на некотороя язике программирования, например Pascal.
1. С етого текста надо ведилить терминальние (разние знаки _+-(){}[],\|?) и нетерминальние (букви, цифры) символи и записать их в отдельние файли или типа того можна в мемо если в делфи
пример:
begin
c:=1/2+s;
{dsfsdfdf}
sdfdd
end;


терминальние:


:=
+
;
{
}



;

нетерминальние
begin
c
1/2
s
dsfsdfdf
sdfdd
end


2. прочитать с обоих файлов и востановить все в исходний вид, как до разделения

Первое я сделал, вот так http://www.filehoster.ru/files/eh2075 :
[I]procedure TForm1.TermNeTerm();
var i,n: integer;
s, st,snt: string;
begin
s:=''; //исходний текст
st:=''; //терминальние
snt:=''; //нетерминальние
s:=Memo1.Text;
Memo2.Lines.Clear;
Memo3.Lines.Clear;
for i:=1 to length(s) do
if s[i] in ['*','(','{','}','<','>','[',']','+',')','=','-','.',' ',':',';','''',',',#13,#10] then
begin
st:=st+s[i];
if s[i+1] in ['*','(','{','}','<','>','[',']','+',')','=','-','.',' ',':',';','''',',',#13,#10] then
n:=1 //нечего неделает!
else
st:=st+#13#10
end
else
begin
snt:=snt+s;
if s[i+1] in ['*','(','{','}','<','>','[',']','+',')','=','-','.',' ',':',';','''',',',#13,#10] then
snt:=snt+#13#10;
end;
Memo2.Text:=st;
Memo3.Text:=snt;
end;



а вот со вторим никак неполучается, помогите кто знает:cry:

Vasuha 11.01.2010 15:09

Re: Срочно помогите написать программу по Delphi
 
Может быть сохранять в файлы позицию знаков? Тогда без проблем восстановить будет.

FominVM 11.01.2010 16:14

Re: Срочно помогите написать программу по Delphi
 
Цитата:

Сообщение от Vasuha (Сообщение 2915352)
Может быть сохранять в файлы позицию знаков? Тогда без проблем восстановить будет.

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

bradis 14.02.2010 23:41

Re: Срочно помогите написать программу по Delphi
 
а если использовать ДБ Грид?

tulitre 02.04.2010 15:02

Re: Срочно помогите написать программу по Delphi
 
терминальный это символ или нет лучше ищи вот так:
TermSymbols:="_+-(){}[],\|?";
If Pos(ТвойСимвол,TermSymbols)>0 Then
//действия если символ терминальный
Else
//действия если символ не терминальный
End

Добавлено через 11 минут
Цитата:

Сообщение от FominVM (Сообщение 2914238)
Народ помогите написоть программу!
условие:
Нам дан текст проги на некотороя язике программирования, например Pascal.
1. С етого текста надо ведилить терминальние (разние знаки _+-(){}[],\|?) и нетерминальние (букви, цифры) символи и записать их в отдельние файли или типа того можна в мемо если в делфи
пример:
begin
c:=1/2+s;
{dsfsdfdf}
sdfdd
end;


терминальние:


:=
+
;
{
}



;

нетерминальние
begin
c
1/2
s
dsfsdfdf
sdfdd
end


2. прочитать с обоих файлов и востановить все в исходний вид, как до разделения

Первое я сделал, вот так http://www.filehoster.ru/files/eh2075 :
[I]procedure TForm1.TermNeTerm();
var i,n: integer;
s, st,snt: string;
begin
s:=''; //исходний текст
st:=''; //терминальние
snt:=''; //нетерминальние
s:=Memo1.Text;
Memo2.Lines.Clear;
Memo3.Lines.Clear;
for i:=1 to length(s) do
if s[i] in ['*','(','{','}','<','>','[',']','+',')','=','-','.',' ',':',';','''',',',#13,#10] then
begin
st:=st+s[i];
if s[i+1] in ['*','(','{','}','<','>','[',']','+',')','=','-','.',' ',':',';','''',',',#13,#10] then
n:=1 //нечего неделает!
else
st:=st+#13#10
end
else
begin
snt:=snt+s;
if s[i+1] in ['*','(','{','}','<','>','[',']','+',')','=','-','.',' ',':',';','''',',',#13,#10] then
snt:=snt+#13#10;
end;
Memo2.Text:=st;
Memo3.Text:=snt;
end;



а вот со вторим никак неполучается, помогите кто знает:cry:

А да, имеет место быть неправильное обращение с компонентом Memo:
строки добавляй - Memo.Lines.Add("Твоястрока");
И вообще перебор всех строк нужно организовать в цикле
For i:=0 to Memo.Lines.Count-1 do
begin
S=Memo.Lines.Strings[i];
//здесь уже обработка строки S
end;

sectorhell 12.05.2010 13:47

Re: Срочно помогите написать программу по Delphi
 
попробуй создать пару массивов и записывай туда позицию до обработки, а потом при воссоздании файла проверяй первый ли символ в этой строке или что-то перед ним надо вставить ещё, немного тупой метод и при большом размере исходного файла будет тормозить, но если другого не придумаешь то попробуй

luben111 28.11.2010 09:53

Re: Срочно помогите написать программу по Delphi
 
Советую използовать Berg Soft - NextGrid и NxDbGrid компоненты.


Текущее время: 10:42. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Copyright ©2004 - 2026 NoWa.cc

Время генерации страницы 0.03030 секунды с 9 запросами