Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » [BASIC] Calcul avec de grands nombres
Fabcvlr Hors ligne Membre Points: 2251 Défis: 41 Message

[BASIC] Calcul avec de grands nombres

Posté le 27/10/2016 14:09

Depuis hier je me suis lancé dans la réalisation d'un programme de calcul (multiplication, factorielle...) qui peut effectuer des calculs avec des nombres supérieures à 12 chiffres. J'utilise pour cela les chaines de caractères qui peuvent stocker 255 caractères dans mes souvenirs. De quoi afficher des résultats sympas !


Nemhardy Hors ligne Grand maître des Traits d'Esprit Points: 1238 Défis: 54 Message

Citer : Posté le 27/10/2016 15:40 | #


Si je ne m'abuse il y avait un défi portant sur du calcul exact avec des chaînes de caractères, c'est peut être un bon point de départ (comme premier objectif à atteindre quoi ) ! Après, niveau vitesse j'ai pas vraiment d'idée de ce que ça peut donner un tel système implémenté avec les chaînes de Casio mais ça peut être sympa effectivement !
Drak Hors ligne Rédacteur Points: 1925 Défis: 40 Message

Citer : Posté le 27/10/2016 17:00 | #


Ohhh, mais c'est pas idiot, tout ça ! La difficulté d'une telle méthode serait peut-être de transposer une variable dans une chaine, mais avec le Var2Str, ça fonctionne !
Eon the Dragon : version 1.2
Let's have a look!
Marre de ces RPGs qui t'imposent des classes, des compétences et des sorts ? Crée tes propres capacités sur Eon the Dragon ! Des monstres, des dragons et des combats aussi épiques que difficiles t'attendent !
Un RPG unique et immense t'attend ! Joue dès maintenant à Aventura, le Royaume Poudingue !
Vous aussi, soyez swag et rejoignez Planète Casio !
Lephenixnoir Hors ligne Administrateur Points: 20987 Défis: 143 Message

Citer : Posté le 27/10/2016 18:30 | #


Pour le coup de la factorielle, notez qu'avec les entiers machines (jusqu'à 10^12 de mémoire) on ne peut atteindre que 14!, et avec les chaînes, 146!. Bonne idée cependant.

Ceux qui se sont intéressés au système de calcul de la machine (BCD) remarqueront que c'est exactement la même chose que les entiers « natifs » dans le principe
Fabcvlr Hors ligne Membre Points: 2251 Défis: 41 Message

Citer : Posté le 28/10/2016 10:44 | #


Var2Str est depuis longtemps devenu un sous programme que j'utilise à retour de bras dans mes créations
Pour l'instant je suis entrain de coder l'addition, avec ses problèmes d'alignement de virgules pour les décimaux, et la multiplication. Deux opérations où on trouve des retenues à prendre en compte.
L'expérience des autres, c'est comme une chandelle que l'on tient allumée dans son dos par une nuit de tempête !
Lephenixnoir Hors ligne Administrateur Points: 20987 Défis: 143 Message

Citer : Posté le 28/10/2016 13:23 | #


Oh, wait. Tu ne travailles pas qu'avec des nombres entiers ?
Fabcvlr Hors ligne Membre Points: 2251 Défis: 41 Message

Citer : Posté le 28/10/2016 14:20 | #


Bah, je me suis dit, quitte à ce que ce soit compliqué, autant y aller carrément ! Nan, en fait je fais des essais pour la suite, du genre enlever la virgule pour ne conserver que les chiffres dans une string puis utiliser Exp( pour récupérer la valeur puis de nouveau Var2Str pour repasser en string. ça, c'est fait ! je cherche une façon simple de gérer les retenues maintenant.

L'expérience des autres, c'est comme une chandelle que l'on tient allumée dans son dos par une nuit de tempête !
Dark storm Hors ligne Labélisateur Points: 11541 Défis: 176 Message

Citer : Posté le 30/10/2016 10:23 | #


C'est con, en terminale j'avais fait un programme qui faisait cela. Je gérais l'addition et la soustraction de décimaux, et la multiplication d'entiers. C'était un chouille long, mais ça fonctionnait super bien !

Si j'arrive à remettre la main dessus je publierai ça, mais j'ai peu d'espoirs…
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Fabcvlr Hors ligne Membre Points: 2251 Défis: 41 Message

Citer : Posté le 02/11/2016 13:10 | #


Je suis preneur ! Bien que j'ai déjà bien avancé et que la majorité des difficultés soient résolues dans ma tête ; il reste à mettre tout ça dans la machine ! et là c'est pas gagné
L'expérience des autres, c'est comme une chandelle que l'on tient allumée dans son dos par une nuit de tempête !

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2021 | Il y a 45 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd