Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.02.2012, 11:42   #1
tatarcenocek
Новичок
Джуниор
 
Регистрация: 05.02.2012
Сообщений: 4
Печаль Delphi 7 Приложение калькулятор Не компилируется!

помогите, через два дня сдавать курсовую, не хочет запускаться(( делал все по уроку, ссылка:http://*************/readarticle.php?article_id=2226
Код:
unit Unit1;

interface

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

type
  TfmCalc = class(TForm)
    edInput: TEdit;
    bt_1: TButton;
    bt_2: TButton;
    bt_3: TButton;
    bt_4: TButton;
    bt_5: TButton;
    bt_6: TButton;
    bt_7: TButton;
    bt_8: TButton;
    bt_9: TButton;
    bt_0: TButton;
    btPoint: TButton;
    btDel: TButton;
    btCls: TButton;
    btUmm: TButton;
    btSum: TButton;
    btRazn: TButton;
    btRavno: TButton;

    procedure FormCreate(Sender: TObject);
    procedure bt_1Click(Sender: TObject);
    procedure bt_2Click(Sender: TObject);
    procedure bt_3Click(Sender: TObject);
    procedure bt_4Click(Sender: TObject);
    procedure bt_5Click(Sender: TObject);
    procedure bt_6Click(Sender: TObject);
    procedure bt_7Click(Sender: TObject);
    procedure bt_8Click(Sender: TObject);
    procedure bt_9Click(Sender: TObject);
    procedure bt_0Click(Sender: TObject);
    procedure btPointClick(Sender: TObject);
    procedure btClsClick(Sender: TObject);
    procedure btSumClick(Sender: TObject);
    procedure btRaznClick(Sender: TObject);
    procedure btUmmClick(Sender: TObject);
    procedure btDelClick(Sender: TObject);
    procedure btRavnoClick(Sender: TObject);
    procedure edInputChange(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  fmCalc: TfmCalc;

implementation
   a, b, c: real;
   f: integer;
   zifra: boolean;
{$R *.dfm}

procedure TfmCalc.FormCreate(Sender: TObject);
begin
edInput.Text:='0';
f:=0;
zifra:=false;
end;

procedure TfmCalc.bt_1Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='1';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'1'

end;

procedure TfmCalc.bt_2Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='2';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'2'
end;

procedure TfmCalc.bt_3Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='3';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'3'
end;

procedure TfmCalc.bt_4Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='4';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'4'
end;

procedure TfmCalc.bt_5Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='5';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'5'
end;

procedure TfmCalc.bt_6Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='6';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'6'
end;

procedure TfmCalc.bt_7Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='7';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'7'
end;

procedure TfmCalc.bt_8Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='8';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'8'
end;

procedure TfmCalc.bt_9Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='9';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'9'
end;

procedure TfmCalc.bt_0Click(Sender: TObject);
begin
if (edInput.Text='0'|or not (zifra)
then
 begin
  edInput.Text:='0';
  zifra:=true
  end
 else edInput.Text:=edInput.Text+'0'
end;

procedure TfmCalc.btPointClick(Sender: TObject);
begin
  if pos(',', edInput.text)=0
  then
   edInput.Text:=edInput.Text+',';
end;

procedure TfmCalc.btClsClick(Sender: TObject);
begin
 a:=0;
 b:=0;
 f:=0;
 zifra=false;
 edInput.Text:='0'
end;

procedure TfmCalc.btSumClick(Sender: TObject);
begin
 if f=5
 then a:=c
 else a:=strtofloat(edInput.text)
 f:=1
 zifra:=false

end;

procedure TfmCalc.btRaznClick(Sender: TObject);
begin
if f=5
 then a:=c
 else a:=strtofloat(edInput.text)
 f:=2
 zifra:=false

end;

procedure TfmCalc.btUmmClick(Sender: TObject);
begin
if f=5
 then a:=c
 else a:=strtofloat(edInput.text)
 f:=3
 zifra:=false

end;

procedure TfmCalc.btDelClick(Sender: TObject);
begin
if f=5
 then a:=c
 else a:=strtofloat(edInput.text)
 f:=4
 zifra:=false

end;
продолжение в комментарии, извините, не разобрался где у вас здесь спойлер)
Вложения
Тип файла: rar Projects.rar (158.9 Кб, 11 просмотров)

Последний раз редактировалось Stilet; 05.02.2012 в 13:00.
tatarcenocek вне форума Ответить с цитированием
Старый 05.02.2012, 13:09   #2
tatarcenocek
Новичок
Джуниор
 
Регистрация: 05.02.2012
Сообщений: 4
По умолчанию продолжение кода

procedure TfmCalc.btRavnoClick(Sender: TObject);
begin
b:=strtofloat(edInput.text);
case f of
1: begin
c:=a+b;
edInput.Text:=floattostr(c);
end;
2: begin
c:=a-b;
edInput.Text:=floattostr(c);
end;
3: begin
c:=a*b;
edInput.Text:=floattostr(c);
end;
4: if strtofload(edInput.text) <>0
begin
c:=a/b;
edInput.Text:=floattostr(c);
end
else
edInput.Text:='ERROR';
end;
f:=5;
zifra:=false
end;
procedure TfmCalc.edInputKeyPress(Sender: TObject; var Key: Char);
begin
case Key of
'0'..'9',#8: ;
'.',',': begin
if Key = '0' then Key:=',';
if pos(',',edInput.text|<>0 then key:=#0
end;
else key:=#0
end
end;

end.
tatarcenocek вне форума Ответить с цитированием
Старый 05.02.2012, 13:35   #3
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

куча грамматических ошибок в программе, код сканировался с бумаги?

1. откройте проект
2. ищите в дельфе пункт Add to Project и добавляйте файл unit1.pas (Shift+F11)

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

ЗЫ: programmersforum.ru044F все запустилось нормально
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 05.02.2012, 13:51   #4
tatarcenocek
Новичок
Джуниор
 
Регистрация: 05.02.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Korben5E Посмотреть сообщение
куча грамматических ошибок в программе, код сканировался с бумаги?
нет, писал сам с сайта..может там картинки плохо разглядел) теперь вижу сколько ошибок, спасибо большое..разобраться бы еще в ошибках этих..
tatarcenocek вне форума Ответить с цитированием
Старый 05.02.2012, 14:01   #5
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

в основном ";" кое-где не установлены и тут
if (edInput.Text='0'|or not (zifra) вертикальная черта..... почти везде
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 05.02.2012, 15:31   #6
tatarcenocek
Новичок
Джуниор
 
Регистрация: 05.02.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Korben5E Посмотреть сообщение
в основном ";" кое-где не установлены и тут
if (edInput.Text='0'|or not (zifra) вертикальная черта..... почти везде
ну как я учил, вроде после каждой строчки должно быть ";", ну конечно де кроме там begin и т.д, или я ошибаюсь?? а вертикальную черту тогда на что заменить?
tatarcenocek вне форума Ответить с цитированием
Старый 05.02.2012, 18:35   #7
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

эээх.. блин

if (условие заключается в круглые скобки, !!а не в скобу и черту!!) then действие;
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать в среде делфи приложение калькулятор(Delphi) BLADIMIR Помощь студентам 1 19.01.2012 19:58
Не компилируется в FreePascal, зато в Delphi работает! k1r1ch Общие вопросы Delphi 4 02.11.2009 16:37
Калькулятор на delphi noniMIX Софт 7 10.11.2008 23:03
delphi. Не компилируется! dimple Помощь студентам 2 30.04.2008 11:00
калькулятор в Delphi =XAM= Помощь студентам 2 07.03.2008 19:26