Tâche 1
Code source
#include <stdio.h>
int main()
{
printf(" O \n");
printf("<H>\n");
printf("I I\n");
return 0;
}
#include <stdio.h>
int main()
{
printf(" O O \n");
printf("<H> <H>\n");
printf("I I I I\n");
return 0;
}
#include <stdio.h>
int main()
{
printf(" O \n");
printf("<H>\n");
printf("I I\n");
printf(" O \n");
printf("<H>\n");
printf("I I\n");
return 0;
}
Résultat d'exécution
Tâche 2
Code source
#include <stdio.h>
int main()
{
double side1, side2, side3;
scanf("%lf%lf%lf", &side1, &side2, &side3);
if (side1 + side2 > side3 && side1 + side3 > side2 && side2 + side3 > side1)
printf("Peut former un triangle\n");
else
printf("Ne peut pas former un triangle\n");
return 0;
}
Résultat d'exécution
Tâche 3
Code source
#include <stdio.h>
int main()
{
char reponse1, reponse2;
printf("Avez-vous bien révisé avant chaque cours et révisé après ? (entrez y ou Y pour oui, n ou N pour non) : ");
reponse1 = getchar();
getchar();
printf("\nAvez-vous pratiqué en codant ? (entrez y ou Y pour oui, n ou N pour non) : ");
reponse2 = getchar();
if ((reponse1 == 'y' || reponse1 == 'Y') && (reponse2 == 'y' || reponse2 == 'Y'))
printf("\nRome ne s'est pas faite en un jour, continuez ainsi :)\n");
else
printf("\nRome ne s'est pas détruite en un jour, construisons ensemble\n");
return 0;
}
Explication
Le getchar() à la ligne 7 permet de consommer le caractère de retour à la ligne entré lors de la réponse à la première question. Si on supprimait cete ligne, le getchar() suivant lirait ce retour à la ligne et assignsrait '\n' à reponse2, rendant la deuxième question invalide.
Tâche 4
Code source
#include <stdio.h>
int main()
{
double val1, val2;
char car1, car2, car3;
int nb1, nb2, nb3;
scanf("%d%d%d", &nb1, &nb2, &nb3);
printf("nb1 = %d, nb2 = %d, nb3 = %d\n", nb1, nb2, nb3);
scanf("%c%c%c", &car1, &car2, &car3);
printf("car1 = %c, car2 = %c, car3 = %c\n", car1, car2, car3);
scanf("%lf,%lf", &val1, &val2);
printf("val1 = %f, val2 = %lf\n", val1, val2);
return 0;
}
Résultat d'exécusion
Tâche 5
Code source
#include <stdio.h>
int main()
{
int annees;
double secondes = 1000000000.0;
annees = (int)(secondes / 60.0 / 60.0 / 24.0 / 365.0 + 0.5);
printf("1 milliard de secondes équivaut à environ %d ans\n", annees);
return 0;
}
Résultat d'exécution
Tâche 6
Code source
#include <stdio.h>
#include <math.h>
int main()
{
double base, resultat;
while (scanf("%lf", &base) != EOF)
{
resultat = pow(base, 365);
printf("%.2f à la puissance 365 : %.2f\n", base, resultat);
printf("\n");
}
return 0;
}
Résultat d'exécution
Tâche 7
Code source
#include <stdio.h>
int main()
{
double celsius = 0.0, fahrenheit = 0.0;
while (scanf("%lf", &celsius) != EOF)
{
fahrenheit = (celsius * 9.0 / 5.0) + 32.0;
printf("Pour Celsius c = %.2lf, Fahrenheit f = %.2lf\n\n", celsius, fahrenheit);
}
return 0;
}
Résultat d'exécusion
Tâche 8
Code source
#include <stdio.h>
#include <math.h>
int main()
{
int coteA, coteB, coteC;
double semiPerim, surface;
while (scanf("%d %d %d", &coteA, &coteB, &coteC) != EOF)
{
semiPerim = ((double)(coteA + coteB + coteC)) / 2.0;
surface = sqrt(semiPerim * (semiPerim - coteA) * (semiPerim - coteB) * (semiPerim - coteC));
printf("coteA = %d, coteB = %d, coteC = %d, surface = %.3lf\n\n", coteA, coteB, coteC, surface);
}
return 0;
}