JeuxOnLineForumsPlusConnectés : 631 (sites) | 1243 (forums)Créer un compte
Forums divers
Le Bar de la Taverne
Les forums JOL > Forums divers > Le Bar de la Taverne > Les 65536 premiers nombres hexadécimaux RSS
   
Répondre
Partager Outils Rechercher
Mélancolie
Invité
 
Question

[Message effacé à la demande de l'auteur]

[Message effacé à la demande de l'auteur]
Lien direct vers le message - Vieux
Xeen
Invité
 
Je ne peux pas t'aider hélas, pourquoi n'irais tu pas sur un forum de magazine de science, ça doit exister non ?
Mardil n'est pas là ce soir ?
Lien direct vers le message - Vieux
Avatar de Galin
Galin
Roi
 
Avatar de Galin
 
tu as un compilateur?
pour quele langage
Lien direct vers le message - Vieux
Avatar de Galin
Galin
Roi
 
Avatar de Galin
 
au pire voici un ptit programme en c si ça peut t'aider
Code PHP:

void ajouter_un
(charc)
{
if((*
c>='0' && *c<'9') || (*c>='A' && *c<'F'))
    (*
c)++;
if(*
c=='9')
    (*
c)='A';
if(*
c=='F')
    (*
c)='0';
}


static 
void main(int argcchar argv[])
{
     
char nombre[4]={0,0,0,0,'\\0'};
     
int i,j,k,l;


     for(
i=0;i<16;i++)
    {
         for(
j=0;j<16;i++)
        {
             for(
k=0;k<16;i++)
            {
                for(
l=0;l<16;i++)
               {
                    
fprintf(stdout,"%c%s",'#',nombre);
                    
ajouter_un(nombre+3);
               }
               
ajouter_un(nombre+3);
               
ajouter_un(nombre+2);
           }
           
ajouter_un(nombre+3);
           
ajouter_un(nombre+2);
           
ajouter_un(nombre+1);
       }
       
ajouter_un(nombre+3);
       
ajouter_un(nombre+2);
       
ajouter_un(nombre+1);
       
ajouter_un(nombre);
    }


ensuite tu fait une redirection dans un fichier
hexa.exe > fichier.txt
Et si tu comprend rien a ce que j'ai ecris j'essayerais de le faire moi meme.
Mais j'imagine que tu doit comprendre, emacs doit pas te servir pour du traitement de texte .
Lien direct vers le message - Vieux
Avatar de nahp
nahp
Roi
 
Avatar de nahp
 
printf() ne prend pas de flux en premier paramètre, au contraire de fprintf()
de plus "nombre" n'est pas une chaine de caractères puisqu'il lui manque le caractère nul

ensuite, pourquoi faire 4 boucles imbriquées et des conversions que sait faire printf() ?
Code PHP:
unsigned int i ;
printf"%X\n" ) ;
for( 
i++ )
  
printf"%X\n" ) ; 
Lien direct vers le message - Vieux
Avatar de Galin
Galin
Roi
 
Avatar de Galin
 
lol faut que je m'achete un cerveau . J'avais envie de faire compliquer la
Lien direct vers le message - Vieux
Avatar de Lango
Lango
 
Avatar de Lango
 
VIM est capable de te générer ça.
En effet il possède la fonction «incrémenter», mappée sur CTRL-A
si la chaine sous le curseur est de la forme 0x000, il la considère comme un entier hexadécimal.

Donc :
i0x000[esc] pour insérer l'hexadécimal 000
qayyp[Ctrl-A]q pour faire une macro «dupliquer la ligne courante et l'incrémenter»
65334@a pour exécuter la macro enregistrée 65334 fois

et voilà

PS : merci d'avoir fait un thread me permettant de prouver la supériorité de VIM sur les autres éditeurs (je ne crois pas qu;il y ait une fonction équivalente à CTRL-A sous emacs, en tous cas si il en existe une elle est récente.)
Lien direct vers le message - Vieux
Avatar de Lango
Lango
 
Avatar de Lango
 
Citation:
Provient du message de nahp
printf() ne prend pas de flux en premier paramètre, au contraire de fprintf()
de plus "nombre" n'est pas une chaine de caractères puisqu'il lui manque le caractère nul

ensuite, pourquoi faire 4 boucles imbriquées et des conversions que sait faire printf() ?
Code PHP:
unsigned int i ;
printf"%X\n" ) ;
for( 
i++ )
  
