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

C# Discussion :

Extraction chaine et calcul


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 189
    Par défaut Extraction chaine et calcul
    Bonjour ,

    Voilà je souhaiterai un coup de main car je bloque un peu, je dois faire un petit programme pour trouver le bit parité que j'ai déjà fais sans chaine mais cette fois-ci avec chaine , j'ai déjà fais le test en convertissant ma chaine en entier mais du coup je me retrouve bloquer pour récupérer les caracteres donc si quelqu'un pourrait me donner une piste pour me sortir de ce soucis sa serait vraiment sympa!

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Pour tester le nième bit d'un entier V (n=0 pour le bit de poids faible)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bool bit_n_of _V = (V >> n) & 1 == 1 ;

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 189
    Par défaut
    Citation Envoyé par Graffito Voir le message
    Pour tester le nième bit d'un entier V (n=0 pour le bit de poids faible)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bool bit_n_of _V = (V >> n) & 1 == 1 ;
    Merci pour ta réponse Graffito , entre temps j'ai essayé faire et sa fonctionne mais quand je regarde en pas à pas détaillé et en mettant un espion pour voir les valeurs tout est correct sauf ma variable "som" qui m'affiche des valeurs bizarre style 49 etc... au fur et à mesure des tours et pourtant quand je modifie ma chaine binaire pour tester si il me trouve bien le bit de parité à chaque fois , le programme me donne la bonne réponse donc je mets mon code ci-dessous pour savoir si c'est correct ou non afin de savoir si c'est un coup chance qui me trouve la bonne réponse ou si c'est bien correct

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
                string chaine = "0000011";
                int longueur = chaine.Length;
                int indice = longueur;
                int suite;
                int v;
                int som = 0;
                int bitParite;
     
     
                try
                {
                    int conversion = Int32.Parse(chaine);
     
     
                }
                catch (FormatException e)
                {
                    Console.WriteLine(e.Message);
                }
     
     
                for (v = longueur; v > 0; v--)
                {
                    indice-- ;
                    suite = chaine[indice];
                    som += suite;
     
                }
     
                bitParite = som % 2;
                Console.WriteLine("le bit de Parité est : " + bitParite);
                Console.ReadLine();
            }
        }
    }
    merci d'avance pour vos réponses

    PS : Désolé si c'est mal présenté ou même codé , je débute donc je sais pas forcément tous le temps pour l'instant si c'est bien encore

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 189
    Par défaut
    Je viens de re regarder et ma solution plus haute n'est pas bonne enfaite c'est un coup chance car aprés avoir fait d'autre test , j'arrive à avoir un résultat correct pour ma somme y me reste pu qu'a trouver la solution...

  5. #5
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Le code fonctionne car l'instruction "suite = chaine[indice]" donne comme valeurs de "suite" le code ascii des caractères "0" ou "1" (soit 48 ou 49).

    Ainsi, "somme modulo 2" donnera au final le bon résultat.

    Mais, on serait un peu plus rigoureux avec l'instruction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    suite = Chaine[i]=='1 ' ? 1 : 0 ;

Discussions similaires

  1. [RegEx] Extraction chaine ou debut d'adresse mail
    Par cerede2000 dans le forum Langage
    Réponses: 11
    Dernier message: 29/05/2007, 22h40
  2. [RegEx] Extraction chaine de caractere
    Par dafalri dans le forum Langage
    Réponses: 6
    Dernier message: 17/03/2006, 16h05
  3. [String] Extraction chaine de caractères
    Par beZor dans le forum Langage
    Réponses: 9
    Dernier message: 27/02/2006, 14h46
  4. Réponses: 5
    Dernier message: 22/09/2005, 10h34
  5. Extraction chaine
    Par ptitsoleil87 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 10/02/2005, 10h53

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