A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
| — | 
                    inf-prog-fszi:fej_vagy_iras [2017/06/19 09:47] (aktuális) beistvan létrehozva  | 
            ||
|---|---|---|---|
| Sor 1: | Sor 1: | ||
| + | ====== Fej vagy írás ====== | ||
| + | |||
| + | Megoldás fő adattároló tömb használata nélkül, ahogy az eredeti feladat kéri. | ||
| + | |||
| + | <code pascal fejvagyiras_tomb_nelkul.pas> | ||
| + | program fejvagyiras_tomb_nelkul; | ||
| + | const m=1000; | ||
| + | var | ||
| + |   egymasutan, | ||
| + |   maxindex, | ||
| + |   i, | ||
| + | a:array [1..4*m] of char; | ||
| + |   tipp, | ||
| + | relativ: real; | ||
| + | f:text; | ||
| + | begin | ||
| + | randomize; | ||
| + |   writeln(' | ||
| + |   dobas: | ||
| + | if dobas=1 then | ||
| + | begin | ||
| + |     egydobas: | ||
| + | writeln(egydobas) | ||
| + | end | ||
| + | else | ||
| + | begin | ||
| + |     egydobas: | ||
| + |     writeln(egydobas); | ||
| + | end; | ||
| + |   writeln(' | ||
| + |   writeln(' | ||
| + |   dobott: | ||
| + |   writeln(' | ||
| + | if upcase(tipp)=dobott then | ||
| + |     writeln(' | ||
| + | else | ||
| + |     writeln(' | ||
| + |   writeln(' | ||
| + |   Assign(f,' | ||
| + | reset(f); | ||
| + | i:=0; | ||
| + | while not eof(f) do | ||
| + | begin | ||
| + | inc(i); | ||
| + |     readln(f, | ||
| + | end; | ||
| + | n:=i; | ||
| + |   writeln(n,' | ||
| + |   writeln(' | ||
| + | fej:=0; | ||
| + | reset(f); | ||
| + | while not eof(f) do | ||
| + | begin | ||
| + |     readln(f, | ||
| + |     if tipp=' | ||
| + | end; | ||
| + |   relativ: | ||
| + | |||
| + |   writeln(' | ||
| + |   writeln(' | ||
| + |   egymasutan: | ||
| + | reset(f); | ||
| + |   readln(f, | ||
| + |   readln(f, | ||
| + |   readln(f, | ||
| + |   readln(f, | ||
| + |   if (d1=' | ||
| + | //i:=1; | ||
| + |   //if ((T[i]=' | ||
| + | for i:=1 to n-3 do | ||
| + | begin | ||
| + |     d1:=d2; d2:=d3; d3:=d4; readln(f, | ||
| + |     if (d1=' | ||
| + |       inc(egymasutan); | ||
| + | end; | ||
| + | //i:=n-2; | ||
| + |   if (d2=' | ||
| + |   writeln(' | ||
| + |   writeln(' | ||
| + | max:=0; | ||
| + |   maxindex: | ||
| + | reset(f); | ||
| + | i:=0; | ||
| + | while not eof(f) do | ||
| + | begin | ||
| + |     readln(f, | ||
| + | i:=i+1; | ||
| + |     if tipp = ' | ||
| + | begin | ||
| + | db:=1; | ||
| + |       readln(f, | ||
| + |       while not eof(f) and (tipp=' | ||
| + | begin | ||
| + | inc(db); | ||
| + |         readln(f, | ||
| + | end; | ||
| + | if db>max then | ||
| + | begin | ||
| + | max:=db; | ||
| + |         maxindex: | ||
| + | end; | ||
| + | i:=i+db; | ||
| + | end; | ||
| + | end; | ||
| + |   writeln(' | ||
| + |   writeln(' | ||
| + | for i:=1 to 4*m do | ||
| + | begin | ||
| + | if random(2)+1 > 1 | ||
| + | then | ||
| + |       a[i]: | ||
| + | else | ||
| + |       a[i]: | ||
| + |     write(a[i]); | ||
| + |     if i mod 4 = 0 then write(' | ||
| + | end; | ||
| + | |||
| + | //4*i+1 i=0..m-1 | ||
| + | ffff:=0; | ||
| + | fffi:=0; | ||
| + | for i:=0 to m-1 do | ||
| + | begin | ||
| + | j:=4*i+1; | ||
| + |     if ((a[j]=' | ||
| + | inc(ffff); | ||
| + |     if ((a[j]=' | ||
| + | inc(fffi); | ||
| + | end; | ||
| + | writeln; | ||
| + |   writeln(' | ||
| + | readln; | ||
| + | end. | ||
| + | |||
| + | </ | ||
| + | |||
| + | Megoldás tömbök használatával. | ||
| + | |||
| + | <code pascal fejvagyiras.pas> | ||
| + | program fejvagyiras; | ||
| + | const m=1000; | ||
| + | var | ||
| + |   egymasutan, | ||
| + |   maxindex, | ||
| + |   i, | ||
| + | T:array [1..5000] of char; | ||
| + | a:array [1..4*m] of char; | ||
| + |   tipp, | ||
| + | relativ: real; | ||
| + | f:text; | ||
| + | begin | ||
| + | randomize; | ||
| + |   writeln(' | ||
| + |   dobas: | ||
| + | if dobas=1 then | ||
| + | begin | ||
| + |     egydobas: | ||
| + | writeln(egydobas) | ||
| + | end | ||
| + | else | ||
| + | if dobas=2 then | ||
| + | begin | ||
| + |       egydobas: | ||
| + |       writeln(egydobas); | ||
| + | end; | ||
| + | writeln(' | ||
| + | writeln(' | ||
| + | dobott: | ||
| + | writeln(' | ||
| + | if tipp=dobott then writeln(' | ||
| + | writeln(' | ||
| + | Assign(f,' | ||
| + | reset(f); | ||
| + | i:=0; | ||
| + | while not eof(f) do | ||
| + | begin | ||
| + | inc(i); | ||
| + |   readln(f, | ||
| + | end; | ||
| + | n:=i; | ||
| + | writeln(n,' | ||
| + | writeln(' | ||
| + | for i:=1 to n do | ||
| + | if T[i]=' | ||
| + | |||
| + | relativ: | ||
| + | |||
| + | writeln(' | ||
| + | writeln(' | ||
| + | i:=1; | ||
| + | if ((T[i]=' | ||
| + | for i:=1 to n-3 do | ||
| + |   if ((T[i]=' | ||
| + |     inc(egymasutan); | ||
| + | i:=n-2; | ||
| + | if ((T[i]=' | ||
| + | |||
| + | writeln(' | ||
| + | writeln(' | ||
| + | max:=0; | ||
| + | maxindex: | ||
| + | //n:=50; | ||
| + | for i:=1 to n-1 do | ||
| + | begin | ||
| + |   if T[i] = ' | ||
| + | begin | ||
| + | db:=1; | ||
| + | j:=i+1; | ||
| + |     while (j<=n) and (T[j]=' | ||
| + | begin | ||
| + | inc(db); | ||
| + | inc(j); | ||
| + | end; | ||
| + | if db>max then | ||
| + | begin | ||
| + | max:=db; | ||
| + |       maxindex: | ||
| + | end; | ||
| + | end; | ||
| + | end; | ||
| + | writeln(' | ||
| + | writeln(' | ||
| + | for i:=1 to 4*m do | ||
| + | begin | ||
| + | if random > 0.5 | ||
| + | then | ||
| + |       a[i]: | ||
| + | else | ||
| + |       a[i]: | ||
| + |     | ||
| + |     if i mod 4 = 0 then write(' | ||
| + | end; | ||
| + | |||
| + | //4*i+1 i=0..m-1 | ||
| + | for i:=0 to m-1 do | ||
| + | begin | ||
| + | j:=4*i+1; | ||
| + |   if ((a[j]=' | ||
| + | inc(ffff); | ||
| + |   if ((a[j]=' | ||
| + | inc(fffi); | ||
| + | end; | ||
| + | writeln; | ||
| + | writeln(' | ||
| + | readln; | ||
| + | end. | ||
| + | </ | ||
| + | |||