bonjour,
je voudrais saisir un ensemble d'identifiant par exemple {1,5,8,10} et ensuite générer la representation en tableau de bits c'est à dire,
dans un tableau de 11 bits par exemple le bit num 1 aura la valeur 1,le bit 5,8 et 10 aussi
on aura 01000100101
Publicité
Posté le 25-12-2010 à 17:10:18
regexp42
Eplucheur de RFC.
Posté le 25-12-2010 à 17:18:05
Ca s'appelle un int.
marooh
Posté le 25-12-2010 à 18:15:43
re,
c'est flou commen reponse
regexp42
Eplucheur de RFC.
Posté le 25-12-2010 à 21:29:27
Tu veux un "tableau de bits", ça s'appelle un int.
Pour mettre les bits 1, 5, 8 et 10 à 1 il te suffit de faire :
Message édité par regexp42 le 27-12-2010 à 20:00:20
marooh
Posté le 27-12-2010 à 22:06:48
merciiiiii infiniment!!
marooh
Posté le 29-12-2010 à 16:32:10
re,
merci infiniment pour la reponse mais maintenant j'ai une autre question à vous poser:
si je veux que les bits qui prennent 1 soit choisis par l'utilisateur comment pourrai-je modifier unsigned int pour satisfaire cette condition?dois-je poser une variable x qui prendra chaque valeur entrée par l'utilisateur??
re,
merci infiniment pour la reponse mais maintenant j'ai une autre question à vous poser:
si je veux que les bits qui prennent 1 soit choisis par l'utilisateur comment pourrai-je modifier unsigned int pour satisfaire cette condition?dois-je poser une variable x qui prendra chaque valeur entrée par l'utilisateur??
Ben si tu sais lire les entrées de l'utilisateur il te suffit de faire un truc du style (en pseudo code) :
Code :
unsignedint i = 0;
uinsigned int n;
while ([l'user choisit un bit]) {
n = [bit choisi par l'utilisateur];
i |= (1 << n);
}
marooh
Posté le 29-12-2010 à 17:19:31
re,
j'ai écrit ceci mais ça accepte juste l'ensemble
Code :
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
int main()
{int a;
unsignedint i = 0;
unsignedint n;
printf("veuillez entrer l'ensemble d'identifiant a chercher\n\n" );
re,
j'ai écrit ceci mais ça accepte juste l'ensemble
Comment ça "juste l'ensemble" ?
Quand je dis "while l'user choisit un bit" c'est du pseudo code hein, ça veut dire genre "tant que le gars veut setter un bit", ça veut pas dire "while (scanf())".
marooh
Posté le 29-12-2010 à 18:23:34
oui,j'ai bien compris,dans mon code j'ai mis while(scanf()) mais ça ne marche pas
---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
mirou989
Posté le 06-01-2011 à 09:53:11
bjr,
j 'ai ecrit un code mais ca ne marche pas kom il fo ,je c pa c koi le probleme exactement.
je veux afficher un tableau de bits sachant ke l'operateur va saisir un ensemble d'identifiants:voila mon code
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
int main()
{int a;
unsigned int i = 0;
unsigned int n;
unsigned int bit;
uint32_t mask ; printf("veuillez entrer l'ensemble d'identifiant a chercher\n\n" );
while (scanf("1.2%d",&a))
{
n = a;
i|= (1 << n);
}
Quelques remarques:
- Évite le langage SMS, c'est illisible
- Mets des balises [code] autour de ton code, c'est illisible aussi
- Tu dis que ça ne marche pas: qu'est-ce qui ne marche pas? (en d'autres termes quel est le résultat attendu et le résultat observé)
- Au lieu d'attendre, fais des essais, tu trouveras surement par toi même
On ne peut pas trop t'aider en l'état.
---------------
sheep++
Ramssis
Posté le 08-01-2011 à 15:18:15
je veux saisir une suite d'ensemble d'identifiants pa exemple {1,5,10} {2,3,6}et {4,3,2,5} quelqu'un m'aide svp
Message édité par Ramssis le 08-01-2011 à 19:11:43