Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсач исправленый.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
204 Кб
Скачать

3. Описание данных

"Устный счет"является игровым приложением для ПК, включающим в себя стандартные операции математики. Стоит рассмотреть методы обработки входных данных, коими являются параметры генерирования примера.

Обработка входных данных осуществляется с помощью панели управления приложением, реализованными определенными процедурами. В свою очередь, данные процедуры обращаются к "основной", включающей в себя множество элементов редактирования, а именно настройки примера. Настройки можно меня при помощи правого клика мыши.

Входные данные

1.Выбор знака действия.

2.Выбор количества операций.

3.Выбор максимального генерируемого числа.

Выходные данные

1.На дисплее должна выдаваться справочная информация о названии программы.

2.После обработки входных данных на экран выводится пример.

4 . Алгоритмы и блок схема

5. Программа на языке Pascal.

Для создания формы использовалась стандартная форма, предложенная в Delphi, на которую и были наложены другие элементы программы.

В самом начале любой программы, сделанной на Delphi, объявляется переменная формы(Form1), которую Delphi создаёт автоматически при создании проекта. Потом объявляются две переменные (l,Chars) строкового типа(String). Так же объявляются три переменные (k,m,i) целочисленного типа(Integer) и одну переменную (rezult) типа (real). И дальше идут основные процедуры программы. Самая основная процедура– это процедура – Button1Click.

procedure TForm1.Button1Click(Sender: TObject);

var

rezult:real;

l,Chars:string;

k,m,i:integer;

begin

GroupBox5.Visible:=True;

Edit2.Visible:=False;

randomize;

Edit1.Text:=' ';

rezult:=0;

k:=random(SpinEdit2.Value);

m:=random(SpinEdit2.Value);

if k=0 then k:=1;

if m=0 then m:=1;

if CheckBox1.Checked=True then Chars:='+';

if CheckBox2.Checked=True then Chars:=Chars+'-';

if CheckBox3.Checked=True then Chars:=Chars+'/';

if CheckBox4.Checked=True then Chars:=Chars+'*';

l:=(Chars[1+Random(Length(Chars))]);

Edit1.Text:=IntToStr(k)+l+IntToStr(m);

if l='+' then rezult:=k+m;

if l='-' then rezult:=k-m;

if l='/' then rezult:=k/m;

if l='*' then rezult:=k*m;

if SpinEdit1.Value>1 then

begin

for i:=1 to (SpinEdit1.Value-1) do

begin

k:=random(SpinEdit2.Value);

if k=0 then k:=1;

if CheckBox1.Checked=True then Chars:='+';

if CheckBox2.Checked=True then Chars:=Chars+'-';

if CheckBox3.Checked=True then Chars:=Chars+'/';

if CheckBox4.Checked=True then Chars:=Chars+'*';

l:=(Chars[1+Random(Length(Chars))]);

if l='+' then rezult:=rezult+k;

if l='-' then rezult:=rezult-k;

if l='/' then rezult:=rezult/k;

if l='*' then rezult:=rezult*k;

if l='/' then Edit1.Text:='('+Edit1.Text+')';

if l='*' then Edit1.Text:='('+Edit1.Text+')';

Edit1.Text:=Edit1.Text+l+IntToStr(k);

end;

end;

Edit4.Text:=FloatToStr(rezult);

end;

Она непосредственно генерирует пример и выводит его на экран. В основе этой процедуры заложены циклы которые определяют выбранный знак и генерируют пример с этим знаком. Вывод ответа осуществляется автомотический в компоненте Edit2.

procedure TForm1.N3Click(Sender: TObject);

begin

form1.Close;

form2.Close;

end;