Comment mettre un INT a l'infini en C?

Résolu
Jrpicot -  
 Utilisateur anonyme -
Bonjour, j'aimerais savoir comment mettre un INT a l'infini en language C. ceci me servirai pour faire une calculatrice sous unix.

Je vous remercie de votre aide.

7 réponses

jcxz
 
la taille de l'entier n'est limitée que par les routines qui le manipulent. Ce n'est donc ni une histoire de processeur ni de mémoire. À titre d'exemple, on peut citer le pascal ucsd ou les integer pouvaient occuper jusqu'à 64 octets
2.
1
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106
 
Merci pour l'info. :)
0
Utilisateur anonyme
 
oui mais la variable est stocké dans la mémoire ? (non ?)
0
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193 > Utilisateur anonyme
 
oui, mais tu peux très bien réserver autant d'octets mémoire que tu veux.
c'est jsute que le processeur ne gère pas des nombres infiniments grands, mais tu peux toujours tricher, surtout en codant en C, pour gèrer, comme c'était dit plus haut, avec des char par exemple... tu ré écris tes fonctions de division, multiplication, etc, et tout est faisable...
les mecs qui ont lancé des ordinateurs à calculer pi, ils ont pas passé leur temps à créer un ordinateurs à processeur 1024bits ;) ils ont pris leur temps à potasser un algo leur permettant d'utiliser les nombres ta la taille qu'ils voulaient
1
Utilisateur anonyme > Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention  
 
ok
0
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106 > Utilisateur anonyme
 
Le stockage, de nos jours, n'est pas vraiment un problème. :D
0
Pilow Messages postés 400 Date d'inscription   Statut Membre Dernière intervention   71
 
Un int ne peut pas être infini.
D'après mes souvenirs ça va de -2^31 à +2^31-1.

Tu peux utiliser des char[] pour réaliser ta bistro
0
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193
 
en utilisant un unsigned in, il peut même aller jusqu'à +2^32-1 ;)
0
Pilow Messages postés 400 Date d'inscription   Statut Membre Dernière intervention   71 > Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention  
 
Voui mais il demandait un int et des nombres infinis :P

Et un unsigned int c'est pas exactement un int et c'est pas infini :P
0
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106 > Pilow Messages postés 400 Date d'inscription   Statut Membre Dernière intervention  
 
Ca dépend du type d'entier que tu déclares (sur 32 ou 64bits).
Qu'il soit signed ou pas, c'est une sorte de nombre infini dans la mesure où c'est le plus grand nombre.
Et comme je l'ai déjà dit, l'infini n'existe pas vraiment en C.
0
Pilow Messages postés 400 Date d'inscription   Statut Membre Dernière intervention   71 > biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention  
 
Ben pour réaliser une calculatrice qui peut gérer des nombres "infinis" tu peux manier de plus grands nombre avec des char[], ils seront sous forme char[] mais tu peux les manier de manière a stocker tes valeurs comme si tu avais des nombres.

Et bien sur il y aura toujours une limite quand même .. mais sur des nombres assez grands ... ^^
1
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193 > Pilow Messages postés 400 Date d'inscription   Statut Membre Dernière intervention  
 
les calculs seront plus longs, et il devrai reprogrammer pas mal de choses lui même, mais c'est vrai.

bon, puis un nombre de 1000 caractères de longs, c'est quoi pour nos ordinateurs actuels ? à peine un milionième de ce qu'ils peuvent faire !
0
Jrpicot
 
Merci. Je viens de réfléchir est j'ai penser la même chose ^^
0
Utilisateur anonyme
 
impossible avec int !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106
 
Un int est limité par le type de processeur.
L'infini en informatique n'existe pas.
0
Utilisateur anonyme
 
il n'est pas limité par le processeur plutôt par la mémoire non ?
0
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106
 
Il faudrait que je vérifie. :P
0
nikoladu49 Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   22
 
Pour une calculatrice, je te conseille plutot un type decimal. Au moins l'utilisateur sera un peu moins limité.
Bonne chance.
0