IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Écrire un algorithme (en langage naturel)


Sujet :

Algorithmes et structures de données

  1. #1
    Candidat au Club
    Femme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2018
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Écrire un algorithme (en langage naturel)
    Bonjour, je débute en algorithme, je dois apprendre à écrire un algorithme en langage naturel et j'aimerais avoir votre avis :

    Écrire l'algorithme qui a pour entrée un nombre compris entre 0 et 255, affiche ce nombre en base 2.

    Exemple : 59 s'écrit 0011 1011 en base 2 ( binaire )
    Voici ce que j'ai écris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    D <- nombre entré
    R -> Resultat  en bit
     
    Tant que D prend une valeur comprit (entre 0 et 255)
        la variable D est divisé par 2
        R récupère le résultat   de D/2
        si R est  Pair alors afficher 1
        Sinon afficher 0
    Fin
    Est-ce que cela vous semble logique, ou il y a des choses à corriger et à améliorer ?

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 396
    Points
    9 396
    Par défaut
    Essayons avec 59 :
    D=59, on le divise par 2, ça donne 9.5, qu'on compte comme 29, c'est ça ? R vaut 29, R est impair donc j'affiche 0. etc ...
    Et si on commence avec D=58, on voit qu''en divisant par 2, on retombe sur le même 29 ... et donc 59 et 58 vont conduire au même résultat.

    Je pense que ce n'est pas bon.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Candidat au Club
    Femme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2018
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Dans ce cas comment est-ce que tu l'écrirais toi ?

  4. #4
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 396
    Points
    9 396
    Par défaut
    je pense que c'est plus utile pour toi si tu continues de chercher par toi-même. Sans compter le plaisir de trouver soi-même.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  5. #5
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 421
    Points : 5 820
    Points
    5 820
    Par défaut
    salut

    plutot qu'une division si tu utilisé une multiplication

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    00000000 = 0
    00000001 = 1
    00000010 = 2
    00000011 = 3
    00000100 = 4
    00000101 = 5
    00000110 = 6 
    00000111 = 7 
    ...
    il faut que tu cherche la valeur 2 a la puissance n la plus proche

    Soit 59 à convertir en binaire.
    La plus grande puissance inférieure à 59 est 2^5 = 32. Il reste 59 - 32 = 27.
    La plus grande puissance inférieure à 27 est 2^4 = 16. Il reste 27 - 16 = 11.
    La plus grande puissance inférieure à 11 est 2^3 = 8. Il reste 11 - 8 = 3 qui est égal à 2^1 + 2^0.
    Bref, 59 = 2^5+2^4+ 2^3 + 2^1 + 2^0.

    Le nombre en binaire aura huit chiffres, soit la quantité possible de puissances de 2 qui composent ce nombre.
    Le chiffre 1 correspond à la présence d’une puissance de 2 et,
    0 à l’absence d’une telle puissance.
    De gauche à droite, les trois premiers chiffres sont 1 (puissances 5,4,3) ; le quatrième est 0 (absence de la puissance 2) ;
    les deux derniers sont 1 (puissances 1 et 0).
    Bref, 59 = 11 1011.

    une autre méthode existe

    Une autre façon de convertir en binaire un nombre écrit dans le système décimal s’appuie sur la théorie des restes.

    Soit 59 à convertir en binaire.
    On divise 59 par 2 ;
    le quotient est 29 et le reste est 1.
    Comme le tableau l’illustre, on continue à diviser successivement chacun des quotients par 2 et on note le reste.
    On forme le nombre binaire correspondant avec les restes lus de droite à gauche.
    Dividendes 59 29 14 7 3 1
    Quotients 29 14 7 3 1 0
    Restes 1 1 0 1 1 1

    => 59 = 111 011.
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

Discussions similaires

  1. Une réseau de neurones pour un agent de dialogue en langage naturel
    Par Invité dans le forum Méthodes prédictives
    Réponses: 23
    Dernier message: 19/10/2013, 23h49
  2. Où écrire un algorithme (notepad, word...)
    Par monique anciaux dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 13/09/2010, 11h38
  3. [Langage naturel] Opérateur -->
    Par C_C dans le forum Prolog
    Réponses: 6
    Dernier message: 03/06/2006, 13h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo