diff options
| author | Anhgelus Morhtuuzh <anhgelus@anhgelus.world> | 2025-01-31 15:39:30 +0100 |
|---|---|---|
| committer | Anhgelus Morhtuuzh <anhgelus@anhgelus.world> | 2025-01-31 15:39:30 +0100 |
| commit | d7c69934248f3fab4988c0d37c11feba25d653b8 (patch) | |
| tree | 6c396257cb21374e13a26b8f78c05353806220bc /semestre 2/informatique/td/2- exemples | |
| parent | ed631f52ee7af474625e37c6855c7c55903317fc (diff) | |
Ajout du début du deuxième semestre
Diffstat (limited to 'semestre 2/informatique/td/2- exemples')
| -rw-r--r-- | semestre 2/informatique/td/2- exemples/boucle.c | 25 | ||||
| -rw-r--r-- | semestre 2/informatique/td/2- exemples/boucle_complet.c | 22 | ||||
| -rw-r--r-- | semestre 2/informatique/td/2- exemples/boucles_complexes.c | 28 |
3 files changed, 75 insertions, 0 deletions
diff --git a/semestre 2/informatique/td/2- exemples/boucle.c b/semestre 2/informatique/td/2- exemples/boucle.c new file mode 100644 index 0000000..b582080 --- /dev/null +++ b/semestre 2/informatique/td/2- exemples/boucle.c @@ -0,0 +1,25 @@ +#include <assert.h> + +int somme_carres_while(int m, int n){ + int s = 0, i = m; + while (i <= n){ + s += i*i; + i++; + } + return s; +} + +int somme_carres_for(int m, int n){ + int s = 0; + for (int i = m; i <= n; i++){ + s += i*i; + } + return s; +} + +int main(){ + assert(somme_carres_while(0, 5) == somme_carres_for(0, 5)); + assert(somme_carres_while(3, 5) == somme_carres_for(3, 5)); + assert(somme_carres_while(15, 25) == somme_carres_for(15, 25)); + return 0; +} diff --git a/semestre 2/informatique/td/2- exemples/boucle_complet.c b/semestre 2/informatique/td/2- exemples/boucle_complet.c new file mode 100644 index 0000000..9cae542 --- /dev/null +++ b/semestre 2/informatique/td/2- exemples/boucle_complet.c @@ -0,0 +1,22 @@ +#include <stdio.h> +#define MAX 20 + +int premier(int n){ + if (n < 2) return 0; + for (int i = 2; i < n;i++){ + if (n%i == 0) return 0; // est une boucle avec sortie anticipée + } + return 1; +} + +void afficheNombresPremiers(int max){ + for (int i = 2; i <= max; i++){ + if (premier(i)) printf("%d\n", i); + } +} + +int main(){ + printf("Liste des nombres premiers <= %d\n", MAX); + afficheNombresPremiers(MAX); + return 0; +} diff --git a/semestre 2/informatique/td/2- exemples/boucles_complexes.c b/semestre 2/informatique/td/2- exemples/boucles_complexes.c new file mode 100644 index 0000000..6c388a4 --- /dev/null +++ b/semestre 2/informatique/td/2- exemples/boucles_complexes.c @@ -0,0 +1,28 @@ +#include <stdio.h> +#include <assert.h> + +void afficheBilletsPieces(int m){ + int r = m; + int billets = r/5; + r = r%5; + int pieces2 = r/2; + r = r%2; + int pieces1 = r; + printf("%d€ = %d * 5€ + %d * 2€ + %d * 1€", m, billets, pieces2, pieces1); +} + +void afficheBilletsPiecesMultiple(int m){ + for (int billets = m/5; billets >= 0; billets--){ + int av = m - billets*5; + for (int p2 = av/2; p2 >= 0; p2--){ + int av2 = av - p2*2; + assert(billets*5+p2*2+av2 == m); + printf("%d€ = %d*5€ + %d*2€ + %d*1€\n", m, billets, p2, av2); + } + } +} + +int main(){ + afficheBilletsPiecesMultiple(23); + return 0; +} |
