Добавить знак "+" "-"

Тема в разделе "Pascal and Delphi", создана пользователем Gazellea, 15 дек 2010.

  1. Gazellea

    Gazellea Гость

    Здраствуйте!

    Прошу помощи!

    у меня есть уровнение типа

    procedure TForm1.Button1Click(Sender: TObject);
    var x,y: integer;
    begin
    x:=100;
    y:=StrToInt(Edit1.Text);
    if x=y then
    Button1.Caption:='Good';
    begin
    if x<y then
    Edit2.Text:=FloatToStr(y-x);
    end;
    end;
    end.

    Мне нужно чтобы при выполнений условия (x<y), перед ответом ставился знак "+" или знак "-"?!

    Пожалуста помогите! Очень нужна помощь!

    Пы.Сы. в программирований не давно((

    :sorry:
     
  2. vital

    vital Больной Компом Детектед
    Команда форума Web Team

    Регистрация:
    29 янв 2006
    Сообщения:
    2.474
    Симпатии:
    27
    И выше выложенный листинг, тоже не ваш..
     
  3. Gazellea

    Gazellea Гость

    не понял, почему не мой? :sorry: только что в Делфи 2009 набирал :facepalm:
     
  4. vital

    vital Больной Компом Детектед
    Команда форума Web Team

    Регистрация:
    29 янв 2006
    Сообщения:
    2.474
    Симпатии:
    27
    Потому что судя по листингу, вам должно хватать знаний, что бы определить больше переменная 0 или меньше.
     
  5. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0

    Я может чего - то не понимаю, но по какому принципу должен ставится + или -
    if x<y then Edit2.Text:=FloatToStr(y-x);
    (y-x) - число всегда положительное
     
  6. Gazellea

    Gazellea Гость

    Код (C++):
    Мне просто нужно узнать как программно добавить знак "+" или "-" перед ответом в Edit
    Добавлено:
    Данный пример писался с школьным знанием математики и инстетутским курсом информатики(почти утеряными в кладовках мозга) :)
     
  7. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    Код (Text):
    edit.text:='-' + edit.text;
    Добавит минус вначало ответа в edit
     
  8. Gazellea

    Gazellea Гость

    Спасибо! :what?:
     
  9. Gazellea

    Gazellea Гость

    procedure TForm1.Button1Click(Sender: TObject);
    var x,y:integer;
    begin
    x:=100;
    y:=StrToInt(Edit1.Text);
    if x=y then
    Edit2.Text:='Good buy';
    begin
    if x<y then
    Edit2.Text:='+'+FloatToStr(y-x);
    Label1.Font.Color:=clgreen;
    end;
    begin
    if x>y then
    Edit2.Text:='-'+FloatToStr(x-y);
    Label1.Font.Color:=clred;
    end;
    end;
    end.

    Если не трудно, подскажите пожалуста, почему программа считвает только последнее значение Label1 ?

    Ведь для каждого варианта она должна считывать свой вариант настройки Label1, а она почему то считывает только последнюю настройку, а первую игнорирует!

    :unsure: :unsure:
     
  10. vital

    vital Больной Компом Детектед
    Команда форума Web Team

    Регистрация:
    29 янв 2006
    Сообщения:
    2.474
    Симпатии:
    27
    Разберитесь с бегинами и ендами, у вас там есть лишние. И кто так писать учит..
     
  11. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    Код (Text):
    procedure TForm1.Button1Click(Sender: TObject);
    var x,y:integer;
    begin
    x:=100;
    y:=StrToInt(Edit1.Text);
    if x=y then Edit2.Text:='Good buy';
    if x<y then
    begin
    Edit2.Text:='+'+FloatToStr(y-x);
    Label1.Font.Color:=clgreen;
    end;
    if x>y then
    begin
    Edit2.Text:='-'+FloatToStr(x-y);
    Label1.Font.Color:=clred;
    end;
    end;
    помоему ты хотел сделать это.. begin ставиться после then дабы выполнить необходимое количество строк а не одну.. перед then смысла в нем нет.
     
  12. Gazellea

    Gazellea Гость

    nayke и vital Спасибо большое)) :love: ;)
     
Загрузка...

Поделиться этой страницей