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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2013, 14:02   #1
Deoxes
Пользователь
 
Регистрация: 16.11.2013
Сообщений: 23
Вопрос Delphi программа

В описываемой ниже программе пользователь вводит два целых числа, а
программа вычисляет и показывает их произведение. Сделал всё по инструкции НО как всегда ничего не работает, ошибки связанные с X (икс) и Y (игрек). 2 дня сижу и думаю что сделать, изучаю делфи по учебнику 4й день но не выходит. Можете исправить ошибки и сказать как, хочу научиться сам работать. Заранее спасибо.
Код:
unit Prost;

interface

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

type
  TfmExample = class(TForm)
    Panel1: TPanel;
    bbRun: TBitBtn;
    bbClose: TBitBtn;
    IbOutput: TLabel;
    mmOutput: TMemo;
    bbResuit: TBitBtn;
    edinput: TMaskEdit;
    procedure bbRunClick(Sender: TObject);
    procedure bbResuitClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
  private
    { Private declarations } X,Y: Integer;
  public
    { Public declarations }
  end;

var
  fmExample: TfmExample;

implementation

{$R *.dfm}

procedure TfmExample.bbRunClick(Sender: TObject);
// Обработка ввода 1-го операнда 
begin
// Преобразуем текст из edinput в целое число 
Х := StrToint(Trim(edinput.Text));
// Сообщаем в Memo о вводе 1-го операнда
mmOutput.Lines.Add('1-й операнд: '+edinput.Text);
edinput.Text := ''; // Очищаем ввод
edinput.SetFocus;// и возвращаем ему фокус
IbOutput.Caption := 'Введите 2-й операнд:';
bbResuit.Show; // Показываем кнопку bbResuit
bbRun.Hide; // и прячем bbRun
end;

procedure TfmExample.bbResuitClick(Sender: TObject);
// Обработка ввода 2-го операнда
begin // Преобразуем текст из edinput в целое число:
Y := StrToint(Trim(edinput.Text));
// Сообщаем в Memo о вводе 2-го операнда:
mmOutput.Lines.Add('2-й операнд:'+edinput.Text);
// Вычисляем и показываем результат:
mmOutput.Lines.Add('Результат: '+ intToStr(X)+' *
'+intToStr(Y)+' = '+intToStr(X*Y));
edinput.Text := ''; // Очищаем ввод 
edinput. SetFocus; 
// и возвращаем ему фокус
IbOutput.Caption := 'Введите 1-й операнд; bbResuit.Hide;
// Прячем кнопку 
bbResuit bbRun.Show; 
// и показываем bbRun
end;


procedure TfmExample.FormActivate(Sender: TObject);
// Подготовка к началу работы 
begin
edinput.SetFocus; // Передаем фокус ввода редактору
edinput
IbOutput.Caption := 'Введите 1-й операнд:';
end;

end.

Последний раз редактировалось Stilet; 19.11.2013 в 15:29.
Deoxes вне форума Ответить с цитированием
Старый 19.11.2013, 14:49   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

А какие конкретно ошибки, связанные с x и y? Компилятор ругается на синтаксис, или х и у вычисляются неверно?
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 19.11.2013, 15:54   #3
Deoxes
Пользователь
 
Регистрация: 16.11.2013
Сообщений: 23
По умолчанию

Вот ошибки

Error
Illegal character in input file: 'X'($D5)
Unterminated string
Missing operator or semicolon
Incompatible types: 'String' and 'Boolean'
Deoxes вне форума Ответить с цитированием
Старый 19.11.2013, 16:02   #4
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Illegal character in input file: 'X'($D5) - русская буква Х
Unterminated string - где-то нет закрывающей кавычки
Missing operator or semicolon - нет точки с запятой
Incompatible types: 'String' and 'Boolean'
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 19.11.2013, 18:59   #5
Deoxes
Пользователь
 
Регистрация: 16.11.2013
Сообщений: 23
По умолчанию

Incompatible types: 'String' and 'Boolean' а ето что за ошибка?
IbOutput.Caption := 'Введите 1-й операнд:'; - Missing operator or semicolon ошибку выдаёт в етой строчке, непойму что делать

Последний раз редактировалось Deoxes; 19.11.2013 в 19:06.
Deoxes вне форума Ответить с цитированием
Старый 19.11.2013, 19:01   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это значит что ты в переменную типа String пытаешся пихнуть переменную логического типа.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.11.2013, 19:30   #7
Deoxes
Пользователь
 
Регистрация: 16.11.2013
Сообщений: 23
По умолчанию

Виталий а что тут неправильно
IbOutput.Caption := 'Введите 1-й операнд:'; - Missing operator or semicolon
Deoxes вне форума Ответить с цитированием
Старый 19.11.2013, 19:32   #8
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Код:
IbOutput.Caption := 'Введите 1-й операнд; bbResuit.Hide;
                                --------^ пропущена кавычка
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 19.11.2013, 19:46   #9
Deoxes
Пользователь
 
Регистрация: 16.11.2013
Сообщений: 23
По умолчанию

IbOutput.Caption := 'Введите 1-й операнд:';
в том то и дело что кавычка есть и ошибку выдаёт
Deoxes вне форума Ответить с цитированием
Старый 19.11.2013, 19:51   #10
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Не в той строке. Посмотрите в той строке, которую я выделил.
ZX Spectrum-128 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа по Delphi Юлия1234 Помощь студентам 2 13.06.2012 19:15
Программа Delphi ДМИТРИЙ1234 Помощь студентам 5 25.11.2011 09:21
Программа в Delphi milawka Фриланс 1 04.05.2011 21:40
Народ у каво есть программа Биоритмов в Delphi или хотя бы исходник для Delphi Student_174 Помощь студентам 0 20.04.2011 12:53
Программа-тест в Delphi) скиньте))а то програмку здавать преподу надо,и самой хочется понять Delphi Верчик Помощь студентам 9 02.03.2009 17:46