Bonjour a tous je débute en C et mon prof d'info nous a demander cela comme exo :
Ecrire un programme qui affiche la résistance équivalente à trois résistances R1,R2,R3(type double),
- si les résistances sont en série : Rser = R1+R2+R3
- si les résistances sont en // : Rpar = (R1*R2*R3)/(R1*R2+R1*R3+R2*R3)
Donc je fais mon étude du probleme et mon algorithme qui est facile, je tape mon code en C :
Code :
- /* Programme permettant de calculer la resistance equivalente a 3
- Resistance en // ou série */
- #include <stdio.h>
- main()
- {
- double r1,r2,r3,resp;
- char res;
- printf("R1 R2 R3\n" );
- scanf("%f",&r1);
- scanf("%f",&r2);
- scanf("%f",&r3);
- printf("Resistances en série ou // ?\n" );
- res = getch();
- if (res=='s')
- {
- printf ("Resistance en série\n" );
- printf("La résistance équivalente vaut : %f\n",r1+r2+r3);
- }
- else if(res=='p')
- {
- printf("Resistance en //\n" );
- resp = (r1*r2*r3)/((r1*r2)+(r1*r3)+(r2*r3));
- printf("La resistance equivalente vaut : %g\n",resp);
- }
- else
- {
- printf("Mauvais choix\n" );
- }
- }
|
je pense que mon code est correct mais quoi que je saisisse, les resultat sont faux, je pense que ca viendrai qu'il faut forcer les variable a un certain type lors du calcul le prof nous avait parler de ca mais je ne sais pas comment utiliser ca
merci d'avance
Message édité par scooper2 le 04-10-2003 à 19:04:17