Меню
Разработки
Разработки  /  Информатика  /  Проверочные работы  /  11 класс  /  Лабораторная работа по информатике по теме "Методические указания для выполнения лабораторных работ на языке ООП Delphi"

Лабораторная работа по информатике по теме "Методические указания для выполнения лабораторных работ на языке ООП Delphi"

Лабораторные работы позволят закрепить знания о программировании на практике.
05.11.2015

Описание разработки

Лабораторная работа №1

Задание №1

Постановка задачи:

 Написать программу Конвертор, которая пересчитывает цену из долларов в рубли. Рекомендуемый вид формы приведен на рисунке 1. 1.

Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.

Программная реализация:

procedure TForm1. Button1Click(Sender: TObject);

var usd:real;

k:real;

rub:real;

begin

k:=StrToFloat (Edit1. Text);

usd:=StrToFloat (Edit2. Text);

rub:=usd*k;

Label4. Caption:= FloatToStr(usd)+ '$=' + FloatToStrF(rub, ffCurrency, 6, 2);

end;

procedure TForm1. Button2Click(Sender: TObject);

begin

Form1. Close;

end;

procedure TForm1. FormCreate(Sender: TObject);

begin

end;

end.

Задание №2

Постановка задачи:

Написать программу, которая пересчитывает вес из фунтов в килограммы (1 фунт=0, 4536). Оформить отчет

Лабораторная работа по информатике по теме Методические указания для выполнения лабораторных работ на языке ООП Delphi

Лабораторная работа №2

Задание №1

Постановка задачи:

1. Написать программу, вычисляющую скорость(км/час), с которой бегун пробежал дистанцию. Рекомендуемый вид формы приведен на рисунке 2. Программа должна быть спроектирована таким образом, чтобы переход осуществлялся при нажатии на клавишу Enter.

2. Доработать программу для кнопки Завершить.

Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.

Задание №2.

Постановка задачи:

Написать программу, которая вычисляет доход по вкладу методом простых процентов (доход=сумма*(процент)/12)*срок). Рекомендуемый вид формы приведен на рисунок 2. 2. В результате щелчка на кнопке Вычислить в окне программы должна отображаться величина дохода и сумма в конце срока вклада. Если поле редактирования не содержит данных, то в программе должен быть реализован вывод сообщения об этом.

Полную информацию смотрите в файле. 

Содержимое разработки

Государственное автономное профессиональное образовательное учреждение Чувашской Республики «Чебоксарский механико-технологический техникум» Министерства образования и молодежной политики Чувашской Республики

(Чебоксарский механико-технологический техникум Минобразования Чувашии)











МЕТОДИЧЕСКИЕ УКАЗАНИЯ

Для выполнения лабораторных работ по

МДК 02.01 Информационные технологии и платформы разработки информационных систем

(Специальная информатика)

Для студентов специальности 09.02.04 Информационные системы (по отраслям)







Разработала: преподаватель спецдисциплин Зайцева Л.Е.















2015

Содержание

Лабораторная работа №1 3

Лабораторная работа №2 4

Лабораторная работа №3 6

Лабораторная работа №4 9







Лабораторная работа №1


Задание №1

Постановка задачи:

Написать программу Конвертор, которая пересчитывает цену из долларов в рубли. Рекомендуемый вид формы приведен на рисунке 1.1.

Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.


Рисунок 1.1


Программная реализация:

procedure TForm1.Button1Click(Sender: TObject);

var usd:real;

k:real;

rub:real;

begin

k:=StrToFloat (Edit1.Text);

usd:=StrToFloat (Edit2.Text);

rub:=usd*k;

Label4.Caption:= FloatToStr(usd)+ '$=' + FloatToStrF(rub, ffCurrency,6,2);

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Form1.Close;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

end;

end.


Задание №2

Постановка задачи:

Написать программу, которая пересчитывает вес из фунтов в килограммы (1 фунт=0,4536). Оформить отчет


Лабораторная работа №2


Задание №1

Постановка задачи:

1.Написать программу, вычисляющую скорость(км/час), с которой бегун пробежал дистанцию. Рекомендуемый вид формы приведен на рисунке 2. Программа должна быть спроектирована таким образом, чтобы переход осуществлялся при нажатии на клавишу Enter.

2. Доработать программу для кнопки Завершить.

Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.

Рисунок 2.1

Задание №2.

Постановка задачи:

Написать программу, которая вычисляет доход по вкладу методом простых процентов (доход=сумма*(процент)/12)*срок). Рекомендуемый вид формы приведен на рисунок 2.2. В результате щелчка на кнопке Вычислить в окне программы должна отображаться величина дохода и сумма в конце срока вклада. Если поле редактирования не содержит данных, то в программе должен быть реализован вывод сообщения об этом.

Рисунок 2.2


Программная реализация задания №1:

procedure TForm1.Button1Click(Sender: TObject);

var

dist:integer;

min: integer;

sek:real;

v:real;

begin

if length(edit1.Text)=0

then edit1.Text:= '0';

if length(edit2.Text)=0

then edit2.Text:= '0';

if length(edit3.Text)=0

then edit3.Text:= '0';

dist:=strtoint(edit1.Text);

min:=strtoint(edit2.Text);

sek:=strtoint(edit3.Text);

if (dist=0)or ((min=0)and(sek=0)) then

begin

messageDlg('надо задать дистанцию и время', mtWarning,[mbOK],0);

exit;

end;

v:=(dist/1000)/((min*60+sek)/3600);

Label5.Caption:= 'Дистанция:' + Edit1.Text + 'м' + #13 + 'Время:' + inttostr(min) + 'мин' + floatToStr(sek) + 'сек'+#13+'скорость:'+ floattostr(v)+'км/час';

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

form1.Close;

end;


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

begin

case key of

'0'..'9': ;

#8 : ;

#13 :Edit2.SetFocus;

else key:=chr(0);

end;

end;


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

begin

case key of

'0'..'9': ;

#8 : ;

#13 :Edit3.SetFocus;

else key:=chr(0);

end;

end;


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

begin

case key of

'0'..'9': ;

#8 : ;

#13 :button1.SetFocus;

else key:=chr(0);

end;

end;

end.


Лабораторная работа №3


Задание №1

Постановка задачи:

Написать программу, которая позволяет пересчитать цену из долларов в рубли или из рублей в доллары. Рекомендуемый вид формы приведен на рис. 3.1. Во время работы программы, в результате выбора вида конвертации, соответствующим образом должен меняться заголовок окна и текст, поясняющий назначение полей ввода.

Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.

Рисунок 3.1


Программная реализация:

// щелчок на переключателе USD руб.
procedure TForm1.RadioButton1Click(Sender: TObject);
begin
// изменить заголовок окна
Form1.Caption := 'Конвертор: USD - RUB';
// изменить текст перед полем Edit1
Label1.Caption := 'Сумма ($): ';
// установить курсор в поле Сумма
Edit1.SetFocus;
Label3.Caption := '';
end;
// щелчок на переключателе руб. USD
procedure TForm1.RadioButton2Click(Sender: TObject);
Примеры и задачи 27
begin
Form1.Caption := 'Конвертор: RUB - USD';
Label1.Caption := 'Сумма (руб.): ';
Edit1.SetFocus;
Label3.Caption := '';
end;
// Щелчок на кнопке OK
procedure TForm1.Button1Click(Sender: TObject);
var
usd: real; // цена в долларах
rub: real; // цена в рублях
k: real; // курс
begin
k := StrToFloat(Edit2.Text);
if RadioButton1.Checked then
begin
// пересчет из долларов в рубли
usd := StrToFloat(Edit1.Text);
rub := usd * k;
Label3.Caption := FloatToStrF(usd,ffFixed,6,2) +
'$ = ' +
FloatToStrF(rub,ffCurrency,6,2);
end
else begin
// пересчет из рублей в доллары
rub := StrToFloat(Edit1.Text);
usd := rub / k;
Label3.Caption := FloatToStrF(rub,ffCurrency,6,2) +
' = ' +
FloatToStrF(usd,ffFixed,6,2) + '$';
end;
end;
// процедура обрабатывает событие EditChange
// компонентов Edit1 и Edit2
28 Часть 1
procedure TForm1.EditChange(Sender: TObject);
begin
// если в каком-либо из полей Edit нет данных,
// сделать кнопку Button1 недоступной
if (Length (Edit1.Text) = 0) or (Length (Edit2.Text) = 0)
then Button1.Enabled := False
else Button1.Enabled := True;
Label3.Caption := '';
end;
// нажатие клавиши в поле Сумма
procedure TForm1.Edit1KeyPress(Sender: TObject;
var Key: Char);
begin
case Key of
'0'..'9', #8: ; // цифры и
'.',',':
// Обработку десятичного разделителя
// сделаем "интеллектуальной". Заменим точку
// и запятую на символ
// FormatSettings.DecimalSeparator — символ,
// который при текущей настройке операционной
// системы должен использоваться при записи
// дробных чисел.
begin
Key := FormatSettings.DecimalSeparator;
// проверим, введен ли уже в поле Edit
// десятичный разделитель
if
pos(FormatSettings.DecimalSeparator,Edit1.Text) 0
then Key := #0;
end;
#13: // клавиша
Edit2.SetFocus // Переместить курсор
// в поле Курс
else Key := #0; // остальные символы запрещены
end;
end;
Примеры и задачи 29
// нажатие клавиши в коле Курс
procedure TForm1.Edit2KeyPress(Sender: TObject;
var Key: Char);
begin
case Key of
'0'..'9', #8: ; // цифры и
'.',',':
begin
Key := FormatSettings.DecimalSeparator;
if
pos(FormatSettings.DecimalSeparator,Edit1.Text) 0
then Key := #0;
end;
#13: // клавиша
Edit2.SetFocus // Переместить фокус
// на кнопку Ok
else Key := #0; // остальные символы запрещены
end;
end;


Задание №2

Постановка задачи: Написать программу, которая вычисляет стоимость жалюзи.
Рекомендуемый вид формы приведен на рисунке 3.2. Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.

Рисунок 3.2


Лабораторная работа №4


Задание №1

Постановка задачи: Напишите программу-калькулятор, выполняющую сложение и вычитание, где для каждой цифровой кнопки создана отдельная процедура обработки события Click. Рекомендуемый вид формы приведен на рисунке 4.1.

Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.



Программная реализация

// Событие OnClick на каждой цифровой кнопке
// обрабатывает отдельная процедура.
implementation
{$R *.dfm}
var
accum: real; // аккумулятор
oper: integer; // операция: 1 — '+'; 2 — '-';
// 0 — "выполнить" (кнопка "=")
f: integer;
{ f = 0 ждем первую цифру нового числа, например,
после выполнения операции,
когда на индикаторе результат.
f = 1 ждем остальные цифры. }
// кнопка 0
procedure TForm1.Button0Click(Sender: TObject);
begin
if f = 0 // первая цифра числа
then begin
Edit1.Text := '0';
f := 1; // ждем остальные цифры
end
else
if Edit1.Text '0'
// чтобы на индикаторе не было
// нескольких нулей в начале числа
then Edit1.Text := Edit1.Text + '0';
end;
// кнопка 1
procedure TForm1.Button1Click(Sender: TObject);
begin
if f = 0 // первая цифра числа
then begin
Edit1.Text := '1';
f := 1; // ждем остальные цифры
end
else Edit1.Text := Edit1.Text + '1';
end;
// кнопка 2
procedure TForm1.Button2Click(Sender: TObject);
begin
if (f = 0) // первая цифра числа
then begin
Edit1.Text := '2';
f := 1; // ждем остальные цифры
end
else Edit1.Text := Edit1.Text + '2';
end;
// кнопка 3
procedure TForm1.Button3Click(Sender: TObject);
begin
if f = 0
then begin
Edit1.Text := '3';
f := 1;
end
else Edit1.Text := Edit1.Text + '3';
end;
// кнопка 4
procedure TForm1.Button4Click(Sender: TObject);
begin
if f = 0 then
begin
Edit1.Text := '4';
f := 1;
end
else Edit1.Text := Edit1.Text + '4';
end;
// кнопка 5
procedure TForm1.Button5Click(Sender: TObject);
begin
if (f = 0)
then begin
Edit1.Text := '5';
f := 1;
end
else Edit1.Text := Edit1.Text + '5';
end;
// кнопка 6
procedure TForm1.Button6Click(Sender: TObject);
begin
if f = 0
then begin
Edit1.Text := '6';
f := 1;
end
else Edit1.Text := Edit1.Text + '6';
end;
// кнопка 7
procedure TForm1.Button7Click(Sender: TObject);
begin
if f = 0
then begin
// первая цифра числа
Edit1.Text := '7';
f := 1;
end
else Edit1.Text := Edit1.Text + '7';
end;
// кнопка 8
procedure TForm1.Button8Click(Sender: TObject);
begin
if f = 0
then begin
Edit1.Text := '8';

f := 1;
end
else Edit1.Text := Edit1.Text + '8';
end;
// кнопка 9
procedure TForm1.Button9Click(Sender: TObject);
begin
if f = 0 // первая цифра числа
then begin
Edit1.Text := '9';
f := 1; // ждем остальные цифры
end
else Edit1.Text := Edit1.Text + '9';
end;
// десятичная точка
procedure TForm1.ButtonZClick(Sender: TObject);
begin
if Edit1.Text = '0' then
begin
Edit1.Text := '0,';
f := 1;
end;
if Pos(',',Edit1.Text) = 0 then
Edit1.Text := Edit1.Text + ',';
end;
// выполнение операции
procedure DoOper;
var
numb: real; // число на индикаторе
begin
// accum содержит результат предыдущей
// операции, oper — код операции, которую
// надо выполнить. Операнд находится
// на индикаторе.
numb := StrToFloat(Form1.Edit1.Text);
case oper of
0: accum := numb;
1: accum := accum + numb;
2: accum := accum — numb;
end;
Form1.Edit1.Text := FloatToStr(accum);
end;
// кнопка "+".
procedure TForm1.ButtonPlusClick(Sender: TObject);
{ Надо выполнить предыдущую операцию,
вывести результат на индикатор,
запомнить текущую операцию
и установить режим ожидания первой
цифры нового числа. }
begin
if f = 0 // ждем первую цифру, но пользователь
// щелкнул на кнопке операции
then oper := 1 // запомним операцию
else begin
// на индикаторе есть число
DoOper; // выполнить предыдущую операцию
oper :=1; // запомнить текущую операцию
f:=0; // ждем первую цифру нового числа
end;
end;
// кнопка "-"
procedure TForm1.ButtonMinusClick(Sender: TObject);
// см. комментарий к процедуре обработки OnClick на "+"
begin
if f = 0 // ждем первую цифру
then oper := 2
else begin
DoOper; // выполнить предыдущую операцию
oper :=2; // запомнить текущую операцию
f:=0; // ждем первую цифру нового числа
end;
end;
// кнопка "="
procedure TForm1.ButtonEnterClick(Sender: TObject);
begin
if f = 0 // ждем первую цифру
then oper := 0
else begin
DoOper; // выполнить предыдущую операцию
oper :=0; // запомнить текущую операцию
f:=0; // ждем первую цифру нового числа
end;
end;
// кнопка "с" — очистка
procedure TForm1.ButtonCClick(Sender: TObject);
begin
Edit1.Text := '0';
accum := 0;
oper := 0;
f := 0; // ждем первую цифру числа
end;
// нажатие клавиши в поле Edit1
procedure TForm1.Edit1Change(Sender: TObject; var Key:Char);
begin
Key := Chr(0); // не отображать символы
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
oper := 0;
end;
end.


Задание №2

Постановка задачи:

Написать программу-калькулятор, выполняющую сложение и вычитание, где событие Click всех цифровых кнопок обрабатывает одна процедура, что позволяет значительно сократить размер программы. Оформить отчет в программе MS Word, которая включает в себя постановку задачи, программную реализацию, блок-схему и результат выполнения программы.


11


-75%
Курсы повышения квалификации

Профессиональная компетентность педагогов в условиях внедрения ФГОС

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Лабораторная работа по информатике по теме "Методические указания для выполнения лабораторных работ на языке ООП Delphi" (0.35 MB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт