Aller au contenu
Règlement du forum ×
IPTV et arnaques ×

Probléme De Division


namster

Messages recommandés

Salut Voila J'ai Voulu Crée Une Petite Calculette Mais Le Problème et que Le Résultat de LA division et erroné

voila le Code Source

#include 
#include 

int main ()

{

   printf("Salut je suis la Calculete V0.1 De N@Mster\n");



 menu();


}


long addition(long addition1, long addition2)
{
   long resultat=0;
   resultat=addition1+addition2;
   return resultat;

}
long soustraction(long soustraction1, long soustraction2)
{
   long resultat=0;
   resultat=soustraction1-soustraction2;
   return resultat;

}
long multiplication(long multiplication1, long multiplication2)
{
   long resultat=0;
   resultat=multiplication1*multiplication2;
   return resultat;

}
long division(long division1, long division2)
{
   long resultat=0;
   resultat=division1/division2;
   return resultat;

}
float cosinus(float ag, float hy )
{
   float resultat;
   resultat=ag/hy;
   return resultat;
}

void menu()
{
   long choix=0;
   printf("Que veu Tu Faire ?\n");
   printf("1.Additioner Deux Nombres\n");
   printf("2.Soustraire Deux Nombres\n");
   printf("3.multiplier Deux Nombres\n");
   printf("4.Diviser Deux Nombre\n");
       scanf("%i",&choix);
   operation(choix);
}
int operation(int choix)
{
   switch (choix)
   {

   case 1:
   printf("Ah Tu as choisi l'addition\n");
   printf("Donne Moi Tes Deux Nombre A additionner\n");
   long nombre1,nombre2,aditionf;
   scanf("%i",&nombre1);
   printf("ET le Deuxieme\n");
   scanf("%i",&nombre2);
    aditionf=addition(nombre1,nombre2);
   printf("Le Resultat de L'addition est %i",aditionf);
   break;
   case 2:
    printf("Ah Tu as choisi la Soustraction\n");
   printf("Donne Moi Tes Deux Nombre A Soustraire En Commencent par Le Plus Grand =)\n");
   long nombre3,nombre4,soustractionf;
   scanf("%i",&nombre3);
   printf("ET le Deuxieme\n");
   scanf("%i",&nombre4);
    soustractionf=soustraction(nombre3,nombre4);
   printf("Le Resultat de La soustraction est %i",soustractionf);
   break;
   case 3:
   printf("Ah Tu as choisi la Multiplication\n");
   printf("Donne Moi Tes Deux Nombre A Multiplier \n");
   long nombre5,nombre6,Multiplicationf;
   scanf("%i",&nombre5);
   printf("ET le Deuxieme\n");
   scanf("%i",&nombre6);
    Multiplicationf=multiplication(nombre5,nombre6);
   printf("Le Resultat de La multiplication est %i",Multiplicationf);
   break;
   case 4:
   printf("Ah Tu as choisi la division\n");
   printf("Donne Moi Tes Deux Nombre A Diviser En Commencent par Le Plus Grand =)\n");
   long nombre7,nombre8,divisionf;
   scanf("%Id",&nombre7);
   printf("ET le Deuxieme\n");
   scanf("%Id",&nombre8);
    divisionf=division(nombre7,nombre8);
   printf("Le Resultat de La division est %i",divisionf);
   break;
     default:

       printf("Euh?");

       system("PAUSE");
}

}









Lien vers le commentaire
Partager sur d’autres sites

Salut Voila J'ai Voulu Crée Une Petite Calculette Mais Le Problème et que Le Résultat de LA division et erroné

voila le Code Source

#include 
#include 

int main ()

{

   printf("Salut je suis la Calculete V0.1 De N@Mster\n");



 menu();


}


long addition(long addition1, long addition2)
{
   long resultat=0;
   resultat=addition1+addition2;
   return resultat;

}
long soustraction(long soustraction1, long soustraction2)
{
   long resultat=0;
   resultat=soustraction1-soustraction2;
   return resultat;

}
long multiplication(long multiplication1, long multiplication2)
{
   long resultat=0;
   resultat=multiplication1*multiplication2;
   return resultat;

}
float division(float division1, float division2)
{
   float resultat=0;
   resultat=division1/division2;
   return resultat;

}
float cosinus(float ag, float hy )
{
   float resultat;
   resultat=ag/hy;
   return resultat;
}

void menu()
{
   long choix=0;
   printf("Que veu Tu Faire ?\n");
   printf("1.Additioner Deux Nombres\n");
   printf("2.Soustraire Deux Nombres\n");
   printf("3.multiplier Deux Nombres\n");
   printf("4.Diviser Deux Nombre\n");
       scanf("%i",&choix);
   operation(choix);
}
int operation(int choix)
{
   switch (choix)
   {

   case 1:
   printf("Ah Tu as choisi l'addition\n");
   printf("Donne Moi Tes Deux Nombre A additionner\n");
   long nombre1,nombre2,aditionf;
   scanf("%i",&nombre1);
   printf("ET le Deuxieme\n");
   scanf("%i",&nombre2);
    aditionf=addition(nombre1,nombre2);
   printf("Le Resultat de L'addition est %i",aditionf);
   break;
   case 2:
    printf("Ah Tu as choisi la Soustraction\n");
   printf("Donne Moi Tes Deux Nombre A Soustraire En Commencent par Le Plus Grand =)\n");
   long nombre3,nombre4,soustractionf;
   scanf("%i",&nombre3);
   printf("ET le Deuxieme\n");
   scanf("%i",&nombre4);
    soustractionf=soustraction(nombre3,nombre4);
   printf("Le Resultat de La soustraction est %i",soustractionf);
   break;
   case 3:
   printf("Ah Tu as choisi la Multiplication\n");
   printf("Donne Moi Tes Deux Nombre A Multiplier \n");
   long nombre5,nombre6,Multiplicationf;
   scanf("%i",&nombre5);
   printf("ET le Deuxieme\n");
   scanf("%i",&nombre6);
    Multiplicationf=multiplication(nombre5,nombre6);
   printf("Le Resultat de La multiplication est %i",Multiplicationf);
   break;
   case 4:
   printf("Ah Tu as choisi la division\n");
   printf("Donne Moi Tes Deux Nombre A Diviser En Commencent par Le Plus Grand =)\n");
   float nombre7,nombre8,divisionf;
   scanf("%Id",&nombre7);
   printf("ET le Deuxieme\n");
   scanf("%Id",&nombre8);
    divisionf=division(nombre7,nombre8);
   printf("Le Resultat de La division est %f",divisionf);
   break;
     default:

       printf("Euh?");

       system("PAUSE");
}

}







 

*n'oublie pas de faire un test pour que tu n'aura pas un division /0 . (très important)

un petit test comme ceci est sympa

scanf("%Id",&nombre8);
   if(nombre8==0)
   {
        printf("ET le Deuxieme nombre est égal à zero (Risque de division par zero) \n");
   }
   else {
    divisionf=division(nombre7,nombre8);
   printf("Le Resultat de La division est %f",divisionf);}

 

 

le problème de la division n'est pas un problème car tu déclare la valeur de retour en Long (c-a-d 5/4=1 pas 1.25 car tu incite le programme qu'il te retourne un entier) mais si tu veux le vrai résultat qui est 1.25 , ebain il faut que tu change:

dans la méthode division, tu déclare les nombres en (float=nombre réel ou double=float avec une précision supérieure)

le résultat en float et la valeur retourné par la méthode et aussi tu déclare :

dans la méthode opération : nombre8 , nombre7 et divisionf en float et n'oublie pas surtout dans printf du résultat de la division : ce symbole %f il indique que le nombre et float.

 

maintenant la division marche bien , il faut ajouté le test de la division par zéro.

une remarque : il faut que laisse une chance au utilisateur de répéter les opération après la première fois , c'est lui qui décide de quitter le programme , il faut faire une boucle pour opération (je vais voir comment et je te propose une solution.)

 

j'espère que je n'était pas lourd.

Modifié par diegol
  • Like 1
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • Messages

    • mieux qu'avant!! en tous cas y a des outils spécialement fait pour le nettoyage des connecteurs Fibre, mais c'est des outils pro, donc c'est chère 😅  
    • La technologie FTTH est un accès Internet haut débit qui devient de plus en plus populaire . Cependant, même si le FTTH offre des vitesses rapides, il est toujours possible d'optimiser la vitesse de votre réseau FTTH et d'obtenir des vitesses encore plus rapides. Voici comment  tirer le meilleur parti de votre connexion.  
    • salam les amis j'ai enlevé la fiche verte soufflé un peu puis remis ça à l'air bon ? 
    • Or ou pyrite : Comment éviter la supercherie de la pyrite également connue sous le nom d’« or du fou » ? Ce qu'est la pyrite: Les scientifiques écrivent la formule chimique de la pyrite comme «FeS2». Vous voyez, les symboles chimiques du fer et du soufre sont respectivement « Fe » et « S ». Et chaque molécule de pyrite contient un atome de fer avec deux atomes de soufre. Distinguer l’or et la pyrite: Nous (les géologues) savons que sur l’échelle de dureté des minéraux connue sous le nom d'échelle de Mohs,  l’or a un classement de 2,5 à 3. Au fur et à mesure que les éléments disparaissent, il est plutôt mou, et une pépite d’or peut ainsi facilement être grattée avec un couteau de poche. La pyrite a ici l’avantage d’être plus dur et se situe entre 6 et 6,5 sur l’échelle. Un couteau ne suffira pas, vous aurez besoin d’une lime métallique de haute qualité pour le rayer. Frapper de la pyrite avec un marteau  enverra des étincelles. Si vous êtes assez persistant, la pyrite se brisera et finira par se réduire en poudre. Rien de tout cela ne se produit lorsque vous frappez de l’or avec un marteau: pas d’étincelles, pas de poudre. Au lieu de cela avec de l'or, vous pourriez finir par tordre ou aplatir l’échantillon. Non seulement l’or est tendre, mais il est malléable. Différences visuelles Visuellement, les deux matériaux sont jaunâtres, mais l’or est moins cuivré que la pyrite et brille plus . Il ne forme pas non plus de cristaux en forme de cube, comme le fait souvent la pyrite. Au contraire, la plupart de l’or rencontré sur le terrain prend la forme de flocons ou de pépites grumeleuses. L’or laissera également une trace jaune s’il est frotté contre un morceau de porcelaine ou de céramique blanche. Répétez cette même expérience avec de la pyrite et cela laissera une ligne plus sombre, noir verdâtre Spécificité de la pyrite à l'odorat Si vous avez encore des doutes, votre odorat peut aussi vous aider. Bien que l’or soit pratiquement inodore, la pyrite a une légère odeur – et ça sent les œufs pourris car riche en souffre. Test rapide , pratique simple de bijoutiers Les bijoutiers frottent un bijou non poinçonné (non garantit)  sur une céramique. La céramique est un des matériaux les plus résistants au frottement. Aussi, afin de s'assurer rapidement de la nature d'un bijou, ils utilisent une plaque en céramique non émaillée et le grattent  à sa surface. Si une marque noire apparaît, le bijou est fait d’un alliage indéterminé. À l’inverse si la friction laisse derrière elle une marque dorée, c'est bien en or.  
×
×
  • Créer...