asmodeus94

4slajdyNaStrone

Feb 6th, 2016
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 3.75 KB | None | 0 0
  1. program slajdyNumery;
  2. uses crt;
  3. var
  4. f,pNp : byte;
  5. odK, doK : integer;
  6. a, strNiep, strParz : integer;
  7. t : text;
  8. kolNC, kolPC, kolC : integer;
  9. kolN, kolP, kol : array [1..10000] of integer;
  10.  
  11. procedure wyswietlKolekcje(ktora : integer; liczba : integer);
  12. begin
  13.      for a := 1 to liczba do begin
  14.          case ktora of
  15.               1 : begin
  16.                    write(t, kolN[a]);
  17.               end;
  18.               2 : begin
  19.                    write(t, kolP[a]);
  20.               end;
  21.               3 : begin
  22.                    write(t, kol[a]);
  23.               end;
  24.           end;
  25.           if a <> liczba then write(t, ', ');
  26.      end;
  27. end;
  28.  
  29. begin clrscr;
  30.       f := 2;
  31.       REPEAT
  32.             if f = 0 then
  33.             begin
  34.                  clrscr;
  35.                  writeln('Podany przez ciebie przedzial slajdow jest nieprawidlowy');
  36.                  readkey;
  37.             end;
  38.             writeln('Podaj przedzial slajdow, jaki bedziesz chcial drukowac');
  39.             write('Od: ');
  40.             readln(odK);
  41.             write('Do: ');
  42.             readln(doK);
  43.             if (odK >= doK) OR (odK <= 0) OR (doK <= 0) then f := 0 ELSE f := 1;
  44.       UNTIL f = 1;
  45.       assign(t, 'strony.txt');
  46.       rewrite(t);
  47.       kolNC := 0;
  48.       kolPC := 0;
  49.       kolC := 0;
  50.       pNp := 0;
  51.       strNiep := 0;
  52.       strParz := 0;
  53.       for a := odK to doK do
  54.       begin
  55.           if pNp = 0 then
  56.           begin
  57.                strNiep := strNiep + 1;
  58.                if (a + 1 <= doK) then
  59.                begin
  60.                     kolNC := kolNC + 1;
  61.                     kolN[kolNC] := a + 1;
  62.                     kolC := kolC + 1;
  63.                     kol[kolC] := a + 1;
  64.                end;
  65.                kolNC := kolNC + 1;
  66.                kolN[kolNC] := a;
  67.                kolC := kolC + 1;
  68.                kol[kolC] := a;
  69.                if (a + 3 <= doK) then
  70.                begin
  71.                     kolNC := kolNC + 1;
  72.                     kolN[kolNC] := a + 3;
  73.                     kolC := kolC + 1;
  74.                     kol[kolC] := a + 3;
  75.                end;
  76.                if (a + 2 <= doK) then
  77.                begin
  78.                     kolNC := kolNC + 1;
  79.                     kolN[kolNC] := a + 2;
  80.                     kolC := kolC + 1;
  81.                     kol[kolC] := a + 2;
  82.                end;
  83.                pNp := 1;
  84.           end
  85.           ELSE
  86.           begin
  87.                strParz := strParz + 1;
  88.                if (a + 1 <= doK) then
  89.                begin
  90.                     kolPC := kolPC + 1;
  91.                     kolP[kolPC] := a + 1;
  92.                     kolC := kolC + 1;
  93.                     kol[kolC] := a + 1;
  94.                end;
  95.                kolPC := kolPC + 1;
  96.                kolP[kolPC] := a;
  97.                kolC := kolC + 1;
  98.                kol[kolC] := a;
  99.                if (a + 3 <= doK) then
  100.                begin
  101.                     kolPC := kolPC + 1;
  102.                     kolP[kolPC] := a + 3;
  103.                     kolC := kolC + 1;
  104.                     kol[kolC] := a + 3;
  105.                end;
  106.                if (a + 2 <= doK) then
  107.                begin
  108.                     kolPC := kolPC + 1;
  109.                     kolP[kolPC] := a + 2;
  110.                     kolC := kolC + 1;
  111.                     kol[kolC] := a + 2;
  112.                end;
  113.                pNp := 0;
  114.           end;
  115.           a := a + 3;
  116.       end;
  117.       write(t, 'Nieparzyste: ');
  118.       wyswietlKolekcje(1, kolNC);
  119.       write(t, ' - ล‚ฤ…cznie stron ', strNiep);
  120.       if(kolPC > 0) then
  121.       begin
  122.          writeln(t, '');
  123.          write(t, 'Parzyste: ');
  124.          wyswietlKolekcje(2, kolPC);
  125.          writeln(t, ' - ล‚ฤ…cznie stron ', strParz);
  126.          write(t, 'Razem: ');
  127.          wyswietlKolekcje(3, kolC);
  128.       end;
  129.       close(t);
  130. end.
Advertisement
Add Comment
Please, Sign In to add comment