[language c] Recherche d'une valeur dans un tableau

Discussion dans 'Programmation' créé par Nietzsche, 16 Décembre 2009.

  1. Nietzsche

    Nietzsche Visiteur

    Inscrit:
    4 Juillet 2005
    Messages:
    1584
    J'aime reçus:
    6
    Localité:
    SYBA
    Rechercher dans un tableau d'entiers u une valeur x entrée au clavier. Afficher la position de x si elle se trouve dans le tableau, sinon afficher un message correspondant. La valeur pos qui est utilisée pour mémoriser la position de la valeur dans le tableau, aura la valeur -1 aussi longtemps que x n'a pas été trouvée.

    Voila ce que j'ai fais


    Voila ce qu'il m'affiche
    [​IMG]
     
  2. anasamati

    anasamati Accro

    Inscrit:
    28 Août 2007
    Messages:
    4105
    J'aime reçus:
    109
    Localité:
    maroc
    tu ne te poses pas de questions prkoi il te donne ce resultat!!!!!
    Tu as mal fais la boucle FOR specialement la IF. c là ou tu as le probleme. essaie de le verifier etape par etape sur un papier et tu te rendras compte de l'erreur.
     
  3. khdidij86

    khdidij86 Visiteur

    Inscrit:
    3 Août 2007
    Messages:
    12
    J'aime reçus:
    1
    Localité:
    Rabat
    Re : [language c] Recherche d'une valeur dans un tableau

    je crois que ma reponse est venue tard mais ça pourra aider d'autres personnes:

    Pour bien organiser ton code, c mieux de commencer par remplir ton tableau et ensuite demander la valeur recherchée
    et pour la boucle,elle n'est pas correcte,dans ce cas une boucle while va etre mieux:

    #include<stdio.h>
    #include<conio.h>

    main(){

    int u[50],i,n,pos,x;

    printf("entrez la dim du tab :");
    scanf("%d",&n);

    for(i=0;i<n;i++){
    printf("u[%d]=",i);
    scanf("%d",&u);
    }
    printf("entrez la valeur recherchee :");
    scanf("%d",&x);

    /*recherche*/
    pos=-1;
    i=0;

    //on boucle tant que la valeur n'est pas encore trouvée

    while(i<n && u!=x)
    { i++; }
    //à la sortie de la boucle on verifie:
    //si la valeur est trouvée:
    if (u==x);
    {
    pos=i;
    printf("la valeur %d se trouve a la position %d",x,pos);
    }
    //si on est arrivé à la fin du tableau sans rien trouver:
    else
    {
    printf("la valeur ne se trouve pas dans le tableau" );
    }

    getch();
    }

    j'espere ke ma reponse te sera utile
     
  4. ziko30

    ziko30 Citoyen

    Inscrit:
    26 Mai 2006
    Messages:
    3091
    J'aime reçus:
    13
    Euh tle probleme c'est dans les if que tu as mis dans la boucle avec des grandes accolades..
     

Partager cette page

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de Cookies pour vous proposer des publicités ciblées ainsi que pour nos statistiques de fréquentation.