begin process at 2012 02 13 02:20:55
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > UTILISATION DE GRANDS ENTIERS EN C++ BUILDER

UTILISATION DE GRANDS ENTIERS EN C++ BUILDER


 Information sur la source

Note :
Aucune note
Catégorie :Astuces Classé sous :grands, entiers, randriano, cryptographie Niveau :Initié Date de création :19/04/2007 Date de mise à jour :30/05/2007 08:45:26 Vu / téléchargé :5 144 / 385

Auteur : randriano

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note


 Description

Les entiers prédéfinis du langage C++ ont une valeur limitée: d'où la notion de GRANDS ENTIERS. Le type "int" en C++ Builder est 32 bits donc ne représente au maximum que 4294967296 et "int64" que 18446744073709551616.
Les grands entiers peuvent contenir des chiffres jusqu'à la limite de la mémoire de votre ordinateur.
Le nombre est donc stocké dans une chaîne de caractère: char *.
Imaginez qu'on alloue un espace de 1000 octets pour ce char * alors l'entier peut contenir donc 1000 chiffres.
Incroyable non!!! Où est int et int64 dans tout ça???


 Conclusion

Les grands entiers sont très utiles en CRYPTOGRAPHIE comme RSA, etc. Si on utilise des types int, le cryptogramme est facilement cassable mais avec des grands entiers, le cassage se fera en une siècle et plus même avec un processus de 10GHz.

Ce code englobe alors une classe GrandEntier qui représente ce nouveau type.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

30 mai 2007 08:45:27 :
Vision

 Sources du même auteur

Source avec Zip PETIT CODE DE LEÇON D'ANGLAIS
Source avec Zip Source avec une capture CHAT UTILISANT 2 SERVEURS
Source avec Zip TRANSLATION HOMOTHETIE ROTATION
Source avec Zip PINGER DES HOTES D'UNE BD MYSQL + GRAPHIQUE
Source avec Zip CUBIC SPLINE

 Sources de la même categorie

Source avec Zip SCHEDULER RR FIFO par yvesB87
Source avec Zip ALGORITHMES RÉCURSIFS VS ALGORITHMES ITÉRATIFS par yvesB87
Source avec Zip Source avec une capture C++ FORMAT D'IMAGE AVEC QT par pop70
Source avec une capture EXEMPLE DE POINTEURS DE FONCTION par pop70
Source avec Zip Source avec une capture [C++] CLASS REGISTER par Miwik

 Sources en rapport avec celle ci

PROJET DE CRYPTOGRAPHIE: RSA À JEU REDUIT D'INSTRUCTION par samatarahmed
Source avec Zip Source avec une capture CRYPTOSYSTÈME ELGAMAL LIBRAIRIE GMP par louelh95
Source avec Zip Source avec une capture OP4 UN INTERPRÉTEUR POUR ENTIERS DE TRÈS GRANDE TAILLE par pgl10
Source avec Zip Source avec une capture DÉCOMPOSITION EN FACTEURS PREMIERS AVEC GMP par pgl10
Source avec Zip CRYPTOGRAPHIE PAR SUBSTITUTION POLYALPHABETIQUE (RANDRIANO) par randriano

Commentaires et avis

Commentaire de acx01b le 19/04/2007 20:35:51


salut il y a des trucs super bizzares dans ton code!

notament ton .h:

class GrandEntier{
  int nb_chiffre(char *s);
  void inverser(char s[200]);
  void zero(char s[200]);
  void echanger(char *str1,char *str2);
  int plus_grand(char *n1,char *n2);
public:
  char * nombre;
  GrandEntier();
  void addition(char *n1,char *n2);
  void sous(char *n1,char *n2);
  void multi(char *n1,char *n2);
};

Commentaire de gamemonde le 20/04/2007 00:14:22

bien au lieu de fonction comme additionner utilise les surcharge d'operateur beaucoup plus bau

bonne continuation

Commentaire de Cyberboy2054 le 20/04/2007 19:32:07

J'ai un bout de code dans ce genre qui traine sur mon disque dur depuis un moment, que je n'ai jamais eu le courage de terminer.
En gros on est plus ou moins au meme point, a la différence que je gere 2-3 trucs de plus que toi:le signe des grands l'operation egalite, inferieur a, la fonction puissance, (que des trucs pas vraiment dur a rajouter en fait), mais surtout le signe des nombres, ce qui demande de rereflechir un peut les algorithmes (surtout pour l'addition en fait)
Faudrait aussi rajouter la division et l'operateur modulo, et eventuellement des nombres de taille un peu plus infinie que 1000 (taille définie au run time via allocations dynamiques) comme tu semble le faire ici, stocker dans une classe et utiliser la surcharge d'operateurs, mais cela releve de l'accessoire, mais meme si pas grand monde utilise des nombre de plus de 1000 chiffres, pour de la cryptographie je suis sur qu'on peut aller jusque la...

Commentaire de randriano le 22/04/2007 16:03:34

Il n'y a pas de trucs bizarres dans mon code.
Pour rendre le code encore plus beau:
je travaille actuellement sur l'utilisatin des opérateurs +,-,* au lieu de fonctions comme additionner(a1,a2,a3).

Je précise que je n'ai pas visionné les codes similaires postés sur ce site lorsque

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

manipulaton de trés grands entiers [ par Orkblutt ] Salut,j'aimerai implementer une classe qui me permettrai de manipuler (+,-, /,*,%) des grands nombres (Nb>32bits) mais je ne sais pas du tout comme Urgent...classe de manipulation de grands entiers [ par Orkblutt ] Salut,j'aimerai implementer une classe qui me permettrai de manipuler (+,-, /,*,%) des grands nombres (Nb>32bits) mais je ne sais pas du tout comme Urgent...classe de manipulation de grands entiers bigint [ par marichette ] Salut,j'aimerai implementer une classe qui me permettrai de manipuler (+,-, /,*,%) des grands nombres de taille infini mais je ne sais pas du tout com grands nombres [ par freeskieuse ] Bonjour,je suis debutante en C++, j'ai un projet à faire, mais je ne sais pas du tout comment gèrer...SUJET:Pour la création d'entiers arbitrairement Aruthmétique sur grands entiers ??? [ par Cygnus ] J'ai à effectuer des opérations (+,-,'/,*) sur des grands nombres entiers (positifs et négatifs), tout en utilisant les fonctions membre de la classe Division de deux tableaux d'entiers [ par BenHur ] Bonjour, j'ai deux tableaux d'entiers dont chaque indice contient un nombre de 0 à 9. Je dois faire des opérations mathématiques sur chacun de ces ind class pour manipuler des grands nombres [ par Orkblutt ] Salut,j'aimerai implementer une classe qui me permettrai de manipuler (+,-, /,*,%) des grands nombres (Nb>32bits) mais je ne sais pas du tout comm Tri indirect [ par Darksnakes ] Bonjour ,voila j'ai un probleme sur l'ecriture en c d'un tri indirect.ce tri consites à declarer un tableau d'entiers de même taille que le tableau M erreur de compilation [ par richard97 ] Bonjour  J'ai un projet à faire en C++Voici l'énoncé:SUJET:Pour la création d'entiers arbitrairement grands, l'utilisateur pourra entrer une chaîne (d lit au clavier des entiers positifs et calcul leur moyenne [ par themessenger ] bonjour on vient de commencer la programmation c ...et j'ai petit souci avec mon code .J'arrive pas à calculer la moyenne !!! quand j'execute il m'aff


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,246 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales