LOVEGUN

Devoir de controle 1 (#1)

Jan 5th, 2021
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.44 KB | None | 0 0
  1. Program dc1;
  2. Uses Wincrt;
  3. Var
  4.   f: Text;
  5.   m,n: Longint;
  6.  
  7. Procedure creation (Var f:Text);
  8. Begin
  9.   Assign (f,'C:\bac\narcissique.txt');
  10. End;
  11.  
  12. Function puis (entier,facteur:Longint): Longint;
  13. Var
  14.   j,i: Longint;
  15. Begin
  16.   j := 1;
  17.   For i:=1 To facteur Do
  18.     j := j*entier;
  19.   puis := j;
  20. End;
  21.  
  22. procedure narcissique (n:Integer;var somme:integer;var chaine:string);
  23. Var
  24. ch,long:string;
  25. x,e:integer;
  26. i:longint;
  27. Begin
  28.   Str (n,ch);
  29.   somme := 0;
  30.     chaine:='';
  31.     str (length(ch),long);
  32.   For i:=1 To Length(ch) Do
  33.     Begin
  34.       Val (ch[i],x,e);
  35.             chaine:=chaine+ch[i]+'^'+long+'+';
  36.       somme := somme+puis(x,Length(ch));
  37.     End;
  38.         delete (chaine,length(chaine),1);
  39. End;
  40.  
  41. Procedure saisie (Var m,n:Longint);
  42. Begin
  43.   Repeat
  44.     Writeln ('Saisir m');
  45.     Readln (m);
  46.     Writeln ('Saisir n');
  47.     Readln (n);
  48.   Until (100<m) And (m<n) And (n<1000000);
  49. End;
  50.  
  51. Procedure traitement (Var f:Text;m,n:Longint);
  52. Var
  53.   s: Longint;
  54.   ch: String;
  55.   i: Longint;
  56. Begin
  57.   Rewrite (f);
  58.   For i:=m To n Do
  59.             Begin
  60.             narcissique(i,s,ch) ;
  61.       If i=s Then
  62.         Writeln (f,i,'=',ch);
  63.                 end;
  64.   Close (f);
  65. End;
  66.  
  67. Procedure affiche (Var f:Text);
  68. Var
  69.   ch: String;
  70. Begin
  71.   Reset (f);
  72.   If Eof(f) Then
  73.     Writeln ('Le fichier est vide ');
  74.   While Not (Eof(f)) Do
  75.     Begin
  76.       Readln (f,ch);
  77.       Writeln (ch);
  78.     End;
  79. End;
  80. Begin
  81.   creation (f);
  82.   saisie (m,n);
  83.   traitement (f,m,n);
  84.   affiche (f);
  85. End.
Advertisement
Add Comment
Please, Sign In to add comment