Triple d'un nombre a virgul
c-4
-
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
ce programme est destiné a multiplier un nombre a virgul par 3 en notation francais mais il parait que c'est imcomplet tous aide sera la bien venu
#include <stdio.h>
int main()
{
int a, b;
int lavaleurfinal;
double triple;
scanf("%d,%d", &a, &b);
{
double n = b;
while(n >= 1)
{
n = n/10;
}
n = n + a;
triple = 3*n;
lavaleurfinal = triple;
printf("%d", lavaleurfinal);
return 0;
}
}
ce programme est destiné a multiplier un nombre a virgul par 3 en notation francais mais il parait que c'est imcomplet tous aide sera la bien venu
#include <stdio.h>
int main()
{
int a, b;
int lavaleurfinal;
double triple;
scanf("%d,%d", &a, &b);
{
double n = b;
while(n >= 1)
{
n = n/10;
}
n = n + a;
triple = 3*n;
lavaleurfinal = triple;
printf("%d", lavaleurfinal);
return 0;
}
}
A voir également:
- Triple d'un nombre a virgul
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Afficher le 0 devant un nombre dans excel - Guide
- Supprimer espace nombre excel ✓ - Forum Excel
- Tableau à triple entrée ✓ - Forum Excel
3 réponses
Salut.
Si je comprends bien ton but, c'est de gérer les nombres en notation français, c'est à dire en écrivant les flottant avec une virgule.
Dans ce cas, pas la peine de te faire chier, il existe une bibliothèque standard en C : locale.h cf. https://linux.die.net/man/7/locale
bonne chance.
Si je comprends bien ton but, c'est de gérer les nombres en notation français, c'est à dire en écrivant les flottant avec une virgule.
Dans ce cas, pas la peine de te faire chier, il existe une bibliothèque standard en C : locale.h cf. https://linux.die.net/man/7/locale
bonne chance.
premièrement ton initialisation de variables est étrange.
int a, b, lavaleurfinale, triple;
(pourquoi mettre un double ? quand tu multiplies un nombre entier par un autre nombre entier, ça donne un autre entier. Si tu veux multiplier des nombres à virgule alors :
double a, b, lavaleurfinale, triple;)
Ensuite je crois que tu demandes à l'utilisateur quels chiffres il souhaite.
Avant double n = b;
Ne serait-ce pas une accolade fermante plutôt ?
Moi ton code me parait juste étrange.
J'aurait juste pris une variable double, multiplier par 3 et renvoyer la valeur.
int a, b, lavaleurfinale, triple;
(pourquoi mettre un double ? quand tu multiplies un nombre entier par un autre nombre entier, ça donne un autre entier. Si tu veux multiplier des nombres à virgule alors :
double a, b, lavaleurfinale, triple;)
Ensuite je crois que tu demandes à l'utilisateur quels chiffres il souhaite.
Avant double n = b;
Ne serait-ce pas une accolade fermante plutôt ?
Moi ton code me parait juste étrange.
J'aurait juste pris une variable double, multiplier par 3 et renvoyer la valeur.
merci pour tt
jais un autre blem sauf que cette fois c'est un peu bizar
le code que voici a pour but de convertir un nombre entier en nombre binaire sauf que le resultat donné est vrai mais inversé tt aide est la bienvenue
#include <stdio.h>
int main()
{
int nombre = 0;
int restant = 0;
int enbbinaire = 0;
printf("Entrer un nombre : ");
scanf("%d", &nombre);
while(nombre > 0)
{
restant = nombre % 2*10;
printf("%d", restant/10);
enbbinaire++;
nombre/=2;
}
return 0;
}
jais un autre blem sauf que cette fois c'est un peu bizar
le code que voici a pour but de convertir un nombre entier en nombre binaire sauf que le resultat donné est vrai mais inversé tt aide est la bienvenue
#include <stdio.h>
int main()
{
int nombre = 0;
int restant = 0;
int enbbinaire = 0;
printf("Entrer un nombre : ");
scanf("%d", &nombre);
while(nombre > 0)
{
restant = nombre % 2*10;
printf("%d", restant/10);
enbbinaire++;
nombre/=2;
}
return 0;
}
Bonjour,
Cette partie-là est fausse :
while(n >= 1)
{
n = n/10;
}
En effet, si a,b = 1,0025
Tu feras le calcul sur 1,25.
Il te faut plutôt compter le nombre de chiffres contenus dans b, et diviser b par 10 puissance ce nombre.
Ou alors, faire comme dit Char Snipeur, mais je doute que ce soit ce qu'attend ton prof.
Xavier
Cette partie-là est fausse :
while(n >= 1)
{
n = n/10;
}
En effet, si a,b = 1,0025
Tu feras le calcul sur 1,25.
Il te faut plutôt compter le nombre de chiffres contenus dans b, et diviser b par 10 puissance ce nombre.
Ou alors, faire comme dit Char Snipeur, mais je doute que ce soit ce qu'attend ton prof.
Xavier