Ajout TPS + Entrainements

This commit is contained in:
Simoes Lukas
2024-12-10 12:52:05 +01:00
parent 6f3e79de9d
commit f7764aa296
20 changed files with 577 additions and 30 deletions

View File

@@ -0,0 +1,10 @@
complet : carre.o lightness.o
gcc -ansi -pedantic -o carre.o lightness.o
carre.o : carre.c
gcc -ansi -pedantic -c carre.c
lightness.o : lightness.c lightness.h
gcc -ansi -pedantic -c lightness.c
clean :
rm -f carre.o lightness.o
run : complet
./complet

View File

@@ -0,0 +1,50 @@
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
#include"lightness.h"
#define LIGHT 0
#define DARK 1
#define RED 1
#define GREEN 2
#define BLUE 4
#define LIGHT_RED 217
#define DARK_RED 124
#define LIGHT_GREEN 157
#define DARK_GREEN 34
#define LIGHT_BLUE 147
#define DARK_BLUE 19
int hue(void) {
int choice = rand()%3;
if (choice == 0) {
return RED;
} else if (choice == 1) {
return GREEN;
} else /* if (choice == 2) */ {
return BLUE;
}
}
int main(void) {
int l, c, v;
srand(time(NULL));
l = lightness();
c = hue();
if (c == RED) {
v = (l == LIGHT) ? LIGHT_RED : DARK_RED;
} else if (c == GREEN) {
v = (l == LIGHT) ? LIGHT_GREEN : DARK_GREEN;
} else /* if (c == BLUE) */ {
v = (l == LIGHT) ? LIGHT_BLUE : DARK_BLUE;
}
printf("┏━━━━┓\n");
printf("\33[48;5;%dm \33[m┃\n", v);
printf("\33[48;5;%dm \33[m┃\n", v);
printf("┗━━━━┛\n");
return EXIT_SUCCESS;
}

View File

@@ -0,0 +1,9 @@
# include <stdio.h>
# include <stdlib.h>
int main(int argc, char** argv) {
ldiv_t quotient = ldiv(strtol(argv[1], NULL, 10), strtol(argv[2], NULL, 10));
printf("quotient : %ld\n", quotient.quot);
printf("reste : %ld\n", quotient.rem);
return EXIT_SUCCESS;
}

View File

@@ -0,0 +1,12 @@
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
#include "carre.h"
int lightness(void) {
if (time(NULL)%2) {
return LIGHT;
} else {
return DARK;
}
}

View File

@@ -0,0 +1,6 @@
#ifndef LIGHTNESS_H
#define LIGHTNESS_H
int lightness(void);
#endif

View File

@@ -0,0 +1,39 @@
# include <stdio.h>
# include <stdlib.h>
int* suite(int n) {
int* p = NULL;
int compteur = 0;
p = (int*) malloc(sizeof(int));
if (p) {
p[0] = n;
while (!n%2) {
compteur++;
p = (int*) realloc(p, sizeof(int));
n = n/2;
p[compteur] = n;
}
return p;
}
else {
printf("Espace mémoire insuffisant.");
}
}
void afficher_tableau(int* t) {
int i;
size_t max = *(&t + 1) - t;
printf("%lu", max);
for (i = 0; i != max ; i++) {
printf("| %d", t[i]);
}
printf("\n");
}
int main(void) {
int tab[5] = {2, 5, 8, 9, 1};
afficher_tableau(tab);
return EXIT_SUCCESS;
}