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 ...
Recherche dichotomique
 
 
Post new topic   Reply to topic    Forum révision Tunisie - Bac Tunisie Algorithmique et programmation , cours, devoir, exercice,edunet Forum Index -> Algorithmique & programmation -> Récursivité
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: Fri 19 Feb - 22:13 (2010)    Post subject: Recherche dichotomique Reply with quote

On vous donne une suite d'entiers triée dans l'ordre croissant. Ecrire un programme qui détermine le nombre le plus proche, dans cette suite, de chacune des valeurs d'une deuxième liste. S'il y a plusieurs possibilités, votre programme doit choisir la plus petite valeur.
En entrée vous lisez :
  • Le nombre N d'entiers de la suite.
  • Les entiers de la suite, séparés par des espaces.
  • Le nombre R d'entiers à rechercher.
  • Les entiers à rechercher, séparés par des espaces.

Exemple
  • Entrée :
    Code:

    10
    0 1 2 3 4 5 6 7 8 9
    2
    7 14
  • Code:
    Sortie :
    7 9


Correction :
Par : karimos
En Pascal :
Code:
program ClosestNumber;
var
Suite:array[1..100000] of integer;
Rech:array[1..1000] of integer;
Long_Suite,i:integer;
nbr_rech:integer;

Function DichotomicSearch(element,a,b:integer):integer;
var
mid:integer;
begin
Mid:=(a+b) div 2;
if (element<=Suite[Mid+1]) and (element>=Suite[Mid]) then
begin
   if (Suite[Mid+1]-element)<(element-Suite[Mid])
   then DichotomicSearch:=Suite[Mid+1]
        else DichotomicSearch:=Suite[Mid];
end
else
if (element<Suite[Mid]) then DichotomicSearch:=DichotomicSearch(element,a,Mid)
else DichotomicSearch:=DichotomicSearch(element,Mid+1,b);
end;



begin
readln(long_suite);
For i:=1 to long_Suite-1 do
   read(Suite[i]);
readln(Suite[Long_Suite]);
readln(nbr_rech);
For i:=1 to nbr_rech do
   read(Rech[i]);

For i:=1 to nbr_rech do
begin
        if rech[i]<=Suite[1] then write(Suite[1])
        else if rech[i]>=Suite[Long_Suite] then write(Suite[long_Suite])
        else
   write(DichotomicSearch(rech[i],1,Long_Suite));
        if i<>nbr_rech then write(' ');
end;
writeln;
end.


 
Revenir en haut
Publicité






Posted: Fri 19 Feb - 22:13 (2010)    Post subject: Publicité

PublicitéSupprimer les publicités ?
 
Revenir en haut
darine


Offline

Joined: 26 Nov 2008
Posts: 15
Féminin
Point(s): 45
Moyenne de points: 0

Posted: Mon 5 Apr - 19:40 (2010)    Post subject: Recherche dichotomique Reply with quote

MERCI POUR LE PARTAGE Smile)))

 
Revenir en haut
darine


Offline

Joined: 26 Nov 2008
Posts: 15
Féminin
Point(s): 45
Moyenne de points: 0

Posted: Mon 5 Apr - 19:53 (2010)    Post subject: Recherche dichotomique Reply with quote

Mais le programme n'est pas executable runtime error

 
Revenir en haut
ZeRa


Offline

Joined: 07 Apr 2010
Posts: 7
Point(s): 7
Moyenne de points: 0

Posted: Wed 14 Apr - 16:50 (2010)    Post subject: Recherche dichotomique Reply with quote

runtime error car la taille du tableau est trop grande , met 100 comme maximum et ça marchera.

 
Revenir en haut
soufien2010


Offline

Joined: 14 Jan 2010
Posts: 4
Point(s): 4
Moyenne de points: 0

Posted: Mon 8 Nov - 20:00 (2010)    Post subject: Recherche dichotomique Reply with quote

merci  ca marche  Very Happy Okay

 
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 -> Récursivité All times are GMT + 1 Hour
 
Page 1 of 1

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