.


:




:

































 

 

 

 





 

 

 

 

15 -

____________________ ____________..

( ...

)

____________ 2016 .

 

, 2016

 

 

, , ( ), () .

 


( )

 

.

1.  
1.1.  
1.2.  
1.3.  
2.  
2.1. ,  
2.2.  
3.  
3.1.  
3.2.  
3.3.  
4.  
1.  
2.  
3.  
4.  

 


1.

 

1.1.

 

. () , . , , ,

 

1.2.

 

( ) .

sved ( sved.dat ):

(),

(),

( ),

( )

:

()

 

1.3.

 

" " (. 1.1), :

( ),

(),

(),

( )

.

 

 

    9800.00
 

 

:


2.

 

2.1. ,

 

. 2.1 , .

 

 

 

. 2.1

 

. 2.2 , .

 

 

. 2.2

K_RABOTA, :

- zapros (VAR god: integer; VAR f: Boolean), ;

- proverka (god_zap: string; VAR f: Boolean), ;

- obrab (god: integer; VAR rez: mas; VAR n: integer), sved , ;

- sort (VAR rez: mas; n: integer), ;

- molod (rez: mas; n: integer), ;

- vuvod (rez: mas; n: integer; fammol: string), .

 

2.2.

 

. 2.3. 2.7 . (, ) . 2.1. . (. 2.1.).

2.1.

sved
n, , i
f-rez
god_z

 

3.

 

3.1.

 

() - ( 7.0.)

( ) 2.1.

, 2.2.

 

3.2.

( -, 7.0) 1.

 


 

 

 


. 2.3

 


. 2.4

 

 

 
 

 


. 2.5

 

 

..

. 2.6

. 2.7

 

3.3.

 

PC . , .

, , 1.2. , (. 1.2).

 

4.

 

( ) , 2 ( 3), :

4) 1975

5) 2005

6) 1990

7)

8) .

 

( ) ( 4), .

 

 

1

 

PROGRAM K_RABOTA;

{

15- .. 40}

 

 

TYPE zap=record

fam: string[20];

otdel: string[30];

god: integer;

oklad: real;

end;

mas = array [1..20] of zap;

 

VAR

 

sved: file of zap;

X: zap;

god_z, kol: integer;

fam_rez: mas;

fam_mol: string [20];

f_z: boolean;

 


PROCEDURE proverka

(VAR g: integer; god_zap: string; VAR f: Boolean);

{ }

Var code: integer;

BEGIN

f:=false;

Val (god_zap, g, Code);

if Code=0 then

if ((g>=1940) and (g<=2000)) then f:=true;

end;

 

 

PROCEDURE zapros

(VAR god: integer; VAR f: Boolean);

{ }

VAR god_zap: string;

BEGIN

writeln(' ');

readln (god_zap);

proverka (god, god_zap, f);

end;

 


PROCEDURE obrab

(god: integer; VAR rez: mas; VAR n: integer);

{ }

BEGIN

Assign(sved,'sved.dat');

reset (sved);

 

n:=0;

while not EOF (sved) do

begin

read(sved,x);

if (god<=x.god) then begin

n:=n+1;

rez[n]:=x;

 

end;

end;

close(sved);

END;

 


PROCEDURE SORT (VAR rez: mas; n: integer);

{ }

 

VAR

i,k:integer;

c:zap;

 

BEGIN

for i:=1 to n-1 do

for k:=i+1 to n do

if rez[i].fam<rez[k].fam then begin

c:=rez[i];

rez[i]:= rez[k];

rez[k]:=c;

end;

END;

 


FUNCTION MOLOD (rez: mas; n: integer): string;

{ }

Var maxgod: integer;

k,i: integer;

 

BEGIN

maxgod:=rez[1].god;

k:=1;

for i:=2 to n do

if rez[i].god>= maxgod then begin

maxgod:=rez[i].god;

k:=i;

end;

molod:=rez[k].fam;

END;

 

PROCEDURE VUVOD (rez: mas; n: integer; fammol: string);

{ }

VAR

i: integer;

 

BEGIN

writeln;

writeln(' ');

writeln;

writeln('------------------------------------');

writeln('!N!!- !!');

writeln('------------------------------------');

 

for i:=1 to n do

writeln('!',i:2,'!',rez[i].fam:20,'!',

rez[i].otdel:30,'!', rez[i].oklad:10:2,'!');

writeln('------------------------------------');

writeln;

writeln (' :', fammol:20);

END;

 

{ }

BEGIN

zapros (god_z, f_z);

{ }

if f_z=false then

writeln (' 1940,

2000, ')

Else

BEGIN

obrab (god_z,fam_rez, kol);

{ }

if kol=0 then writeln

(' ')

Else

Begin

if kol>1 then SORT (fam_rez, kol);

{ }

fam_mol:=molod (fam_rez, kol);

{ }

{ }

VUVOD(fam_rez, kol,fam_mol);

{ }

end;

ND;

END.

 


2

 

 

   
   
   
   
   
   
   
   
   

3

program file_newtype;

USES CRT;

zap=record

fam: string[20];

otdel: string[30];

god: integer;

oklad: real;

end;

var

sved:file of zap;

X:zap;

k:integer;

begin

Assign(sved,'sved.dat');

rewrite (sved);

k:=0;

WRITELN (' Enter');

WRITELN (' *');

WHILE NOT (READKEY='*') DO

begin

writeln(' ');

readln(x.fam);

writeln(' ');

readln(x.otdel);

writeln(' ');

readln(x.god);

writeln(' ');

readln(x.oklad);

K:=k+1;

write(sved,x);

WRITELN (' Enter');

WRITELN (' *');

end;

writeln(' :',K:2); writeln;

reset(sved);

writeln(' '); writeln;

while not EOF (sved) do begin

read(sved,x);

writeln(x.fam:22,x.otdel:32,x.god:5,x.oklad:10:2);

end;

close(sved); end.


4

 

 

1. : 1975

 

:

 

 

  19900.00
  20000.00
  14500.00
  18000.00




:


: 2017-01-21; !; : 443 |


:

:

- , 20 40 . - .
==> ...

1643 - | 1594 -


© 2015-2024 lektsii.org - -

: 0.102 .