ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 Маты начинаются сразу со строчки procedure TForm1.Button1Click(Sender: TObject);причинаUnit1.pas(53): Statement expected but 'PROCEDURE' foundпонятия не имею что это значит, с Delphi работаю второй раз в своей жизни, качал отсюда.Меня терзают смутные сомененья что у меня в коде косяк на косяке сидит, и косяком погоняет.Помогите исправить пожалуйста.interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Button8: TButton; Button9: TButton; Button10: TButton; Panel1: TPanel; Button11: TButton; Button12: TButton; Button13: TButton; Button14: TButton; Button15: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button10Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; i,p,r:real; mode:integer;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+1end;procedure TForm1.Button2Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+2end;procedure TForm1.Button3Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+3end;procedure TForm1.Button4Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+4end;procedure TForm1.Button5Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+5end;procedure TForm1.Button6Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+6end;procedure TForm1.Button7Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+7end;procedure TForm1.Button8Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+8end;procedure TForm1.Button9Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+9end;procedure TForm1.Button10Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+0end;procedure TForm1.Button12Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=2;Panel1.Caption:='';end;procedure TForm1.ButtonD13Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=3;Panel1.Caption:='';end;procedure TForm1.Button14Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=4;Panel1.Caption:='';procedure TForm1.Button11Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=1;Panel1.Caption:='';end;procedure TForm1.ButtonClick(Sender: TObject);begincase mode of1:begin p:=StrToFloat(Panel1.Caption); r:=i+p; Panel1.Caption:=FloatToStr(r); end;2:begin p:=StrToFloat(Panel1.Caption); r:=i-p; Panel1.Caption:=FloatToStr(r); end;3:begin p:=StrToFloat(Panel1.Caption); r:=i/p; Panel1.Caption:=FloatToStr(r); end;4:begin p:=StrToFloat(Panel1.Caption); r:=i*p; Panel1.Caption:=FloatToStr(r); end;end.unit Unit1; Ссылка на комментарий
CooDi Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 помему один begin лишний Ссылка на комментарий
payk Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 Button14Click нет end'а. Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 payk исправил, та же байда:Unit1.pas(53): Statement expected but 'PROCEDURE' foundCooDi где именно? Ссылка на комментарий
Innk Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 Тут же написано 53 строчкаУ тебя перед ней beginУдали его там не должно быть Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Innk сделал, но теперь он выделяет "end" и выдаетUnit1.pas(55): Incompatible types: 'String' and 'Integer' Ссылка на комментарий
Innk Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 Panel1.Caption - тип string, а ты к нему число прибавить хочешьПреобразовывайЧто ты хочешь здесь сделать ?Panel1.Caption:=Panel1.Caption+1 Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Я второй раз в жизни пользуюсь, ни черта не умею, мне бы с объяснениямиInnk как бы пытался обработать событие "OnClick". Ссылка на комментарий
Petrovichtim Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 implementation{$R *.dfm}Beginprocedure TForm1.Button1Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+1end;убери первый бегин Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Petrovichtim убрал. Ссылка на комментарий
Petrovichtim Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 помогло? Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Petrovichtim ниразу, теперь на "еnd;" ругается. Ссылка на комментарий
Innk Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 Так ты книги про делфи, паскаль почитайА то ты грамматические ошибки не видишь даже. Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Innk я читаю потихоньку.Какие ошибки то? Ссылка на комментарий
Petrovichtim Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 "еnd;"убери его Ссылка на комментарий
nipand Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 В конце кода, перед end. нужно написать:end; // закрытие case mode ofend; // закрытие procedure TForm1.ButtonClick(Sender: TObject);а все выражения, такие как: Panel1.Caption:=Panel1.Caption+1 нужно заменить на Panel1.Caption:=Panel1.Caption+'1'т.к. свойство Caption - строкового типа, а 1 - числового, но, текст, заключенный в апострофы является строкой.Насчет begin - end, можешь посчитать их, должно быть одинаковое количество Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Panel1.Caption:=Panel1.Caption+1 я уже заменил, понял что там косяк.щас остальное попробую Ссылка на комментарий
Innk Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 Innk сделал, но теперь он выделяет "end" и выдаетUnit1.pas(55): Incompatible types: 'String' and 'Integer'Несоответствие типов тоже убери (FloatToStr, StrToFloat) Ссылка на комментарий
Petrovichtim Опубликовано 12 сентября, 2010 Жалоба Поделиться Опубликовано 12 сентября, 2010 скачай исходник в сети, их полно или разберись с типами, строковым и действительным Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Innk, в программировании я как Санёк во всем остальном. Мне желательно все по полочкам разложить.Как я понимаю процедура "FloatToStr" переводит числовое значение в строковое т.е '231' в просто 231?А процедура "StrToFloat" делает все с точностью до наоборот? Ссылка на комментарий
ZyXEL12m94*41 Опубликовано 12 сентября, 2010 Автор Жалоба Поделиться Опубликовано 12 сентября, 2010 Все, оно заработало=)Вот так это выглядит:interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Button8: TButton; Button9: TButton; Button10: TButton; Panel1: TPanel; Button11: TButton; Button12: TButton; Button13: TButton; Button14: TButton; Button15: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button10Click(Sender: TObject); procedure Button11Click(Sender: TObject); procedure Button12Click(Sender: TObject); procedure Button13Click(Sender: TObject); procedure Button14Click(Sender: TObject); procedure Button15Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; i,p,r:real; mode:integer;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'1'end;procedure TForm1.Button2Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'2'end;procedure TForm1.Button3Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'3'end;procedure TForm1.Button4Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'4'end;procedure TForm1.Button5Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'5'end;procedure TForm1.Button6Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'6'end;procedure TForm1.Button7Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'7'end;procedure TForm1.Button8Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'8'end;procedure TForm1.Button9Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'9'end;procedure TForm1.Button10Click(Sender: TObject);beginPanel1.Caption:=Panel1.Caption+'0'end;procedure TForm1.Button12Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=2;Panel1.Caption:='';end;procedure TForm1.Button13Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=3;Panel1.Caption:='';end;procedure TForm1.Button14Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=4;Panel1.Caption:='';end;procedure TForm1.Button11Click(Sender: TObject);begini:=StrToFloat(Panel1.Caption);mode:=1;Panel1.Caption:='';end;procedure TForm1.Button15Click(Sender: TObject);begincase mode of1:begin p:=StrToFloat(Panel1.Caption); r:=i+p; Panel1.Caption:=FloatToStr(r); end;2:begin p:=StrToFloat(Panel1.Caption); r:=i-p; Panel1.Caption:=FloatToStr(r); end;3:begin p:=StrToFloat(Panel1.Caption); r:=i/p; Panel1.Caption:=FloatToStr(r); end;4:begin p:=StrToFloat(Panel1.Caption); r:=i*p; Panel1.Caption:=FloatToStr(r); end;end;end;end.unit Unit1; Ссылка на комментарий
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти