Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2016, 19:43   #1
Max_Gray
Новичок
Джуниор
 
Регистрация: 17.03.2016
Сообщений: 2
По умолчанию Перевод из Delphi в Pascal

Всем добрый вечер! Мне очень нужен перевод с языка программирования Delphi на Pascal следующего кода:

Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
n = 5; {kolichestvo stantsii}
var
Form1: TForm1;
rg:real; {opytnaya nagruzka}
s:real; {opytnaya proizvoditel'nost'}
p:real; {veroyatnost' prohozhdeniya kadra}
rp:real; {opytnaya veroyatnost' prohozhdeniya kadra}
i:integer; {schetchik kollizii(neproshedshih kadrov)}
j:integer; {schetchik uspeshno proshedshih kadrov}
k:integer; {peremennaya "proverki prohoda kadrov" }
l:integer; {kolichestvo kadrov v nabore}
g:real; {normirovannaya propuschennaya nagruzka}
r:integer; {dlitel'nost' kadra}
bool:boolean; {flag sostoyaniya}
implementation
{$R *.dfm}
procedure aloxa; {protsedura ALOHA}
begin
i:=0;
j:=0;
for k:= 1 to l do {nachalo proverki prohoda kadrov}
begin
bool:=false;{esli false to paket ne proshel}
while bool=false do {poka bool=false do...}
begin
rp:=(random(100)+1)/100;{opytnaya veroyatnost' prohozhdeniya kadra - sluchainym obrazom generiruetsya}
if (rp<=p) then {esli opytnaya veroyatnost' prohozhdeniya kadra <= veroyatnost' prohozhdeniya kadra}
begin
bool:=true;{...bool:=true;}
inc(j);{schitaet kolichestvo uspeshno proshedshih paketov}
end
else inc(i);{kolichestvo neproshedshih paketov}
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
randomize;{generator sluchainyh chisl}
if edit1.Text <> '' then
g:=StrToFloat(Edit1.Text);
if edit2.Text <> '' then
r:=StrToInt(Edit2.Text);
if edit3.Text <> '' then
l:=StrToInt(Edit3.Text);
p:=exp(-2*G);{veroyatnost' prohozhdeniya kadra}
aloxa;
rg:=((j+i)*n*1/r)/l; {opytnoe znachenie normirovannoi propuschennoi nagruzki}
s:=rg*exp(-2*rg); {opytnoe znachenie proizvoditel'nosti}
label5.Caption:='Teoreticheskoe znachenie proizvoditelnosti '+FloattoStr(g*p);
label6.Caption:='Opytnoe znachenie proizvoditelnosti '+FloatToStr(s);
label7.Caption:='Kolichestvo kollizii na '+floattostr(l)+' paketov '+floattostr(i);
label8.Caption:='Obschee vremya peredachi kadrov '+floattostr((j+i)*r);
label9.Caption:='Vremya peredachi odnogo kadra '+floattostr((j+i)*r/l);
p:=exp(-G);
aloxa;
rg:=((j+i)*n*1/r)/l; {opytnoe znachenie normirovannoi propuschennoi nagruzki}
s:=rg*exp(-rg); {opytnoe znachenie proizvoditel'nosti}
label11.Caption:='Teoreticheskoe znachenie proizvoditelnosti '+FloattoStr(g*p);
label12.Caption:='Opytnoe znachenie proizvoditelnosti '+FloatToStr(s);
label13.Caption:='Kolichestvo kollizii na '+floattostr(l)+' paketov '+floattostr(i);
label14.Caption:='Obschee vremya peredachi kadrov '+floattostr((j+i)*r);
label15.Caption:='Vremya peredachi odnogo kadra '+floattostr((j+i)*r/l);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
label5.Caption:='';
label6.Caption:='';
label7.Caption:='';
label8.Caption:='';
label9.Caption:='';
label11.Caption:='';
label12.Caption:='';
label13.Caption:='';
label14.Caption:='';
label15.Caption:='';
end;
end.
Т.к. нужно срочно, мне может хватить и "словарей", достаточных для перевода кода. Если есть полезные ссылки, то и их не обойду вниманием.

Последний раз редактировалось Вадим Мошев; 17.03.2016 в 21:33.
Max_Gray вне форума Ответить с цитированием
Старый 17.03.2016, 20:52   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
перевод с языка программирования Delphi на Pascal
это чой-то новенькое. судя по комментам эту прогу уже переводили с паскакаля на дельфу. попахивает голыми проводниками.
ну и опять это.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 17.03.2016, 21:23   #3
Max_Gray
Новичок
Джуниор
 
Регистрация: 17.03.2016
Сообщений: 2
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
эту прогу уже переводили с паскакаля на дельфу. попахивает голыми проводниками.
вообще я откопал курсач, где была эта прога, но там было написано, что ЭТО - паскаль, про делфи ни слова там не было сказано.
Max_Gray вне форума Ответить с цитированием
Старый 17.03.2016, 21:29   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
вообще я откопал курсач, где была эта прога, но там было написано, что ЭТО - паскаль, про делфи ни слова там не было сказано.
именно поэтому оно оказалось здесь?
совет (бесплатный): закопай обратно туда, где откопал. И напиши с нуля и по-человечески, ибо автору этого ископаемого надо не только руки оторвать, но и жопу голову.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 20.03.2016, 10:05   #5
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
const
n = 5; {kolichestvo stantsii}
var
rg:real; {opytnaya nagruzka}
s:real; {opytnaya proizvoditel'nost'}
p:real; {veroyatnost' prohozhdeniya kadra}
rp:real; {opytnaya veroyatnost' prohozhdeniya kadra}
i:integer; {schetchik kollizii(neproshedshih kadrov)}
j:integer; {schetchik uspeshno proshedshih kadrov}
k:integer; {peremennaya "proverki prohoda kadrov" }
l:integer; {kolichestvo kadrov v nabore}
g:real; {normirovannaya propuschennaya nagruzka}
r:integer; {dlitel'nost' kadra}
bool:boolean; {flag sostoyaniya}
procedure aloxa; {protsedura ALOHA}
begin
i:=0;
j:=0;
for k:= 1 to l do {nachalo proverki prohoda kadrov}
begin
bool:=false;{esli false to paket ne proshel}
while bool=false do {poka bool=false do...}
begin
rp:=(random(100)+1)/100;{opytnaya veroyatnost' prohozhdeniya kadra - sluchainym obrazom generiruetsya}
if (rp<=p) then {esli opytnaya veroyatnost' prohozhdeniya kadra <= veroyatnost' prohozhdeniya kadra}
begin
bool:=true;{...bool:=true;}
inc(j);{schitaet kolichestvo uspeshno proshedshih paketov}
end
else inc(i);{kolichestvo neproshedshih paketov}
end;
end;
end;

begin
   randomize;{generator sluchainyh chisl}
   Write('g = ');Readln(g);
   Write('r = ');Readln(r);
   Write('l = ');Readln(l);
   p:=exp(-2*G);{veroyatnost' prohozhdeniya kadra}
   aloxa;
   rg:=((j+i)*n*1/r)/l; {opytnoe znachenie normirovannoi propuschennoi nagruzki}
   s:=rg*exp(-2*rg); {opytnoe znachenie proizvoditel'nosti}
   Writeln('Teoreticheskoe znachenie proizvoditelnosti ',(g*p):5:5);
   Writeln('Opytnoe znachenie proizvoditelnosti ',s:5:5);
   Writeln('Kolichestvo kollizii na ',l,' paketov ',i);
   Writeln('Obschee vremya peredachi kadrov ',(j+i)*r);
   Writeln('Vremya peredachi odnogo kadra ',(j+i)*r/l:5:5);
   p:=exp(-G);
   aloxa;
   rg:=((j+i)*n*1/r)/l; {opytnoe znachenie normirovannoi propuschennoi nagruzki}
   s:=rg*exp(-rg); {opytnoe znachenie proizvoditel'nosti}
   Writeln('Teoreticheskoe znachenie proizvoditelnosti ',(g*p):5:5);
   Writeln('Opytnoe znachenie proizvoditelnosti ',s:5:5);
   Writeln('Kolichestvo kollizii na ',l,' paketov ',i);
   Writeln('Obschee vremya peredachi kadrov ',(j+i)*r);
   Writeln('Vremya peredachi odnogo kadra ',(j+i)*r/l:5:5);
   Readln;
end.

Только она зависла!
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод из Pascal в Delphi Sersgant Помощь студентам 1 15.06.2012 10:26
Перевод с Pascal в Delphi 7 volk_102 Помощь студентам 1 12.12.2011 12:58
Перевод кода с Pascal в Delphi Rin Общие вопросы Delphi 5 09.01.2011 01:39