diff options
Diffstat (limited to 'semestre 2/informatique/tme/semaine1/05_discriminant.c')
| -rw-r--r-- | semestre 2/informatique/tme/semaine1/05_discriminant.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/semestre 2/informatique/tme/semaine1/05_discriminant.c b/semestre 2/informatique/tme/semaine1/05_discriminant.c new file mode 100644 index 0000000..575f776 --- /dev/null +++ b/semestre 2/informatique/tme/semaine1/05_discriminant.c @@ -0,0 +1,28 @@ +#include <math.h> +#include <stdio.h> + +int discriminant(int a, int b, int c){ + return b*b-4*a*c; +} + +void afficheRacines(int a, int b, int c){ + int disc = discriminant(a,b,c); + if (disc > 0) { + float sq = sqrt(disc); + printf("Racine 1 : %f\nRacine 2 : %f\n", (-b-sq)/(2*a), (-b+sq)/(2*a)); + } else if (disc == 0) { + printf("Racine double : %f\n", (-b)/(float) (2*a)); + } else { + printf("Pas de racine réelle\n"); + } +} + +int main(){ + afficheRacines(1, 1, 1); + afficheRacines(1, 1, -1); + afficheRacines(-1, 1, -1); + afficheRacines(-1, 1, 1); + afficheRacines(1, 2, 1); + afficheRacines(2, 4, 2); + return 0; +} |
