hg S’enregistrer Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie forum informatique Tunisie

Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie  forum informatique Tunisie Index du Forum

hg Bac Tunisie Algorithmique et programmation TIC réseaux php javascript sql access activités programmation c
hg
FAQ FAQ Rechercher Rechercher Membres Membres Groupes Groupes Profil Profil Se connecter pour vérifier ses messages privés Messages Privés Connexion Connexion


 Forum de l'excellence et l'excellence en innovation 
Pour participer à notre Forum, 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
 
 
Poster un nouveau sujet   Répondre au sujet    Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie forum informatique Tunisie Index du Forum -> Algorithmique & programmation -> Récursivité
hg Sujet précédent :: Sujet suivant   hd
Auteur Message
KARIMOS
Administrateur

Hors ligne

Inscrit le: 02 Nov 2008
Messages: 1 710
Masculin
Point(s): 5 479
Moyenne de points: 0

Posté le: Ven 19 Fév - 22:13 (2010)    Sujet du message: Recherche dichotomique Répondre en citant

PublicitéSupprimer les publicités ?
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
darine


Hors ligne

Inscrit le: 26 Nov 2008
Messages: 15
Féminin
Point(s): 45
Moyenne de points: 0

Posté le: Lun 5 Avr - 19:40 (2010)    Sujet du message: Recherche dichotomique Répondre en citant

MERCI POUR LE PARTAGE Smile)))

 
Revenir en haut
darine


Hors ligne

Inscrit le: 26 Nov 2008
Messages: 15
Féminin
Point(s): 45
Moyenne de points: 0

Posté le: Lun 5 Avr - 19:53 (2010)    Sujet du message: Recherche dichotomique Répondre en citant

Mais le programme n'est pas executable runtime error

 
Revenir en haut
ZeRa


Hors ligne

Inscrit le: 07 Avr 2010
Messages: 8
Point(s): 8
Moyenne de points: 0

Posté le: Mer 14 Avr - 16:50 (2010)    Sujet du message: Recherche dichotomique Répondre en citant

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

 
Revenir en haut
soufien2010


Hors ligne

Inscrit le: 14 Jan 2010
Messages: 5
Point(s): 5
Moyenne de points: 0

Posté le: Lun 8 Nov - 20:00 (2010)    Sujet du message: Recherche dichotomique Répondre en citant

merci  ca marche  Very Happy Okay

 
Revenir en haut
Contenu Sponsorisé






Posté le: Aujourd’hui à 23:18 (2016)    Sujet du message: Recherche dichotomique

 
Revenir en haut
Montrer les messages depuis:   
bg bd
Poster un nouveau sujet   Répondre au sujet    Bac Tunisie Algorithmique et programmation : BAC INFORMATIQUE En Tunisie forum informatique Tunisie Index du Forum -> Algorithmique & programmation -> Récursivité Toutes les heures sont au format GMT + 1 Heure
 
Page 1 sur 1

 
Sauter vers:  
Index | créer forum gratuit | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation