Fonction d'addition de tableau avec report
Résolu/Fermé
viktor
-
16 mai 2015 à 20:32
viktorfrankestein Messages postés 12 Date d'inscription samedi 16 mai 2015 Statut Membre Dernière intervention 30 août 2016 - 17 mai 2015 à 19:50
viktorfrankestein Messages postés 12 Date d'inscription samedi 16 mai 2015 Statut Membre Dernière intervention 30 août 2016 - 17 mai 2015 à 19:50
A voir également:
- Fonction d'addition de tableau avec report
- Tableau croisé dynamique - Guide
- Fonction si et - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Formule excel addition - Guide
1 réponse
Sugel
Messages postés
4076
Date d'inscription
jeudi 18 août 2011
Statut
Membre
Dernière intervention
19 juin 2017
725
Modifié par Sugel le 16/05/2015 à 22:25
Modifié par Sugel le 16/05/2015 à 22:25
Il est aisé de satisfaire ta première requête, mais la seconde me laisse perplexe vis-à-vis de son utilité ; prenons un exemple:
Au fond, la retenue de l'addition corresponds en C comme ailleurs à la somme des restes des divisions euclidienne par dix des membres (équivaut en C au modulo %), auquel on soustrait le reste de la division euclidienne par dix.
Toutefois, dans nos machines, les données sont traitées en binaire, c'est à dire que il n'existe pas dix chiffres (zero compris), mais seulement deux : 0 et 1.
Les retenues que font ta machine sont donc différentes des tiennes, et ces opérations sont purement 'artificielles'.
si tu tiens vraiment à avoir le 'reste' d'une addition, ça donne ça:
Pas terrible hein ?
Il faut encore nuancer cette réponse:
Une addition résulte de plusieurs retenues successives, et tu n'obtiens de cette manière que la première !
Tu peut obtenir les autres à l'aide d'une boucle qui parcours les différentes puissances de dix et utilise les retenues précédemment calculées.
Pour répondre à ta première question, on peut faire comme ça:
Voilà tout !
PS: Fait attention à la présentation de ton message, tu n'a pas idée de la différence que cela fait, du plaisir que c'est de voir un message se terminant par une formule de politesse.
J'ai rédigé cette réponse avec plaisir, fais en sorte de rédiger ta question avec respect et politesse. Ce respect et cette estime est nécessaire à la survie de ces forums d'entraide, je ne serai pas là sans ces deux éléments.
------------------------------------------------------------------------------------
"La peur mène à la colère. La colère mène à la haine. Et la haine ... mène à la souffrance." - Yoda
16 7+ -- 12 10+ -- 22
Au fond, la retenue de l'addition corresponds en C comme ailleurs à la somme des restes des divisions euclidienne par dix des membres (équivaut en C au modulo %), auquel on soustrait le reste de la division euclidienne par dix.
Toutefois, dans nos machines, les données sont traitées en binaire, c'est à dire que il n'existe pas dix chiffres (zero compris), mais seulement deux : 0 et 1.
Les retenues que font ta machine sont donc différentes des tiennes, et ces opérations sont purement 'artificielles'.
si tu tiens vraiment à avoir le 'reste' d'une addition, ça donne ça:
int a,b,reste; a=7; b=34; reste = (a%10 + b%10); // 7%10 = 7 et 34%10 = 4, dont reste = 7+4=11 reste = (reste - reste%10)/10; // reste%10=1 et reste = 11, donc reste = 10/10 = 1
Pas terrible hein ?
Il faut encore nuancer cette réponse:
Une addition résulte de plusieurs retenues successives, et tu n'obtiens de cette manière que la première !
Tu peut obtenir les autres à l'aide d'une boucle qui parcours les différentes puissances de dix et utilise les retenues précédemment calculées.
Pour répondre à ta première question, on peut faire comme ça:
int i; int tableau1[10]; int tableau2[10]; // on crée les deux tableaux, qui doivent être de même taille // remplis ici tes tableaux avec des données for (i=0;i<10;i++) // on parcours les cases des tableaux tableau1[i] -= tableau2[i]; // équivaut à tableau1[i] = tableau1[i] - tableau2[i] : on soustrait à chaque case du tableau 1 son homologue du second
Voilà tout !
PS: Fait attention à la présentation de ton message, tu n'a pas idée de la différence que cela fait, du plaisir que c'est de voir un message se terminant par une formule de politesse.
J'ai rédigé cette réponse avec plaisir, fais en sorte de rédiger ta question avec respect et politesse. Ce respect et cette estime est nécessaire à la survie de ces forums d'entraide, je ne serai pas là sans ces deux éléments.
------------------------------------------------------------------------------------
"La peur mène à la colère. La colère mène à la haine. Et la haine ... mène à la souffrance." - Yoda
16 mai 2015 à 23:34
Ce qui est encore mieux, c'est un message Commençant Et Se Terminant, par une formule de politesse....
16 mai 2015 à 23:35
https://www.commentcamarche.net/infos/25857-charte-de-commentcamarche-net-conseils-d-ecriture/#style
17 mai 2015 à 09:59
17 mai 2015 à 14:02
17 mai 2015 à 19:50