Delphi визуалды программалау ортасы



бет86/97
Дата06.01.2022
өлшемі2,03 Mb.
#12435
1   ...   82   83   84   85   86   87   88   89   ...   97
33-сурет
2. Компоненттердің оқиғалары мен қасиеттерін төменде берілген бағдарламаға сәйкес өңдеп, жұмыс мақсатына сәйкес әрекеттерді атқарыңыз.



34-сурет


35-сурет
Жұмысты орындау бағдарламасы:

unit essaktau;

implementation

const

KC = 5; // санның разрядтылығы (цифрлар саны)

LT = 10; // сандардың саны (тест ұзындығы)

var

numb: integer; // сыналушы еске сақтауға тиіс сан

right: integer; // дұрыс еске сақталған сандар саны

n: integer; // сандар есептеуіші

{$R *.dfm}

// k-разрядты санды генерациялайды

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; // Edit1 енгізу өрісін жасыру

Edit1.MaxLength := KC; // енгізуге болатын символдар саны

Label1.WordWrap := True; // сөзді келесі жолға тасымалдауға рұхсат //беру

Label1.Caption := 'Қазір экранда сандар пайда болады. ' +

'Сіз сол санды еске сақтап, оны пернетақтада теріңіз, сосын Enter басыңыз';

Button1.Caption := 'Бастау';

Timer1.Enabled := False; // таймер тоқтатылды

Timer1.Interval := 1000; // санның көріну уақыты - 1 секунд

right := 0; // дұрыстарының саны

n := 0; // сандарды есептеуіш

Randomize; // ГСЧ инициализациялау

end;


// «Бастау/Аяқтау» батырмасында шерту

procedure TForm1.Button1Click(Sender: TObject);

begin

if Button1.Caption = 'Аяқтау' then



Form1.Close; // бағдарлама терезесін жабу

if Button1.Caption = 'Бастау' then

begin

Button1.Caption := 'Аяқтау';



Button1.Visible := False; // батырманы жасыру

// Button1 батырмасы сынақ аяқталған соң ғана қол жетімді //болады

Label1.Caption := '';

Label1.Font.Size := 24; // Label1өрісінің қаріп өлшемі

Edit1.Font.Size := 24; // Edit1 өрісінің қаріп өлшемі

// санды генерациялау және шығару

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; // Edit1 өрісін қол жетімді ету

Edit1.SetFocus; // Edit1 өрісіне көрсеткішті орнату

end;


// Edit1 өрісінде пернені басу

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

var

igrok: integer; // сыналушы енгізген сан



begin

case Key of

'0'..'9',#8: ; // "0"-"9" пернелері,

#13: // пернесі

begin

igrok := StrToInt(Edit1.Text);



if (igrok = numb)

then right := right + 1;

n := n + 1; // сандар есептеуіші

Edit1.Text := '';

Edit1.Visible := False; // Edit1 өрісін жасыру

if n < LT then

begin

numb := GetNumb(KC); // келесі санды генерациялау



Label1.Caption := IntToStr(numb); // санды бейнелеу

Label1.Visible := True;

Timer1.Enabled := True; // таймерді іске қосу

End // сынақ аяқталды

else begin // нәтиже шығару

Label1.Font.Size := 10;

Label1.Caption := 'Нәтиже:' + #13 +

'Көрінген сандар: ' + IntToStr(LT) + #13 +

'Дұрысы: ' + IntToStr(right);

Label1.Visible := True;

Button1.Visible := True; // «Аяқтау» батырмасы көрінеді

end;


end;

else Key := Chr(0);

end;

end;


end.

20. Электр тізбегінің кедергісін табу


Жұмыстың мақсаты – физика пәні бойынша электр тізбегінің кедергісін есептейтін бағдарлама құру.

1. Ол үшін жаңа жоба ашып, 36-суретте көрсетілген компоненттерді Пішінге орналастырыңыз.



2. Компоненттердің оқиғалары мен қасиеттерін төменде берілген бағдарламаға сәйкес өңдеп, жұмыс мақсатына сәйкес әрекеттерді атқарыңыз.





Достарыңызбен бөлісу:
1   ...   82   83   84   85   86   87   88   89   ...   97




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет