Форум: "Основная";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
ВнизВопрос про EXE файл. Найти похожие ветки
← →
FeSSik © (2004-08-02 13:31) [0]Подскажите пожалуйста ...Я написал маленькую програмку скомпилировал её...и получил exe файл, но когда я его запускаю то комп что-то прогружает и в итоге ничего...не подскажете в чём тут может быть дело?
← →
Ega23 © (2004-08-02 13:33) [1]Это зависит от того, что ты написал в "маленькой программке".
← →
Кириешки © (2004-08-02 13:36) [2]FeSSik © (02.08.04 13:31)
Можно посмотреть код "маленькой" программки? Тогда я тебе точно скаже что "комп прогружает".
← →
Игорь Шевченко © (2004-08-02 13:39) [3]
> не подскажете в чём тут может быть дело?
в ДНК. Я угадал ?
← →
FeSSik © (2004-08-02 13:45) [4]unit Proga1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TProg1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Label3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Prog1: TProg1;
implementation
{$R *.dfm}
// нажатие кнопки Вычислить
procedure TProg1.Button1Click(Sender: TObject);
Var
dist : integer; // дистанция, метров
t: real; // время как дробное число
min: integer; // время, минуты
sek: integer; // время, секунды
v: real; // скорость
begin
// получить исходные данные из полей ввода
dist := StrToint(Edit1.Text); t := StrToFloat(Edit2.Text);
// предварительные преобразования
min := Trunc(t)
sec := Trunc(t*100) mod 100;
// кол-во секунд - это дробная часть
// числа t
// вычисление
v := (dist/1000)((min*60+sec)/3600)
// вывод результата
label4.Caption := `Дистанция: `+ Edit1.Text
+` м` + #13 + `Время: ` + IntToStr(min)
+ ` мин ` + IntToStr(sek) + `сек` + #13 +
"Скорость: " + FloatToStrF(v,ffFixed,4,2) + " км/час";
procedure TProg1.Button2Click(Sender: TObject);
begin
Prog1.Close; // закрыть главное окно программы
end;
end.
← →
Новенький (2004-08-02 13:46) [5]Малеькая программка то где ?
>Игорь Шевченко © (02.08.04 13:39) [3]
Как где какая "маленькая программка" уродится сразу Гены виноваты?
(Гены - это не имя, это кислота)
← →
Кириешки © (2004-08-02 13:49) [6]А почему у тебя первая кнопка не "закрыта"
+` м` + #13 + `Время: ` + IntToStr(min)
+ ` мин ` + IntToStr(sek) + `сек` + #13 +
"Скорость: " + FloatToStrF(v,ffFixed,4,2) + " км/час";
procedure TProg1.Button2Click(Sender: TObject);
END где?
← →
FeSSik © (2004-08-02 13:52) [7]Поставил end; всё равно не запускаеЦЦа...
← →
Игорь Шевченко © (2004-08-02 13:55) [8]Новенький (02.08.04 13:46)
Гены виноваты. Хотя бы в том, что задается такой вопрос и в такой форме.
← →
Digitman © (2004-08-02 13:55) [9]
> FeSSik
Делфи-программа начинается с того, что находится между begin..end в dpr-файле
← →
Ega23 © (2004-08-02 13:55) [10]И где уж тогда
?
procedure TProg1.Label3Click(Sender: TObject);
← →
Digitman © (2004-08-02 13:56) [11]
> > FeSSik
точнее - находиЦЦа ...
может , так тебе понятней будет)
← →
Vovchik_A © (2004-08-02 14:28) [12]2FeSSik ©
А гойловой пробовал думать, прежде, чем сюда писать ?
← →
MacroDenS © (2004-08-02 15:08) [13]ты б хотябы стиль написания кода, чтоль соблюдал... но это все фигня, а еще в этом коде огромное количество ошибок,
к примеру ты вTProg1.Button1Click(Sender: TObject);
объявляешь переменную
sek: integer; // время, секунды
а далее у тебя используется
sec := Trunc(t*100) mod 100;
эта одна из ошибок.
короче, я тут немного твой код поковырял, по крайней мере начал запускаться, и выполнять некоторые действия, правда до конца не понял, что вот здесьv := (dist/1000)?((min*60+sec)/3600)
должно быть, толи *, толи /, ну короче сам поставишь,
а вот и кодик:
uses
Windows, SysUtils, Forms, Controls, StdCtrls, Classes;
type
TProg1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Prog1: TProg1;
implementation
{$R *.dfm}
procedure TProg1.Button1Click(Sender: TObject);
Var
dist : integer;
t: real;
min: integer;
sek: integer;
v: real;
begin
dist := StrToint(Edit1.Text); t := StrToFloat(Edit2.Text);
min := Trunc(t);
sek := Trunc(t*100) mod 100;
v := (dist/1000)*((min*60+sek)/3600);
label4.Caption := "Дистанция: "+ Edit1.Text
+" ì" + #13 + "Время: " + IntToStr(min)
+ " мин " + IntToStr(sek) + "сек" + #13 +
"Скорость: " + FloatToStrF(v,ffFixed,4,2) + " км/час";
end;
procedure TProg1.Button2Click(Sender: TObject);
begin
Prog1.Close;
end;
end.
← →
Кириешки © (2004-08-02 15:42) [14]FeSSik © (02.08.04 13:31)
Мне кажется что это вообще не ты программу писал, потому что так коряво ее можно только содрать откуда-то.
"скомпилировал её...и получил exe файл, но когда я его запускаю то комп что-то прогружает и в итоге ничего"
Вопервых при таких грубых ошибках компилятор не даст файлу скомпилироваться, а во вторых как тебе то что было вопервых.
← →
MacroDenS © (2004-08-02 15:45) [15]Да там в строке
v := (dist/1000)*((min*60+sek)/3600);
лучше все же ставить
v := (dist/1000)/((min*60+sek)/3600);
чейто я сразу и не догнал че там вообще хотят....
← →
Ega23 © (2004-08-02 16:14) [16]2 MacroDenS ©
объявляешь переменнуюsek: integer; // время, секунды
а далее у тебя используетсяsec := Trunc(t*100) mod 100;
А в чём криминал-то?
← →
Anatoly Podgoretsky © (2004-08-02 16:25) [17]Криминала нет, это выделение сотых долей чего введеного в Edit2.Text
← →
Ega23 © (2004-08-02 17:18) [18]это выделение сотых долей чего введеного в Edit2.Text
Это понятно, просто я не понял MacroDenS © : может именно так требуется?
← →
MacroDenS © (2004-08-02 17:49) [19]to Ega23 © [16]
А криминала как такового нету, просто ошибка (вполне возможно опечатка) при написании переменной... Компилятор не поймет...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.039 c