menu prev next

LES TABLEAUX DANS LES ENREGISTREMENTS
Les champs d'un enregistrement peuvent aussi être des tableaux. Soit l'exemple suivant d'un enregistrement month, dont l'élément name est un tableau.


	type  monthname = packed array[1..4] of char;
	      month = RECORD
	                 days : integer;
	                 name : monthname
	              END;
	var  this_month : month;
	     this_month.days    := 31;  this_month.name[0] := 'J';
	     this_month.name[1] := 'a'; this_month.name[2] := 'n';
	     this_month.name := 'Feb ';


EXERCICES

	program  RECORD_TEST (output);
	type     time = RECORD
	                    hours, minutes, seconds : integer
	                END;

	procedure timeupdate ( var newtime : time );
	begin
	     newtime.seconds := newtime.seconds + 1;
	     if  newtime.seconds = 60  then
	     begin
	        newtime.seconds := 0;
	        newtime.minutes := newtime.minutes + 1;
	        if  newtime.minutes = 60  then
	        begin
	            newtime.minutes := 0;
	            newtime.hours := newtime.hours + 1;
	            if  newtime.hours = 24  then
	                newtime.hours := 0
	         end
	     end
	end;

	var  test_times : array [1..3] of time;
	     loop : integer;
	begin
	     test_times[1].hours   := 11;
	     test_times[1].minutes := 59;
	     test_times[1].seconds := 59;
	     test_times[2].hours   := 12;
	     test_times[2].minutes :=  0;
	     test_times[2].seconds :=  0;
	     test_times[3].hours   :=  1;
	     test_times[3].minutes := 29;
	     test_times[3].seconds := 59;
	     for loop := 1 to 3 do
	     begin
	        writeln('L''heure est ',test_times[loop].hours,':',
	                 test_times[loop].minutes,':',test_times[loop].seconds);
	        timeupdate(test_times[loop]);
	        write('Une seconde plus tard, il est ');
	        writeln(test_times[loop].hour,s':',test_times[loop].minutes,
	                ':',test_times[loop].seconds)
	     end
	end.

Cliquez ici pour la réponse


Copyright B Brown/P Henry/CIT, 1988-1995. Tous droits réservés.
Copyright UCL/INGI, 1995. Tous droits réservés
URL: http://candix1.fsa.ucl.ac.be/langages/Pascal/tutoriel/pas054.htm
menu prev next