Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Вниз

Когда разница между Edit1.text и Edit2.text больше 14342, о прога   Найти похожие ветки 

 
RoLeX   (2003-11-06 17:33) [0]

Всё! Прога готова! Но вот есть в ней ошибочка:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Gauges;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
Label1: TLabel;
Label2: TLabel;
GroupBox3: TGroupBox;
Edit3: TEdit;
GroupBox4: TGroupBox;
Edit4: TEdit;
Button1: TButton;
Button2: TButton;
Gauge1: TGauge;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
x:Int64;
y:Int64;
txt:TextFile;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
AssignFile(txt,ExtractFilePath(application.exeName)+"\listing.txt");
ReWrite(txt);
x:=StrToInt64(edit1.text);
y:=0;
writeln(txt,IntToStr(x)+Edit4.Text+Edit3.text);
Button2.Click;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
if (x<>StrToInt64(edit2.Text)) then begin
x:=x+1;
y:=y+1;
writeln(txt,IntToStr(x)+Edit4.Text+Edit3.text);
Gauge1.MinValue:=0;
Gauge1.MaxValue:=StrToInt64(edit2.text)-StrToInt64(edit1.text);
Gauge1.Progress:=y;
button2.Click; end else
CloseFile(txt);
end;

end.

Вкратце объясню суть прораммы:
В Edit1.text вводится начальное число, в Edit2.text - конечное число. В Edit4.text вводится символ, который будет стоять после числел, находящихся в промежутке от Edit1.text до Edit2.text.
Edit3.text - это слово которое будет прописываться после символа (Edit4.text).
Итак, если мы введём
в Edit1.text:=0;
в Edit2.text:=100;
в Edit4.text:=";";
в Edit3.text:="word";
то получится такой список:
0;word
1;word
2;word
3;word
...
100;word
А потом этот список сохраняется в файле listing.txt

А ошибка такая, когда разница между Edit1.text и Edit2.text больше 14342, то программа закрывается и ошибки вылазиют!
Попробуйте у себя создать по моему коду прогу, и посмотрите сами, и скажите чё надо сделать, чтобы небыло такого.
Очень вас прошу мне помочь!!!


 
Anatoly Podgoretsky   (2003-11-06 17:56) [1]

Удалено модератором


 
RoLeX   (2003-11-06 18:12) [2]

Удалено модератором


 
clickmaker   (2003-11-06 18:14) [3]

Удалено модератором


 
pasha_golub   (2003-11-06 18:31) [4]

Удалено модератором


 
RoLeX   (2003-11-06 18:33) [5]

Удалено модератором


 
Митяй   (2003-11-06 18:37) [6]

Удалено модератором


 
RoLeX   (2003-11-06 18:49) [7]

Ну помогите же!!! Почему если разница между Edit1 и Edit2 >~14000, выскакиевает ошибка: "Stack overflow".
Что нужно сделать???


 
Е-Моё имя   (2003-11-06 18:55) [8]

стэк расширить и углубить

---
nil


 
RoLeX   (2003-11-06 19:19) [9]

Удалено модератором


 
clickmaker   (2003-11-06 19:31) [10]

Удалено модератором


 
RoLeX   (2003-11-06 19:34) [11]

Удалено модератором


 
panov   (2003-11-06 19:56) [12]

Здесь не развлекательный форум и люди приходят сюда за помощью, пусть даже чайники и ламеры.
Не надо флейма и флуда не по делу.


 
RoLeX   (2003-11-06 20:00) [13]

Кажется я понял! Может это из-за того, что Button2 слишком быстро и много нажимается???


 
Arm79   (2003-11-06 21:33) [14]

Слишком большая рекурсия, убери нажатие на button2. Вот и все.

2 модератор
А вопрос, я считаю, достоин занесения в орешник


 
Тохус   (2003-11-06 23:38) [15]

А я думал, Анатолий Подгородецкий тоже модератор...


 
Palladin   (2003-11-06 23:45) [16]

Вопрос достоин занесения в FAQ, местами, и сопровожден разъяснениями того - к чему может привести необузданная (и в таком случае врядли оправданная) рекурсия.
Здесь она точно не оправданна и вполне заменяема while do или repeat until



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.009 c
3-56488
Василиск
2003-10-28 11:52
2003.11.17
Ошибка при Post


1-56617
evgeniy32
2003-11-05 18:47
2003.11.17
Как прочитать строку из *.txt и присвоить ее переменной?


1-56715
mc_duck
2003-11-06 20:28
2003.11.17
Сохранение объекта в файл.


1-56761
Narayan
2003-11-06 12:31
2003.11.17
application-defined exception


1-56727
Ig
2003-11-04 21:03
2003.11.17
Как скрыть папку или файл?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский