Voici le code que je viens de commencer de faire par rapport a son code :
#include <stdio.h>
#include <stdlib.h>
int main()
{
double Amount=0;
int Lenght=0,i=0,choice=0;
int Nomber=0,Nomber2=0,Nomber3=0,Nomber4=0,Nomber5=0,Nomber6=0,Nomber7=0;
printf("Si vous voulez calculer la Somme Taper 1 \n"
"Si vous voulez calculer le Produit Taper 2 \n"
"Si vous voulez calculer la Moyenne Taper 3 ");
scanf("%d",&choice);
printf("Taper votre nombre de Nombre : ");
scanf("%d",&Lenght);
if(choice==1)
{
for (i=0;i<Lenght;i++)
{
printf("Rentrer votre Nombre a additionner : ");
scanf("%d",&Nomber);
Amount+=Nomber;
}
printf("La somme de ces %d nombres est : %f\n",Lenght,Amount);
}
else if(choice==2)
{
switch(Lenght)
{
case 2:
printf("Rentrer votre Nombre a multiplier : ");
scanf("%d",&Nomber);
printf("Rentrer votre 2eme Nombre a multiplier : ");
scanf("%d",&Nomber2);
Nomber*=Nomber2;
printf("Le produit de ces %d nombres est : %f\n",Lenght,Nomber);
break;
case 3:
printf("Rentrer votre Nombre a multiplier : ");
scanf("%d",&Nomber);
printf("Rentrer votre 2eme Nombre a multiplier : ");
scanf("%d",&Nomber2);
printf("Rentrer votre 3eme Nombre a multiplier : ");
scanf("%d",&Nomber3);
Amount=Nomber*Nomber2*Nomber3;
printf("Le produit de ces %d nombres est : %f\n",Lenght,Amount);
break;
case 4:
printf("Rentrer votre Nombre a multiplier : ");
scanf("%d",&Nomber);
printf("Rentrer votre 2eme Nombre a multiplier : ");
scanf("%d",&Nomber2);
printf("Rentrer votre 3eme Nombre a multiplier : ");
scanf("%d",&Nomber3);
printf("Rentrer votre 4eme Nombre a multiplier : ");
scanf("%d",&Nomber4);
Amount=Nomber*Nomber2*Nomber3*Nomber4;
printf("Le produit de ces %d nombres est : %f\n",Lenght,Amount);
break;
case 5:
printf("Rentrer votre Nombre a multiplier : ");
scanf("%d",&Nomber);
printf("Rentrer votre 2eme Nombre a multiplier : ");
scanf("%d",&Nomber2);
printf("Rentrer votre 3eme Nombre a multiplier : ");
scanf("%d",&Nomber3);
printf("Rentrer votre 4eme Nombre a multiplier : ");
scanf("%d",&Nomber4);
printf("Rentrer votre 5eme Nombre a multiplier : ");
scanf("%d",&Nomber5);
Amount=Nomber*Nomber2*Nomber3*Nomber4*Nomber5;
printf("Le produit de ces %d nombres est : %f\n",Lenght,Amount);
break;
case 6:
printf("Rentrer votre Nombre a multiplier : ");
scanf("%d",&Nomber);
printf("Rentrer votre 2eme Nombre a multiplier : ");
scanf("%d",&Nomber2);
printf("Rentrer votre 3eme Nombre a multiplier : ");
scanf("%d",&Nomber3);
printf("Rentrer votre 4eme Nombre a multiplier : ");
scanf("%d",&Nomber4);
printf("Rentrer votre 5eme Nombre a multiplier : ");
scanf("%d",&Nomber5);
printf("Rentrer votre 6eme Nombre a multiplier : ");
scanf("%d",&Nomber6);
Amount=Nomber*Nomber2*Nomber3*Nomber4*Nomber5*Nomber6;
printf("Le produit de ces %d nombres est : %f\n",Lenght,Amount);
break;
case 7:
printf("Rentrer votre Nombre a multiplier : ");
scanf("%d",&Nomber);
printf("Rentrer votre 2eme Nombre a multiplier : ");
scanf("%d",&Nomber2);
printf("Rentrer votre 3eme Nombre a multiplier : ");
scanf("%d",&Nomber3);
printf("Rentrer votre 4eme Nombre a multiplier : ");
scanf("%d",&Nomber4);
printf("Rentrer votre 5eme Nombre a multiplier : ");
scanf("%d",&Nomber5);
printf("Rentrer votre 6eme Nombre a multiplier : ");
scanf("%d",&Nomber6);
printf("Rentrer votre 7eme Nombre a multiplier : ");
scanf("%d",&Nomber7);
Amount=Nomber*Nomber2*Nomber3*Nomber4*Nomber5*Nomber6*Nomber7;
printf("Le produit de ces %d nombres est : %f\n",Lenght,Amount);
break;
default:
printf("Nombre non-reconnue essayez entre 2 et 7 le programme y est limité ^^");
break;
}
}
else if(choice==3)
{
for (i=0;i<Lenght;i++)
{
printf("Rentrer votre Nombre a pour la moyenne: ");
scanf("%d",&Nomber);
Amount+=Nomber;
}
Amount/=Lenght;
printf("La moyenne de ces %d nombres est : %f\n",Lenght,Amount);
}
return 0;
}
Voila je le refait en nouveau sujet pour ne pas embrouiller les gens.
MA QUESTION EST : comment l'optimiser en C !! et pas en C++
Bonjour ! Est-ce que tu as vu la notion de tableau ? Si pas encore, sache que ce que tu cherches à faire s'utilise naturellement avec des tableaux et permet de compacter les lignes 26 à 101 en deux ou trois instructions.
Nous sommes ici dans le forum consacré au C, je ne sais pas pourquoi tu parles de C++. Les tableaux sont une notion (importante) de C. Donc tu as vu les tableaux en C ? Alors utilise-les pour gérer les différents choix. Est-ce que tu vois comment ou pas ?
(PS : je n'ai pas compris ton dernier message, je crois qu'il manque des mots. Peux-tu te relire ?)
Tu peux optimiser les noms de variables, en laissant le charabia : length, té, hache. Et à chaque fois on s'embrouille avec weight, hache, té.
1) pas de mélange franco-anglais. Choisis ton camp. Pas de mélanges minuscules majuscules.
2) une orthographe correcte. Number (en) ou Nombre (fr), mais jamais Nomber.
3) éviter les complications, AmountSomme, qu'on traduirait par MontantSomme, c'est un pléonasme. Une somme, y a qu'à l'appeler somme (parce que c'est forcément un nombre), et une moyenne : Moyenne.
---
Important: ce n'est pas une question de goût. Si tu écris n'importe comment un nom de variable, quand tu travailles sur le code tu dois mobiliser une partie de ton cerveau pour te rappeler ce qu'il faut taper exactement (est-ce que j'ai mis une minuscule ou une majuscule etc). Ce qui fait que tu travailles moins vite en te fatigant davantage, même si tu n'en n'as pas conscience. C'est important.
- Edité par michelbillaud 12 décembre 2018 à 13:39:45
Probleme C comment l'optimiser?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
revient à écrire Mais tu n'as pas besoin d'un tableau.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent