Forum INFOMATH

Forum de mathématiques et d'informatique


Vous cherchez quelqu'un qui vous aide dans ...


votre projet de fin d'études (PFE)?

votre projet de Mastère?

la synthèse de vos travaux de recherche?

la rédaction d'un article scientifique (conférence, revue...) ?

la préparation d'exposés professionnels, ou de soutenance...

Cliquer ici

  • Poster un nouveau sujet
  • Répondre au sujet

Problème: Plus grande somme de chiffres d'un nombre + tableaux

Partager

nabiL
Admin
Admin

Masculin
Nombre de messages: 2634
Localisation: Tunisie
Points: 1989
Réputation: 81
Date d'inscription: 19/03/2007

Feuille de personnage
Capacité linguistique:
999/1000  (999/1000)

Problème: Plus grande somme de chiffres d''un nombre + tableaux

Message par nabiL le Ven 15 Mai - 22:39

Ci-dessus un programme qui :

- saisit un tableau T de n entiers chacun composé au moins de 3 chiffres,
- construit un tableau U tel que U[i] = Somme_des_chiffres_de(T[i])
- détermine puis affiche le nombre T[max] qui a la plus grande somme de chiffres.

Code:

program prob1;
uses wincrt;

type
tab=array[1..20]of integer;

procedure saisie(var n:integer;var t:tab);
var
  i :integer;
  ch: string;
begin
  repeat
    writeln ('entrer n');
    readln (n);
  until (n in [1..20] );

  for i:=1 to n do
  repeat
    writeln('T[',i,'] = ');
    readln(t[i] ) ;
    str(t[i],ch);
  until(length(ch)>=3);
end;

function somme(x:integer):integer;
var
 nbr,e,i,d:integer;
 ch:string;
begin
 str(x,ch);
 nbr:=0;
 for i:=1 to length(ch) do
 begin
 val(ch[i],d,e);
 nbr:=nbr+d;
 end;
 somme:=nbr;
 end;

procedure construire(t:tab;n:integer;var u:tab);
var
  i:integer;
begin
 for i:=1to n do
  u[i]:=somme(t[i]);
end;


function posmax(u:tab;n:integer):integer;
var
  i,pos:integer;
begin
  pos:=1;
  for i:=2 to n do
      if (u[i]>u[pos]) then
        pos := i;

  posmax := pos;
end;

var
  n,pos: integer;
  T: TAB;
  U: TAB;

begin

  saisie(n,T);

  construire(T,n,U);

  pos := posmax(U,n);

  writeln('Le nombre qui la plus grande somme est: ',T[pos],' à la position: ',pos);
 
end.


_________________
Nabil - tunis
خير الناس أنفعهم للناس
  • Poster un nouveau sujet
  • Répondre au sujet

La date/heure actuelle est Sam 20 Mar - 13:49