Друзья...где то ошибка допущена и поэтому не работает программа....Немогу найти...Данную работу скачал в Интернете...
Есть ошибки с символами...Но вот эти я незнаю...
Может кто-то сможет исправить??? Заранее благодарен!!!!
(69): Statement expected, but expression of type 'Integer' found
(103): Undeclared identifier: 'Edit1KeyPress'
(103): ';' expected but '(' found
(103): ';' expected but ')' found
(108): Missing operator or semicolon
и.т.д.
Код:
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Label1: TLabel;
Button1: TButton;
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
const
KC = 5; // разрядность числа (кол-во цифр)
LT = 10; // количество чисел (длина теста)
var
numb: integer; // число, которое должен запомнить испытуемый
right: integer; // количество правильных чисел
n: integer; // счетчик чисел
{$R *.dfm}
// генерирует к - разрядное число
function GetNumb(k: integer) : integer;
var
n: integer; // генерируемое число
i: integer;
begin
// процедура генерирует число по разрядам
// начиная со старшего
n:= Random(9)+1; // старший разряд не может быть нулем
// остальные разряды
for i := 1 to (k-1) do
n := n*10 + Random(10);
GetNumb := n;
end;
// создание формы
procedure TForm1.FormCreate (Sender: TObject);
begin
Edit1.Visible := False; // скрыть поле ввода Editl
Edit1.MaxLength := KC; // кол-во символов, которое
// можно ввести
Label1.Wordwrap := True; // разрешить перенос слов на
// следующую строку
Label1.Caption :=
'Сейчас на экране будут появляться числа. ' +
'Вы должны запомнить число, набрать его на клавиатуре '+
'и нажать <Enter>';
Button1.Caption := 'Начать';
Timer1.Enabled := False; // таймер остановлен
Timer1.Interval := 1000; // время показа числа - 1 секунда
right := 0; // кол-во правильных
n := 0; // счетчик чисел
Randomize; 0// инициализация ГСЧ
end;
// щелчок на кнопке "Начать/Завершить"
procedure TForm1.Button1Click(Sender: TObject);
begin
if Button1.Caption = 'Завершить' then
Form1.Close; // закрыть окно программы
if Button1.Caption = 'Начать' then
begin
Button1.Caption := 'Завершить';
Button1.Visible := False; // скрыть кнопку
// кнопка Buttonl станет доступной после того,
// как испытание закончится
Label1.Caption := '';
Label1. Font .Size := 24; //размер шрифта поля Labell
Edit1.Font.Size := 24; // размер шрифта поля Editl
// сгенерировать и вывести число
numb := GetNumb(KC);
Label1.Caption := IntToStr(numb);
Timer1.Enabled := True; // запуск таймера
// процедура обработки сигнала от таймера
// "сотрет" число
end;
end;
// обработка события таймера
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := False; // остановить таймер
Label1.Visible := False; // скрыть число
Edit1.Visible := True; // сделать доступным поле Editl
Edit1.SetFocus; // установить курсор в поле Editl
end;
// нажатие клавиш в поле Editl
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
igrok: integer; // число, которое ввел испытуемый
begin
case Key of
10'..'9',#8: ; // клавиши "0"-"9", клавиша <Backspace>
#13: // клавиша <Enter>
begin
igrok := StrToInt(Editl.Text) ;
if (igrok = numb)
then right := right + 1;
n := n + 1; // счетчик чисел
Edit1.Text := '';
Edit1.Visible := False; // скрыть поле Editl
if n < LT then
begin
numb := GetNumb(KC); // сгенерировать следующее
// число
Label1.Caption : = IntToStr(numb); // отобразить
// число
end
Labell.Visible := True;
Timerl.Enabled := True; // пуск таймера
else begin
// испытание закончено
// вывести результат
Labell.Font.Size := 10;
Labell.Caption := 'Результат:1 + #13 +
'Показано чисел: ' + IntToStr(LT) + #13 +
'Правильных: ' + IntToStr(right);
Labell.Visible := True;
Buttonl.Visible := True; // показать кнопку Завершить
end;
end;
else Key := Chr(0);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
procedure TForm1.FormCreate (Sender: TObject);
begin
Editl.Visible := False; // скрыть поле ввода Editl
Editl.MaxLength := КС; // кол-во символов, которое
// можно ввести
Labell.Wordwrap : = True; // разрешить перенос слов на
// следующую строку
Labell.Caption :=
'Сейчас на экране будут появляться числа. ' +
'Вы должны запомнить число, набрать его на клавиатуре '+
'и нажать <Enter>'; .
Buttonl.Caption := 'Начать';
Timerl.Enabled := False; // таймер остановлен
Timerl.Interval := 1000; // время показа числа - 1 секунда
right := 0; // кол-во правильных
п := 0; // счетчик чисел
Randomize; o// инициализация ГСЧ
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
var
n: integer; // генерируемое число
i: integer;
begin
// процедура генерирует число по разрядам
// начиная со старшего
n:= Random(9)+1; // старший разряд не может быть нулем
// остальные разряды
for i := 1 to (k-1) do
n := n*10 + Random(10);
GetNumb := n;
end;
// создание формы
procedure TForm1.FormCreate (Sender: TObject);
begin
Edit1.Visible := False; // скрыть поле ввода Editl
Edit1.MaxLength := KC; // кол-во символов, которое
// можно ввести
Label1.Wordwrap := True; // разрешить перенос слов на
// следующую строку
Label1.Caption :=
'Сейчас на экране будут появляться числа. ' +
'Вы должны запомнить число, набрать его на клавиатуре '+
'и нажать <Enter>';
Button1.Caption := 'Начать';
Timer1.Enabled := False; // таймер остановлен
Timer1.Interval := 1000; // время показа числа - 1 секунда
right := 0; // кол-во правильных
n := 0; // счетчик чисел
Randomize; 0// инициализация ГСЧ
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
procedure TForm1.Button1Click(Sender: TObject);
begin
if Buttonl.Caption = 'Завершить' then
Forml.Close; // закрыть окно программы
*
if Buttonl.Caption = 'Начать' then
begin
Buttonl.Caption := 'Завершить';
Buttonl.Visible := False; // скрыть кнопку
// кнопка Buttonl станет доступной после того,
// как испытание закончится
Labell.Caption : = '';
Labell. Font .Size := 24; //размер шрифта поля Labell
Editl.Font.Size : = 24; // размер шрифта поля Editl
// сгенерировать и вывести число
numb := GetNumb(KC);
Labell.Caption := IntToStr(numb);
Timerl.Enabled := True; // запуск таймера
// процедура обработки сигнала от таймера
// "сотрет" число
end;
end;
end.
procedure TForm1.Timer1Timer(Sender: TObject);
begin
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timerl.Enabled := False; // остановить таймер
Labell.Visible := False; // скрыть число
Editl.Visible := True; // сделать доступным поле Editl
Editl.SetFocus; // установить курсор в поле Editl
end;
end;
end.
Admin: Пользуемся тегами!