type PPrvek = ^TPrvek; TPrvek = record x: integer; Dalsi: PPrvek end; var zac, p, n: PPrvek; begin new( zac ); zac^.x := 10; new( zac^.Dalsi ); zac^.Dalsi^.x := 20; zac^.Dalsi^.Dalsi := NIL; new( n ); n^.x := 5; n^.Dalsi := zac; zac := n; writeln; { vytisknout seznam: } p := zac; while p<>NIL do begin write( p^.x,' ' ); p := p^.Dalsi end end. var f: text; slovo: string; i: integer; const MAX = 100; var slova: array[1..MAX] of string; vyskyty: array[1..MAX] of integer; pocet: integer; procedure PridejDoSeznamu( slovo: string ); var i: integer; begin { jestli uz tam neni: } for i:=1 to pocet do if slova[ i ] = slovo then begin vyskyty[ i ] := vyskyty[ i ] + 1; exit; end; if pocet=MAX then begin writeln( '!@#$%^^&**()' ); exit end; pocet := pocet+1; slova [ pocet ] := slovo; vyskyty[ pocet ] := 1 end; function JePismeno( c: char ): boolean; begin JePismeno := ( (c>='a') and (c<='z') ) or ( (c>='A') and (c<='Z') ) end; function PrectiSlovo( var slovo: string ): boolean; var znak: char; begin znak := ' '; while not eof(f) and not JePismeno( znak ) do read( f, znak ); slovo := ''; while not eof(f) and JePismeno( znak ) do begin slovo := slovo + znak; read( f, znak ); end; PrectiSlovo := slovo<>'' end; const VYMAZANE = -777; function NajdiVypisAZnicNejcastejsiSlovo: boolean; var i, imax: integer; begin imax := 1; for i := 2 to pocet do if vyskyty[ i ] > vyskyty[ imax ] then imax := i; if vyskyty[ imax ] = VYMAZANE then begin NajdiVypisAZnicNejcastejsiSlovo := FALSE; exit; end; NajdiVypisAZnicNejcastejsiSlovo := TRUE; writeln( vyskyty[ imax ]:5, ' : ', slova[ imax ] ); vyskyty[ imax ] := VYMAZANE end; begin assign( f, 'pokus.pas' ); assign( f, 'wu.log' ); reset( f ); while PrectiSlovo( slovo ) do PridejDoSeznamu( slovo ); close( f ); for i:=1 to 20 do if NajdiVypisAZnicNejcastejsiSlovo=FALSE then break; end. begin PridejDoSeznamu( 'a' ); PridejDoSeznamu( 'a' ); PridejDoSeznamu( 'a' ); PridejDoSeznamu( 'bbbb' ); PridejDoSeznamu( 'a' ); PridejDoSeznamu( 'a' ); PridejDoSeznamu( 'bbbb' ); PridejDoSeznamu( 'bbbb' ); PridejDoSeznamu( 'bbbb' ); assign( f, 'pokus.pas' ); reset( f ); while PrectiSlovo( slovo ) do writeln( '--->',slovo,'<-----' ); end. PridejDoSeznamu( slovo ); close( f ); for i:=1 to 20 do if NajdiVypisAZnicNejcastejsiSlovo=FALSE then break; end. var _ : integer; pole: array[1..10] of integer; pocet: integer; x,i: integer; begin _ := 7; pocet := 0; read( x ); while x<>-1 do begin pocet := pocet + 1; pole[ pocet ] := x; read( x ) end; for i:=1 to pocet do write( pole[i]:3 ); writeln; for i:=1 to pocet do write( pole[i]:3 ); writeln; end.