printf"%X\n" ) ; 
petite optimisation :
Code PHP:
int i;
for ( 
0ii++ )
  
printf"%X\n") ; 
J'ai viré le unsigned ; je déconseille très fortement l'utilisation de unsigned en c à ceux qui ne maitrisent pas ce langage sur le bout des doigts, pour des histoires de conversion automatique dans le cas de comparaisons qui donnent des résultats déroutants pour le programmeur occasionnel.
ceux qui ne sont pas convaincus tenteront de comprendre pourquoi le programme
Code PHP:
include<stdio.h>

int main() {
   
unsigned int i=10;
   if (
i<-1)
      
printf("inférieur\n");
   else
      
printf("supérieur\n");

écrit "inférieur".
Lien direct vers le message - Vieux
Avatar de Galin
Galin
Roi
 
Avatar de Galin
 
lango c'est tout a fait possible de faire ça sous emacs, pour peu qu'on si connaisse un peu en lisp. =
Lien direct vers le message - Vieux
Avatar de Lango
Lango
 
Avatar de Lango
 
Citation:
Provient du message de Galin
lango c'est tout a fait possible de faire ça sous emacs, pour peu qu'on si connaisse un peu en lisp. =
en programmant soi-même une fonction pour emacs...
compare à la séquence de 21 touches que j'ai donnée sous vim... je crois qu'il n'y a pas photo
Lien direct vers le message - Vieux
Mélancolie
Invité
 
[Message effacé à la demande de l'auteur]
[Message effacé à la demande de l'auteur]
Lien direct vers le message - Vieux
Avatar de Kathandro
Kathandro
Bagnard
 
Avatar de Kathandro
 
Juste comme ça: je crois que les int vont de -32768 à +32767, par conséquent, ça me parait difficile d'utiliser un int, m'enfin c'est que mon avis si tu veux les 65536 premiers décimaux en hexadécimal.
Lien direct vers le message - Vieux
Avatar de Galin
Galin
Roi
 
Avatar de Galin
 
un int normal sur un pc c'est sur 4 octet donc 4 294 967 296 nombre codable
Lien direct vers le message - Vieux
Avatar de Lango
Lango
 
Avatar de Lango
 
Citation:
Provient du message de Lumina
VIM j'ai essayé, on ne peut pas taper de texte au clavier ! Il faut tout faire par copier-coller, c'est l'éditeur de texte le plus inutile au monde !
pardon ?
que tu aies pas réussi à l'utiliser, je conçois, il est loin d'être intuitif (il n'est pas fait pour être intuitif mais pour être puissant)
mais ne dis pas qu'il est inutile...

Si tu n'as pas réussi à taper du texte c'est que tu n'as pas vu qu'il y a 2 modes : édition et insertion. En mode édition on agit sur le texte avec des commandes, et en mode édition on insère le texte que l'on tape.

Ça peut paraitre bizarre voire compliqué au début, mais on s'y fait vite et au final on peut taper du texte beaucoup plus vite que dans des éditeurs plus intuitifs.
Lien direct vers le message - Vieux
Avatar de Foxy
Foxy
Alpha & Oméga
 
Avatar de Foxy
 
Citation:
Provient du message de Kathandro
Juste comme ça: je crois que les int vont de -32768 à +32767, par conséquent, ça me parait difficile d'utiliser un int, m'enfin c'est que mon avis si tu veux les 65536 premiers décimaux en hexadécimal.
C'est un short signé qui va de -32768 à +32767, un int (signé) c'est sur 32 bits (#80000000 -> #7FFFFFFF).
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forums divers > Le Bar de la Taverne > Les 65536 premiers nombres hexadécimaux
   

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés

Outils Rechercher
Rechercher:

Recherche avancée

Thème visuel : Fuseau horaire GMT +1. Il est actuellement 11h52.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite