hg Register Forum révision Tunisie - Bac Tunisie Algorithmique et programmation , cours, devoir, exercice,edunet

Forum révision Tunisie - Bac Tunisie Algorithmique et programmation , cours, devoir, exercice,edunet Forum Index

hg Revision tunisie scolaire Bac Tunisie Algorithmique et programmation TIC réseaux php javascript sql access activités programmation c
hg
FAQ FAQ Search Search Memberlist Memberlist Usergroups Usergroups Profile Profile Log in to check your private messages Private Messages Log in Log in


 Forum de l'excellence et l'excellence en innovation 
Pour participer à notre Forum révision tunisie , vous devez
 inscrire sur notre forum a partir d'ici
   NB :
Les membres ''zéro messages'' seront supprimés automatiquement après un nombre de jours donné !!!!
             
   
 
  
 
forum d'aide informatique : internet, réseau, programmation informatique ...
Somme de blocs de nombres d'un tableau
 
 
Post new topic   Reply to topic    Forum révision Tunisie - Bac Tunisie Algorithmique et programmation , cours, devoir, exercice,edunet Forum Index -> Algorithmique & programmation -> (¯`·._.·[Devoirs et séries']·._.·´¯)
hg Previous topic :: Next topic   hd
Author Message
KARIMOS
Administrateur

Offline

Joined: 02 Nov 2008
Posts: 711
Masculin
Point(s): 4,448
Moyenne de points: 0

Posted: Sun 3 Oct - 08:30 (2010)    Post subject: Somme de blocs de nombres d'un tableau Reply with quote

ENONCE

Ecrire un programme qui, à partir d'un tableau T formé de N entiers strictement postifs, distincts deux à deux un nouveau tableau TS, de la manière suivante:

TS[1] = T[1]+...+T[K]
TS[2] = T[2]+...+T[K+1]
.
.
.

tel que K est un entiers positif vérifiant 1 < K < N.

EXEMPLE

N=6; K=4
T = [2,3,1,2,4,7]
TS = [(2+3+1+2), (3+1+2+4), (1+2+4+7)]
Soit TS = [8, 9, 14]



SOLUTION
program som_bloc;

uses wincrt;

type
  TAB = array[1..100] of integer;


procedure SAISIE(var N,K: integer);
begin
  repeat
    write('N = ');
    readln(N);
  until (N in [4..99]);

  repeat
    write('K = ');
    readln(K);
  until (K<N) and (K>1);
end;


function Existe(x:integer; T:TAB; n: integer):boolean;
var
  i: integer;
begin

  i := 1;

  While ((i<=n) and (T[i]<>X)) do
      i := i + 1;

  if ((n=0) or (T[i]<>X)) then
      Existe := false
  else
      Existe := True;

end;


procedure REMPLIR(var T:TAB; N:integer);
var
  i,X: integer;
begin

  for i:=1 to N do
  begin
    repeat
      write('T[',i,']=');
      readln(X);
    until (Existe(X,T,i-1) = false);
    T[i] := X;
  end;

end;


procedure AFFICHER(T:TAB;N:integer);
var
  i:integer;
begin

  for i:=1 to N do
      writeln('T[',i,']=',T[i]);

end;

Procedure Construire(var TS:TAB; T:TAB; N,K: integer);
begin

  for i:=1 to N-K+1 do

      .....

end;


{Programme principal}

VAR

  T,TS: TAB;

  N,K: integer;

BEGIN


  SAISIE(N,K);

  REMPLIR(T,N);

  CONSTRUIRE(TS,T,N,K);

  AFFICHER(TS,(N-K+1));

END.


 
Revenir en haut
Publicité






Posted: Sun 3 Oct - 08:30 (2010)    Post subject: Publicité

PublicitéSupprimer les publicités ?
 
Revenir en haut
Display posts from previous:   
bg bd
Post new topic   Reply to topic    Forum révision Tunisie - Bac Tunisie Algorithmique et programmation , cours, devoir, exercice,edunet Forum Index -> Algorithmique & programmation -> (¯`·._.·[Devoirs et séries']·._.·´¯) All times are GMT + 1 Hour
 
Page 1 of 1

 
Jump to:  
Index | Make forum | Free support forum | Free forums directory | Report a violation | Conditions générales d'utilisation