Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {https://www.kiteb.net/education/informatique/bac/bacinfo2020/bacalgo2020scinfo.pdf}
- Program exercice4;
- Uses Wincrt;
- Type
- mat = Array [1..50,1..50] Of Integer;
- Var
- t: mat;
- n: Integer;
- f: Text;
- Procedure remplir_t (Var n:Integer;Var t:mat);
- Var
- i,j: Integer;
- Begin
- Repeat
- Writeln ('Saisir N: ');
- Readln (n);
- Until n In [5..50];
- For i:=1 To n Do
- For j:=1 To n Do
- t[i,j] := Random(100);
- End;
- Function max (t:mat;i,n:Integer): String;
- Var
- c,m,l: String;
- j,vmax,nc: Integer;
- Begin
- vmax := t[i,1];
- nc := 1;
- For j:=1 To n Do
- If (t[i,j]>vmax) Then
- Begin
- vmax := t[i,j];
- nc := j;
- End;
- Str (nc,c);
- Str (i,l);
- Str (vmax,m);
- max := 'Vmax = '+m+', NL = '+l+' et NC = '+c;
- End;
- Procedure remplir_f (Var f:Text;t:mat;n:Integer);
- Var
- i: Integer;
- Begin
- Rewrite (f);
- For i:=1 To n Do
- Begin
- Writeln (f,max(t,i,n));
- Writeln (max(t,i,n));
- End;
- Close (f);
- End;
- function freq (var f:text;n:integer):integer;
- Var
- s,x,e:integer;
- ch:string;
- Begin
- reset (f);
- s:=0;
- while not (eof(f)) Do
- Begin
- readln (f,ch);
- val (copy(ch,pos('NC',ch)+5,Length(ch)-(pos('NC',ch)+5)+1),x,e);
- if n=x Then
- s:=s+1;
- end;
- close (f);
- freq:=s;
- end;
- Procedure traitement (Var f:Text;n:Integer);
- Var
- i,x,e,max,sh:integer;
- ch:string;
- t:array [1..50] of integer;
- Begin
- reset (f);
- for i:=1 to n Do
- Begin
- readln (f,ch);
- val (copy(ch,pos('NC',ch)+5,Length(ch)-(pos('NC',ch)+5)+1),x,e);
- t[i]:=x;
- end;
- close (f);
- max:=freq(f,t[1]);
- sh:=t[1];
- for i:=2 to n Do
- if (freq(f,t[i])>=max) Then
- begin
- max:=freq(f,t[i]);
- sh:=t[i];
- end;
- writeln ('La colonne dominante est ',sh);
- End;
- Begin
- remplir_t (n,t);
- Assign (f,'c:\bac\maxiiiiiiiii.txt');
- remplir_f (f,t,n);
- traitement (f,n);
- End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement