Comment multiplier des variables en C ?
lajolla
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je commence à peine le C (je ne sais donc casi rien) mais je fais quelques petits programmes or dans un d'eux j'aimerai savoir comment multiplier des variables entre elles au hasard.
Je m'expliqe : imaginer des variables V1 =1,V2 = 2,V3 = 3;
Comment multiplier V1 au hasard avec v2 ou v3
Si vous ne comprenez pas ,dites le moi
Merci Par avance
Lajolla
ps : Désolé pour les fautes d'Orthographes
Je commence à peine le C (je ne sais donc casi rien) mais je fais quelques petits programmes or dans un d'eux j'aimerai savoir comment multiplier des variables entre elles au hasard.
Je m'expliqe : imaginer des variables V1 =1,V2 = 2,V3 = 3;
Comment multiplier V1 au hasard avec v2 ou v3
Si vous ne comprenez pas ,dites le moi
Merci Par avance
Lajolla
ps : Désolé pour les fautes d'Orthographes
A voir également:
- Comment multiplier des variables en C ?
- Signe multiplier clavier - Forum Clavier
- Signe multiplié! ✓ - Forum Bureautique
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- Comment multiplier un texte sur word ✓ - Forum Bureautique
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ✓ - Forum Python
5 réponses
Bonjour,
Tu tires un nombre au hasard :
Si nb vaut 0 alors tu multiplies par V2, sinon tu multiplies par V3.
Ou en plus concis :
Google is your friend
Tu tires un nombre au hasard :
int nb; srand(time(NULL)); nb=rand() % 2;
Si nb vaut 0 alors tu multiplies par V2, sinon tu multiplies par V3.
int resultat = V1; if (nb == 0) resultat *= V2; else resultat *= V3;
Ou en plus concis :
int resultat = V1 * (nb == 0) ? V2 : V3
Google is your friend
Merci de vos réponses mais aucune des deux ne résous mon problème je vais essayer d'être plus clair : j'éssaye de créer un programme pour vérifier ses tables de 0 à 10 et je voudrai que entre ces nombre 2 soient choisis au hasards et multipliés l'un par l'autre à partir de ça je sait faire mais je cherche ce morceau de code
Comment faire pls ?
Google is your friend
Comment faire pls ?
Google is your friend
Ben en fait , pour le moment j'ai pas grand chose :
comme dit plus haut je voudrai faire un testeur de table de multiplication :
le programme choisi 2 des variables au hasard et les multiplie . L'utilisateur entre le resultat qui lui semble juste et si c'est juste le programme lui dit via un printf sinon il le lui dit aussi .
#include <stdio.h>
#include <stdlib.h>
int main()
{
int V1 = 1,V2 = 2,V3 = 3,V4 = 4,V5 = 5,V6 = 6,V7 = 7,V8 = 8,V9 = 9,V10 = 10,nb1 = 0,nb2 = 0,produit = 0,resultat = 0;
/*le passage que je ne connais pas cad : on tire deux variable au hasard sachant que l'une deviendra nb1 et l'autre nb2 entre
V1 et V10 ,elles sont multipliés l'une par l'autre et donnent un multiplication que l'ont affiche à l'utilisateur */
produit = nb1 * nb2;
printf("entrez le nombre que vous pensez juste : %d x %d = ",nb1,nb2);
scanf("%d",&resultat);
if (resultat == produit)
{
printf("Bravo,vous avez trouve le bon resultat !!!");
}
else
{
printf("Desole,vous vous etes trompe.Vous ferez mieux la prochaine fois !!!");
}
system("PAUSE");
return 0;
}
comme dit plus haut je voudrai faire un testeur de table de multiplication :
le programme choisi 2 des variables au hasard et les multiplie . L'utilisateur entre le resultat qui lui semble juste et si c'est juste le programme lui dit via un printf sinon il le lui dit aussi .
Bonjour,
Je ne connais pas suffisamment le C pour te proposer une syntaxe qui compile.
Mais sur le principe, le plus extensible serait de placer tes variables dans un tableau, puis d'utiliser RAND pour choisir quelle case du tableau va être utilisée.
Xavier
Je ne connais pas suffisamment le C pour te proposer une syntaxe qui compile.
Mais sur le principe, le plus extensible serait de placer tes variables dans un tableau, puis d'utiliser RAND pour choisir quelle case du tableau va être utilisée.
Xavier
Oui, enfin sauf que ne connaissant pas la finalité du truc, il est délicat de se prononcer sur ce à quoi ressemblera le programme au final. En utilisant un tableau on facilite l'adaptation future.
Dans le fil de discussion, on est déjà passé de trois variables indéterminées à 10 variables séquentielles, autant donner une solution qui ne changera pas toutes les heures ;-)
Bon, ceci étant dit, ton approche est au moins aussi juste que la mienne. Elle est plus rapide, plus directe et plus lisible. Mais je dois avoir un peu plus l'habitude de traiter avec des clients qui changent d'avis en cours de route ^^'
Dans le fil de discussion, on est déjà passé de trois variables indéterminées à 10 variables séquentielles, autant donner une solution qui ne changera pas toutes les heures ;-)
Bon, ceci étant dit, ton approche est au moins aussi juste que la mienne. Elle est plus rapide, plus directe et plus lisible. Mais je dois avoir un peu plus l'habitude de traiter avec des clients qui changent d'avis en cours de route ^^'
#include <stdio.h> #include <stdlib.h> #include <time.h> int main(int argc, char **argv) { int resultat_aleatoire=0; //3 variables int Tab[3] = {1,2,5}; //init nbr aleatoire srand(time(NULL)); resultat_aleatoire=Tab[rand()%sizeof(Tab)]*Tab[rand()%sizeof(Tab)]; printf("Resultat =>%d\n",resultat_aleatoire); getchar(); return 0; }
Bonjour WillyInfo,
Quand tu postes un code, merci d'utiliser la balise "code" située à droite du bouton "souligné". C'est plus lisible.
main => il manque les parenthèses.
Le bon prototype de main() est : int main(void) ou int main(int argc, char **argv)
resultat_aleatoire=Tab[rand()%3]*Tab[rand()%3];
Plutôt que mettre 3, je te conseille de mettre sizeof Tab/sizeof *Tab. C'est plus maintenable.
Et enfin, n'oublie pas le return 0; en fin de programme pour dire que tout s'est bien déroulé.
Quand tu postes un code, merci d'utiliser la balise "code" située à droite du bouton "souligné". C'est plus lisible.
main => il manque les parenthèses.
Le bon prototype de main() est : int main(void) ou int main(int argc, char **argv)
resultat_aleatoire=Tab[rand()%3]*Tab[rand()%3];
Plutôt que mettre 3, je te conseille de mettre sizeof Tab/sizeof *Tab. C'est plus maintenable.
Et enfin, n'oublie pas le return 0; en fin de programme pour dire que tout s'est bien déroulé.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Essaye avec sa :
calcul = (rand() % (v2 - v2)) * v1);
ou regarder ici : http://fr.openclassrooms.com/informatique/cours/apprenez-a-programmer-en-c/les-calculs-de-base
calcul = (rand() % (v2 - v2)) * v1);
ou regarder ici : http://fr.openclassrooms.com/informatique/cours/apprenez-a-programmer-en-c/les-calculs-de-base