Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет “Львівська Політехніка”
Кафедра АСУ
Лабораторна робота №5
з предмету
HYPERLINK "http://uk.wikipedia.org/wiki/%D0%9E%D0%B1'%D1%94%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D1%96%D1%94%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D0%BD%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F" Об'єктно-орієнтоване програмування
на тему:
Створення ужитку з використанням WEB-технологій
Виконав:
ст. гр. КН-32
___________________
Перевірив:
______________________
___________________
Львів – 2009
Мета роботи: Вивчення можливостей системи програмування Delphi 5 по створенню динамічних HTML-сторінок.
Порядок роботи:
Ознайомитись з теоретичними відомостями по роботі.
Створити проект Delphi, який реалізує наведений у тексті приклад.
Змінити текст програми так, щоб він відповідав індивідуальному завданню.
Оформити звіт для захисту лабораторної роботи за зразком
назва роботи
мета роботи
порядок роботи
короткі теоретичні відомості
алгоритм розв’язку задачі
тексти відповідних модулів проекту
аналіз отриманих результатів та висновки
Індивідуальне завдання №12
Створити Web-ужиток який формує динамічні HTML-сторінки для виконання наступних задач:
Визначення можливості побудови трикутника за трьома сторонами
Тексти модулів проекту.
program mult;
{$APPTYPE CONSOLE}
uses
WebBroker,
CGIApp,
Unit1 in 'Unit1.pas' {WebModule1: TWebModule};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TWebModule1, WebModule1);
Application.Run;
end.//------Unit1.pas---------
unit Unit1;
interface
uses
SysUtils, Classes, HTTPApp, HTTPProd;
type
TWebModule1 = class(TWebModule)
PageProducer1: TPageProducer;
procedure PageProducer1HTMLTag(Sender: TObject; Tag: TTag;
const TagString: String; TagParams: TStrings;
var ReplaceText: String);
procedure WebModule1WebActionItem2Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
procedure WebModule1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
WebModule1: TWebModule1;
Num1,Num2,Num3:integer;
implementation
{$R *.dfm}
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
Begin
if(((StrToInt(Request.ContentFields.Values['num1'])+StrToInt(Request.ContentFields.Values['num2']))>StrToInt(Request.ContentFields.Values['num3'])))and
(((StrToInt(Request.ContentFields.Values['num1'])+StrToInt(Request.ContentFields.Values['num3']))>StrToInt(Request.ContentFields.Values['num2'])))and
(((StrToInt(Request.ContentFields.Values['num2'])+StrToInt(Request.ContentFields.Values['num3']))>StrToInt(Request.ContentFields.Values['num1'])))
then
Response.Content:=
'<b>Вiтаю!!!</b><p><p>З такими сторонами ви можете побудувати трикутник!'
else
Response.Content:=
'Ці довжини сторін не дозволяють побудувати трикутник<p>'+
'<a HREF="//127.0.0.1/cgi-bin/mult.exe">'+
'<p>Спробуйте ще раз</a></p>';
Handled:=True;
end;
procedure TWebModule1.WebModule1WebActionItem2Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
// генеруємо два множники
Randomize;
Num1:=Random(8)+1; // змінні Num1 та Num2 оголошуються як глобальні !
Num2:=Random(8)+1;
Num3:=Random(8)+1;
Response.Content:=PageProducer1.Content;
Handled:=True;
end;
procedure TWebModule1.PageProducer1HTMLTag(Sender: TObject; Tag: TTag;
const TagString: String; TagParams: TStrings; var ReplaceText: String);
begin
if (TagString='TNum1') then
ReplaceText:=IntToStr(Num1)
else
if (TagString='TNum2') then
ReplaceText:=IntToStr(Num2)
else
if (TagString='TNum3') then
ReplaceText:=IntToStr(Num3);
end;
end.
Код сторінки
<html>
<head>
<title>Володя Ништа!</title>
</head>
<body>
<h1>Це моя програма!</h1>
<p>Натиснiть кнопку "Push"
<form method="POST" action="http://127.0.0.1/cgi-bin/mult.exe/1">
<table>
<tr><td><input type="text" name="num1" size="1" value="<#TNum1>"</td>
<td><input type="text" name="num2" size="1" value="<#TNum2>"</td>
<td><input type="text" name="num3" size="1" value="<#TNum3>"</td>
<td><input type="submit" name="post" value="Push"></td>
</tr>
</table>
</form>
<form method="POST" action="http://127.0.0.1/cgi-bin/mult.exe">
<p><input type="submit" value="Refresh" name="New"></p>
</form>
</body>
</html>
Вигляд сторінки:
Тест програми:
Програма генерує 3 випадкових числа і перевіряє чи можна з такими довжинами побудувати трикутник.
Висновок.
На цій лабораторній роботі я вивчив можливості системи програмування Delphi 5 по створенню динамічних HTML-сторінок
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!