asmodeus94

kilkaProgramowNaRaz

Mar 25th, 2013
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.84 KB | None | 0 0
  1. program kilkaNaRaz;
  2. uses crt;
  3. var
  4. list : array [1..10] of string;
  5. obrob : array [1..10,1..30] of string;
  6. c,c1,c2,dKom : byte;
  7. lP : integer;
  8. wklep : string;
  9. t : text;
  10. procedure czysc(podY : byte;strDl : string;dlB : byte);
  11. var dl : byte;
  12. begin
  13. if strDl='' then dl:=dlB ELSE dl:=length(strDl)+10;
  14. for c:=1 to dl do begin
  15.     gotoxy(c,podY);write(' ');
  16. end;
  17. gotoxy(1,podY);
  18. end;
  19. begin clrscr;
  20. lP:=2;
  21. writeln('Ile programow chcesz uruchomic jednoczesnie?');
  22. wklep:='Podaj ilosc (2-10): ';
  23. write(wklep);
  24. REPEAT
  25.       if(2>lP)OR(10<lP) then begin
  26.          textbackground(blue);wklep:='Nieprawidlowa wartosc! Wpisz liczbe naturalna z przedzialu <2;10>: ';
  27.          write(wklep);textbackground(0);delay(3000);
  28.       end;
  29.       readln(lP);czysc(2,wklep,0);
  30. UNTIL (lP>1)AND(lP<11);
  31. czysc(2,'',60);
  32. for c1:=3 to 24 do begin
  33.     for c:=1 to 80 do begin
  34.         gotoxy(c,c1);write(' ');
  35.     end;
  36. end;
  37. gotoxy(1,1);writeln('Ile programow chcesz uruchomic jednoczesnie?');write('Chcesz odpalic ',lP);if lP<5 then write(' aplikacje ') ELSE write(' aplikacji ');writeln('jednoczenie.');
  38. delay(2000);writeln('Teraz masz mozliwosc wpisania recznie sciezek do ',lP,' aplikacji.');delay(3000);
  39. textcolor(green);writeln('lub metoda przytrzymaj-upusc przeciagajac kolejno aplikacje na to okno.');delay(4000);
  40. textcolor(red);textbackground(white);writeln('W obydwu przypadkach "wklepane" sciezki prosze potwierdzic klawiszem ENTER.');textbackground(0);textcolor(7);
  41. for c:=1 to lP do begin
  42.     textbackground(blue);write('Program ',c,'.:');textbackground(0);write(' ');readln(wklep);
  43.     list[c]:=wklep;
  44. end;
  45. for c:=1 to lP do begin
  46. dKom:=1;
  47. c1:=1;
  48.         while(c1<=length(list[c])) do begin
  49.         if list[c][c1]='\' then dKom:=dKom+1 ELSE
  50.             if list[c][c1]<>'"' then obrob[c,dKom]:=obrob[c,dKom]+list[c][c1];
  51.             c1:=c1+1;
  52.         end;
  53. end;
  54. for c:=1 to lP do begin
  55.     for c1:=1 to 30 do begin
  56.         if obrob[c,c1]<>'' then begin
  57.            for c2:=1 to length(obrob[c,c1]) do begin
  58.                if obrob[c,c1][c2]=' ' then begin
  59.                   wklep:=obrob[c,c1];obrob[c,c1]:='"';wklep:=wklep+'"';obrob[c,c1]:=obrob[c,c1]+wklep;break;
  60.                end;
  61.            end;
  62.         end;
  63.     end;
  64. end;
  65. for c:=1 to lP do begin
  66. list[c]:='';
  67.     for c1:=1 to 30 do begin
  68.         if obrob[c,c1]<>'' then begin
  69.            list[c]:=list[c]+obrob[c,c1];
  70.            if obrob[c,c1+1]<>'' then list[c]:=list[c]+'\';
  71.         end;
  72.     end;
  73. end;
  74. clrscr;
  75. writeln('Jak ma nazywac sie plik wykonywalny?');
  76. write('Podaj TYLKO nazwe: ');readln(wklep);
  77. wklep:=wklep+'.bat';
  78. assign(t,wklep);rewrite(t);
  79. for c:=1 to lP do begin
  80.     write(t,'start ',list[c]);
  81.     if c<>lP then writeln(t,'');
  82. end;
  83. close(t);
  84. textbackground(blue);write('Plik zostal utworzony w tym samym katalogu, w ktorym program zostal wywolany!');textbackground(0);delay(4000);
  85. end.
Advertisement
Add Comment
Please, Sign In to add comment