Home Random Page


CATEGORIES:

BiologyChemistryConstructionCultureEcologyEconomyElectronicsFinanceGeographyHistoryInformaticsLawMathematicsMechanicsMedicineOtherPedagogyPhilosophyPhysicsPolicyPsychologySociologySportTourism






Randomize(sqr(sqr(dim)-1)-2);

for i:=1 to dim do

for j:=1 to dim do

Case random(dim) mod 3 of

0: begin stars[i,j]:=true; M_Put(i,j,15,0,'*'); end;

1: M_Put(i,j,2,0,'+');

2: M_Put(i,j,2,0,'x');

End;

for k:=1 to dim*sqr(dim) do begin

r:=random(dim*dim);

i1:=i;j1:=j; i:=1 + r mod dim; j:=1 + r div dim;

col:=(col+1) mod 11 ;

if (random(10)<3) and stars[i,j] and not stars[i1,j1] then begin

M_Put(i1,j1,color(col+1),33,'*');

if odd(random(10)) then key:='+' else key:='x';

M_Put(i,j,2,28-dim,key);

End;

if stars[i,j] then begin M_Put(i,j,color(col+1),20-dim,'*'); end;

End;

gotoxy(1,2*dim+9);

End;

Procedure NeoCherepashka;

var i:byte;

begin {yaksho projdemo Entire-riven...}

if wrabbit then gotoxy(1,2*x+7) else gotoxy (1,x+4);

TextBackGround(magenta); TextColor(white);

M_Print_Z('" Iteracia - ot 4eloveka. '); delay(500);

M_Print('Rekursia - ot Boga!!! "'); writeln; delay(2000);

TextBackGround(black);TextColor(white);

write(':-? ');

j:=wherey;

for i:=1 to 4 do begin

Delay(400); gotoxy(1,j);

If odd(i) then textcolor(black) else textcolor(white);

write(':');

end;{for}

Delay(2000); HideCursor; gotoxy(5,j);

TextBackGround(white); textcolor(black);

write(' Lo! You are Neo, indeed ? ');

TextBackGround(black);delay(1000);

Neo_Final;

TextBackground(black);TextColor(black);ShowCursor;

Delay(2000); gotoxy(70,j-1);

CopyRight;

Delay(3000);readkey; halt;

End;

{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

{obrannya shlahu 4erepashkou}

Procedure FindingPath;

Begin

Repeat

if wrabbit then iter:=iter-1;{wrabbit - pokazana tablyca, iter - kilkist sprob}

i:=1;j:=1;sum:=a[1,1];textcolor(col);

{---prohid matrici---}

Repeat

gotoxy(2*j,i+1);write(a[i,j]);

case upcase(readkey) of {zbilshuemo sumu}

'R': if j<x then begin inc(j);inc(sum,a[i,j]) end;

'D': if i<x then begin inc(i);inc(sum,a[i,j]) end;

End;

gotoxy(1,x+2);

writeln('Suma=',sum,' '); {vidslidkovuem sumu}

until (i=x) and (j=x); {poky v kincevu tochku ne prypovzem}

{write(chr(7));}

gotoxy(2*x,x+1);write(a[x,x]);

{------------------}

WriteRezult; {efektyvnist` shlahu}

{if col=3 then max:=limit; test final ***}

if max=limit then begin {jaksho dosagaemo najkraschogo rezultatu...}

hidecursor;delay(800);textcolor(yellow);write(' *TRUE*'); delay(800);

BlinkMatrix; {vypadkova animacia vidgadanogo shlahu v matryci}

gotoxy(1,x+3);TextColor(15);

M_Print('Well, 4erepashka!!! Matrix is reloading'+

'..................................................'+

'..................................................'+

'..................................................'+

'..................................................');

if x<dim then M_Print('>') else



begin M_Print('.'); gotoxy(80,x+5);showcursor;delay(4000); end;{if1}

raize:=true; exit {idemo z procedury v sliduuchiy vymir}

end; {if}

{jaksho max ne dosjag, zalyshaemsa}

col:=col mod 13 +1; if col=7 then inc(col);

{zacikluem kolory, bez black=0, white=15, yellow=14; propuskaem i lightgray=7}

TextColor(col); gotoxy(1,x+2);

If not wrabbit then begin

writeln; write('>>');delay(400);

M_Print(' Try aGain?(y/n)');

yn:=readkey;

{yaksho 4erepashka vtomleno kazhe 'No',

vysylaem na dopomogu Bilogo Krolika z tablyceu najkraschih rezultativ}

if upcase(yn)='N' then

Begin

wrabbit:=true; {*}

Writeln; TextColor(yellow);

M_Print('Matrix miss for you, 4erepashka.'); delay(100);

M_Print(' Follow the ways of White Rabbit ');delay(300);

TextColor(white); write('=:)'); readln; writeln;

ShowMatrix(B,r);

end; {if1}

end;{if}

TextColor(col);

if wrabbit and (iter>0) then begin {krolik pokazav tablycu, i she e sproby}

gotoxy(1,x+3); write('>>');delay(1000);

M_Print(' Try ' + inttostr(iter)+' times ')

End;

until iter<=0;

End;

Procedure FindingPathBack;

Begin

i:=x;j:=x;sum:=a[x,x];textcolor(14);

{---prohid matrici---}

while (i>1) or (j>1) do

Begin

gotoxy(2*j,i+1);write(a[i,j]);

Case upcase(readkey) of

'R','L': if j>1 then begin dec(j); inc(sum,a[i,j]) end;

'D','U': if i>1 then begin dec(i); inc(sum,a[i,j]) end;

end; {case}

gotoxy(1,x+2);

writeln('Suma=',sum,' ');

end;{while}

gotoxy(2*j,i+1);write(a[i,j]);

{--------------}

WriteRezult;

if max=limit then begin delay(1000); BlinkMatrix;

gotoxy(1,x+3);TextColor(15);

M_Print('Well, 4erepashka!!! Matrix is reloading'+

'..................................................'+

'..................................................'+

'..................................................'+

'..................................................');

if x<dim then M_Print('>') else begin M_Print('.');

gotoxy(80,x+5);showcursor;delay(4000)

end; {if}

raize:=true; {ostannja sproba: abo perehodym abo "Gamover"}

End;

End;

{=============================================================================}

Begin

x:=2; {vymirnist}

{1st time} clrscr; delay(3000); TextColor(yellow);

M_Print('Cherepashka: find thy way thru Matrix >> ');delay(100);

M_Print(' entry dimension (2..'+inttostr(dim-1)+'):');

TextColor(white);

readln(x); {chytaemo pochatkovy vymir} delay(1000);

if keypressed and (readkey=#13) then goto go1;

Writeln;

{-pravila igry-}

M_Print_Light('~ Rekursyvna zadacha dynamichnogo programuvannja ~',3);

M_Print_Light('Dana Matryca z cyframy',4);

M_Print_Light('4erepashka povze z verhnogo livogo kuta v pravy nyzhnij (Right/Down),',5);

M_Print_Light(' zbyrauchi bonusy/sumu projdenyh cyfr/ na shlahu.',6);

M_Print_Light('Ji zadacha - zibraty MAXIMUM bonusiv. -> Ce perevodyt jj v nastupny vymir',7);

M_Print_Light('Jaksho ne znahodytsa shlah, mozhe skorystatys dopomogou Bilogo Krolika',8);

M_Print_Light('Vin obbigae Matrycu duzhe shvydko, i pamjatae najkrashu sumu kozhnoi klitinky',9);

M_Print_Light('4erepashka tak ne zumie: vymir(+1) ->> dorig(*4)',10);

M_Print_Light('Ale zi svojm 4erep-om i WR-matrix vona mozhe 100% znajty shlah',11);

Writeln;

{~pechenje sud`by)~}

Repeat


Date: 2015-12-24; view: 443


<== previous page | next page ==>
Procedure Neo_Final; | Textcolor(yellow); gotoxy(1,13);
doclecture.net - lectures - 2014-2019 year. Copyright infringement or personal data (0.003 sec.)