Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
/
Лабораторна робота на Delphi №9.
Створення ужитку з використанням WEB-технологій
Мета роботи: Вивчення можливостей системи програмування Delphi по створенню динамічних HTML-сторінок.
Завдання
Перетворення числа з двійкової системи числення у 16-у.
unit Unit1;
interface
uses
SysUtils, Classes, HTTPApp, HTTPProd;
type
TWebModule1 = class(TWebModule)
PageProducer1: TPageProducer;
procedure WebModule1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
procedure WebModule1WebActionItem2Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
procedure PageProducer1HTMLTag(Sender: TObject; Tag: TTag;
const TagString: String; TagParams: TStrings;
var ReplaceText: String);
private
{ Private declarations }
public
{ Public declarations }
end;
var
WebModule1: TWebModule1;
num,num1,num2,a:string;
val,i:integer;
implementation
{$R *.dfm}
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
i:=0;
num:=Request.ContentFields.Values['num1'];
val:=Length(num);
If (val mod 4 <> 0) then
While (val mod 4 <> 0) do
Begin
num:='0'+num;
val:=Length(num);
end;
while (i<val) do
begin
a:=a+num[i+1];
a:=a+num[i+2];
a:=a+num[i+3];
a:=a+num[i+4];
if a='0000' then num2:=num2+'0' else
if a='0001' then num2:=num2+'1' else
if a='0010' then num2:=num2+'2' else
if a='0011' then num2:=num2+'3' else
if a='0100' then num2:=num2+'4' else
if a='0101' then num2:=num2+'5' else
if a='0110' then num2:=num2+'6' else
if a='0111' then num2:=num2+'7' else
if a='1000' then num2:=num2+'8' else
if a='1001' then num2:=num2+'9' else
if a='1010' then num2:=num2+'A' else
if a='1011' then num2:=num2+'B' else
if a='1100' then num2:=num2+'C' else
if a='1101' then num2:=num2+'D' else
if a='1110' then num2:=num2+'E' else
if a='1111' then num2:=num2+'F' else
begin num2:=''; num2:='Wrong number'; break; end;
a:='';
i:=i+4;
end;
Response.Content:= '<b>Вiтаю!!!</b><p><p>ось результат! '+num2;
Handled:=True;
end;
procedure TWebModule1.WebModule1WebActionItem2Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
//генеруємо два множники
Randomize;
//Num1:=Random(15)+1; // змінні Num1 та Num2 оголошуються як глобальні !
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:=Num1;//IntToStr(Num1)
end;
end.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!