Compare commits
2 Commits
471e4a7e75
...
af0a212997
Author | SHA1 | Date | |
---|---|---|---|
|
af0a212997 | ||
|
7d319d2d6a |
@ -112,7 +112,6 @@ int main(void) {
|
|||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
int k;
|
int k;
|
||||||
int nb_lignes;
|
|
||||||
/* t1 */
|
/* t1 */
|
||||||
for (i = 0; i != 2; i++) {
|
for (i = 0; i != 2; i++) {
|
||||||
for (j = 0; j != 5; j++) {
|
for (j = 0; j != 5; j++) {
|
||||||
@ -139,19 +138,38 @@ int main(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Affichage des tableaux */
|
/* Affichage des tableaux */
|
||||||
nb_lignes = 2
|
|
||||||
for (i = 0; i != 3; i++) {
|
|
||||||
for (j = 0; j != 5; j++) {
|
for (j = 0; j != 5; j++) {
|
||||||
for (k = 0; k != 2; k++) {
|
for (i = 0; i != 17; i++) {
|
||||||
/* TO DO */
|
if (i < 5) {
|
||||||
|
if (j >= 2) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("%.2d ", t1[j][i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* BAKA */
|
||||||
|
else if (i == 5 | i == 11) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
else if (i > 5 && i < 11) {
|
||||||
|
if (j >= 3) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("%.2d ", t2[j][i-6]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("%.2d ", t3[j][i-12]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
printf("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
3.
|
3.
|
||||||
|
|
||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
|
@ -1,37 +1,70 @@
|
|||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
# include <stdlib.h>
|
# include <stdlib.h>
|
||||||
# define HAUTEUR 30
|
|
||||||
|
|
||||||
int main(void) {
|
int main(void) {
|
||||||
int t[HAUTEUR][HAUTEUR];
|
/* Déclaration des tableaux */
|
||||||
/* Création du triangle de Pascal */
|
int t1[2][5];
|
||||||
|
int t2[3][5];
|
||||||
|
int t3[5][5];
|
||||||
|
int compteur;
|
||||||
|
/* Remplissage des tableaux */
|
||||||
|
int i;
|
||||||
|
int j;
|
||||||
int k;
|
int k;
|
||||||
int n;
|
/* t1 */
|
||||||
for (k = 0; k != HAUTEUR; k++) {
|
for (i = 0; i != 2; i++) {
|
||||||
for (n = 0; n != HAUTEUR; n++) {
|
for (j = 0; j != 5; j++) {
|
||||||
if (k == n && k >= 0) {
|
t1[i][j] = j + 1;
|
||||||
t[k][n] = 1;
|
|
||||||
}
|
}
|
||||||
else if (k > n && n >= 1) {
|
|
||||||
t[k][n] = t[k-1][n] + t[k-1][n-1];
|
|
||||||
}
|
}
|
||||||
else if (k>=0 && n == 0) {
|
/* t2 */
|
||||||
t[k][n] = 1;
|
compteur = 1;
|
||||||
|
for (i = 0; i != 3; i++) {
|
||||||
|
for (j = 0; j != 5; j++) {
|
||||||
|
t2[i][j] = compteur;
|
||||||
|
compteur++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* t3 */
|
||||||
|
for (i = 0; i != 5; i++) {
|
||||||
|
for (j = 0; j != 5; j++) {
|
||||||
|
if (j >= i) {
|
||||||
|
t3[i][j] = 0;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
t[k][n] = 0;
|
t3[i][j] = 1 + j;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Affichage */
|
/* Affichage des tableaux */
|
||||||
for (k = 0; k != HAUTEUR; k++) {
|
for (j = 0; j != 5; j++) {
|
||||||
for (n = 0; n != HAUTEUR; n++) {
|
for (i = 0; i != 17; i++) {
|
||||||
if (t[k][n] != 0) {
|
if (i < 5) {
|
||||||
printf("%d ", t[k][n]);
|
if (j >= 2) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("%.2d ", t1[j][i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* BAKA */
|
||||||
|
else if (i == 5 | i == 11) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
else if (i > 5 && i < 11) {
|
||||||
|
if (j >= 3) {
|
||||||
|
printf(" ");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("%.2d ", t2[j][i-6]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("%.2d ", t3[j][i-12]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
printf("\n");
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
57
DEV1.1/TP14/TP14_reponses.txt
Normal file
57
DEV1.1/TP14/TP14_reponses.txt
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
-------- TP14 : Adresses ---------
|
||||||
|
|
||||||
|
1.
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
int main(void){
|
||||||
|
float a;
|
||||||
|
double b;
|
||||||
|
long double c;
|
||||||
|
char d;
|
||||||
|
short int e;
|
||||||
|
int f;
|
||||||
|
unsigned long int g;
|
||||||
|
a = 12.5;
|
||||||
|
b = 2.0;
|
||||||
|
c = 48.8;
|
||||||
|
d = 'a';
|
||||||
|
e = 4;
|
||||||
|
f = 18;
|
||||||
|
g = 89;
|
||||||
|
printf("%p\n", &a);
|
||||||
|
printf("%p\n", &b);
|
||||||
|
printf("%p\n", &c);
|
||||||
|
printf("%p\n", &d);
|
||||||
|
printf("%p\n", &e);
|
||||||
|
printf("%p\n", &f);
|
||||||
|
printf("%p\n", &g);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
On remarque que les valeurs données à chaque adresse diffèrent à chaque exécution du programme,
|
||||||
|
mais que la "distance" qui sépare les adresses est toujours la même, distance qui dépend de la taille
|
||||||
|
de la donnée à stocker en mémoire.
|
||||||
|
|
||||||
|
2.
|
||||||
|
|
||||||
|
Le programme affichera l'adresses des lettres minuscules de a à z présentes dans la variable p.
|
||||||
|
Après exécution : aBcDeFgHiJkLmNoPqRsTuVwXyZ
|
||||||
|
|
||||||
|
3.
|
||||||
|
|
||||||
|
RIEN COMPRIS ??????
|
||||||
|
|
||||||
|
4.
|
||||||
|
|
||||||
|
Programme annexe :
|
||||||
|
|
||||||
|
long int n = 4614256656552045848L;
|
||||||
|
double* p = (double*) &n;
|
||||||
|
printf("π = %f\n", *p);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
|
||||||
|
Il retourne la valeur 4618760256959462783.
|
||||||
|
En la mettant dans le programme de base, on se retrouve avec 6.283186, soit 2π.
|
9
DEV1.1/TP14/tests.c
Normal file
9
DEV1.1/TP14/tests.c
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
int main(void){
|
||||||
|
long int n = 4618760256959462783L;
|
||||||
|
double* p = (double*) &n;
|
||||||
|
printf("π = %f\n", *p);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
32
DEV1.1/TP15/TP15_reponses.txt
Normal file
32
DEV1.1/TP15/TP15_reponses.txt
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
------- TP15 : Chaînes de caractères -------
|
||||||
|
|
||||||
|
1.
|
||||||
|
|
||||||
|
2.
|
||||||
|
|
||||||
|
3.
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
int main(int argc, char** argv){
|
||||||
|
int compteur;
|
||||||
|
compteur = 0;
|
||||||
|
for (; argc != 0; argc--) {
|
||||||
|
printf("%c ", argv[compteur][0]);
|
||||||
|
compteur++;
|
||||||
|
}
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
4.
|
||||||
|
TO DO
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <string.h>
|
||||||
|
# define TAILLE 26
|
||||||
|
|
||||||
|
int main(int argc, char** argv){
|
||||||
|
printf("%d", (int) argv[0] * (int) argv[1]);
|
||||||
|
}
|
8
DEV1.1/TP15/tests.c
Normal file
8
DEV1.1/TP15/tests.c
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <string.h>
|
||||||
|
# define TAILLE 26
|
||||||
|
|
||||||
|
int main(int argc, char** argv){
|
||||||
|
printf("%d", (int) argv[0] * (int) argv[1]);
|
||||||
|
}
|
188
DEV1.1/TP16/TP16_reponses.txt
Normal file
188
DEV1.1/TP16/TP16_reponses.txt
Normal file
@ -0,0 +1,188 @@
|
|||||||
|
------ TP16 : Fonctions -----
|
||||||
|
|
||||||
|
1.
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
|
||||||
|
void triangle(int hauteur) {
|
||||||
|
int i;
|
||||||
|
int j;
|
||||||
|
for (i = 0; i != hauteur; i++) {
|
||||||
|
for (j = 0; j != i+1; j++) {
|
||||||
|
putchar('*');
|
||||||
|
}
|
||||||
|
putchar('\n');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void carre(int hauteur) {
|
||||||
|
int i;
|
||||||
|
int j;
|
||||||
|
for (i = 0; i != hauteur; i++) {
|
||||||
|
putchar('*');
|
||||||
|
}
|
||||||
|
putchar('\n');
|
||||||
|
for (j = 0; j != hauteur-2; j++) {
|
||||||
|
for (i = 0; i != hauteur; i++) {
|
||||||
|
if (i == 0 || i == hauteur-1) {
|
||||||
|
putchar('*');
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
putchar(' ');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
putchar('\n');
|
||||||
|
}
|
||||||
|
for (i = 0; i != hauteur; i++) {
|
||||||
|
putchar('*');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void menu(void) {
|
||||||
|
char selection;
|
||||||
|
int hauteur;
|
||||||
|
printf("\n__________\n t) Triangle\n c) Carré\n q) Quitter\nVotre choix ? ");
|
||||||
|
scanf("%c", &selection);
|
||||||
|
getchar();
|
||||||
|
if (selection == 'q') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
printf("\nHauteur ?");
|
||||||
|
scanf("%d", &hauteur);
|
||||||
|
getchar();
|
||||||
|
if (selection == 't') {
|
||||||
|
triangle(hauteur);
|
||||||
|
menu();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (selection == 'c') {
|
||||||
|
carre(hauteur);
|
||||||
|
menu();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
menu();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int main(void) {
|
||||||
|
menu();
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
2.
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
# include <time.h>
|
||||||
|
# define TAILLE_TABLEAU 10
|
||||||
|
|
||||||
|
|
||||||
|
void remplissage(int* tab, int tab_len) {
|
||||||
|
int i;
|
||||||
|
for (i = 0; i != tab_len; i++) {
|
||||||
|
tab[i] = (rand() % 100) - 50;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void affichage(int* tab, int tab_len) {
|
||||||
|
int i;
|
||||||
|
for (i = 0; i != tab_len; i++) {
|
||||||
|
printf("+-----");
|
||||||
|
}
|
||||||
|
printf("+\n");
|
||||||
|
for (i = 0; i != tab_len; i++) {
|
||||||
|
if (tab[i] < 10 && tab[i] >= 0) {
|
||||||
|
printf("| %d ", tab[i]);
|
||||||
|
}
|
||||||
|
else if (tab[i] < -9) {
|
||||||
|
printf("| %d ", tab[i]);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
printf("| %d ", tab[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
printf("|\n");
|
||||||
|
for (i = 0; i != tab_len; i++) {
|
||||||
|
printf("+-----");
|
||||||
|
}
|
||||||
|
printf("+\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void remplissage_inverse(int* tab, int* tab_inverse, int tab_len) {
|
||||||
|
int i;
|
||||||
|
for (i = 0; i != tab_len; i++) {
|
||||||
|
tab_inverse[i] = tab[tab_len-i-1];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int main(void){
|
||||||
|
int tab[TAILLE_TABLEAU];
|
||||||
|
int tab_inverse[TAILLE_TABLEAU];
|
||||||
|
srand(time(NULL));
|
||||||
|
remplissage(tab, TAILLE_TABLEAU);
|
||||||
|
affichage(tab, TAILLE_TABLEAU);
|
||||||
|
remplissage_inverse(tab, tab_inverse, TAILLE_TABLEAU);
|
||||||
|
affichage(tab_inverse, TAILLE_TABLEAU);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
3. La fonction ne fait pas son travail car elle ne modifie la variable a que dans le bloc
|
||||||
|
de la fonction. Il faut donc la renvoyer et assigner à la variable x la valeur renvoyée
|
||||||
|
par la fonction zero() :
|
||||||
|
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
|
||||||
|
double zero(double a) {
|
||||||
|
a = 0.0;
|
||||||
|
return a;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int main(void) {
|
||||||
|
double x=37.5;
|
||||||
|
printf("avant : %f\n", x);
|
||||||
|
x = zero(x);
|
||||||
|
printf("après : %f\n", x);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
4.
|
||||||
|
|
||||||
|
PAS FINI
|
||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
|
||||||
|
void inverse_variables(int a, int b) {
|
||||||
|
int temp;
|
||||||
|
temp = a;
|
||||||
|
a = &b;
|
||||||
|
b = &temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int main(void) {
|
||||||
|
int x, y;
|
||||||
|
x = 12;
|
||||||
|
y = 5;
|
||||||
|
printf("avant : x = %d y = %d\n", x, y);
|
||||||
|
inverse_variables(x, y);
|
||||||
|
printf("avant : x = %d y = %d\n", x, y);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
22
DEV1.1/TP16/tests.c
Normal file
22
DEV1.1/TP16/tests.c
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
|
||||||
|
# include <stdio.h>
|
||||||
|
# include <stdlib.h>
|
||||||
|
|
||||||
|
|
||||||
|
void inverse_variables(int a, int b) {
|
||||||
|
int temp;
|
||||||
|
temp = a;
|
||||||
|
a = &b;
|
||||||
|
b = &temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int main(void) {
|
||||||
|
int x, y;
|
||||||
|
x = 12;
|
||||||
|
y = 5;
|
||||||
|
printf("avant : x = %d y = %d\n", x, y);
|
||||||
|
inverse_variables(x, y);
|
||||||
|
printf("avant : x = %d y = %d\n", x, y);
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user