From 9fe033ea88c2f705ec18c232873d056e0c229d72 Mon Sep 17 00:00:00 2001 From: Gaspard Coulet Date: Wed, 28 Apr 2021 23:05:53 +0200 Subject: Initial commit --- sem_3/Programm/TP2/ex1/exo | Bin 0 -> 14053 bytes sem_3/Programm/TP2/ex1/itv.cpp | 71 +++++++++++++++++++++++++ sem_3/Programm/TP2/ex1/itv.h | 20 +++++++ sem_3/Programm/TP2/ex1/jeudelaviemine/cell.cpp | 43 +++++++++++++++ sem_3/Programm/TP2/ex1/jeudelaviemine/cell.h | 24 +++++++++ sem_3/Programm/TP2/ex1/jeudelaviemine/main | Bin 0 -> 13975 bytes sem_3/Programm/TP2/ex1/jeudelaviemine/main.cpp | 25 +++++++++ sem_3/Programm/TP2/ex1/main.cpp | 12 +++++ sem_3/Programm/TP2/ex1/makefile | 4 ++ sem_3/Programm/TP2/exo10/exo10.c | 19 +++++++ sem_3/Programm/TP2/exo10/main | Bin 0 -> 8551 bytes sem_3/Programm/TP2/exo11/exo11.c | 23 ++++++++ sem_3/Programm/TP2/exo11/main | Bin 0 -> 8651 bytes sem_3/Programm/TP2/exo13/exo13.c | 0 sem_3/Programm/TP2/exo13/impair.c | 5 ++ sem_3/Programm/TP2/exo13/impair.h | 1 + sem_3/Programm/TP2/exo13/pair.c | 4 ++ sem_3/Programm/TP2/exo13/pair.h | 1 + sem_3/Programm/TP2/exo13/spair | Bin 0 -> 8695 bytes sem_3/Programm/TP2/exo13/spair.c | 11 ++++ 20 files changed, 263 insertions(+) create mode 100644 sem_3/Programm/TP2/ex1/exo create mode 100644 sem_3/Programm/TP2/ex1/itv.cpp create mode 100644 sem_3/Programm/TP2/ex1/itv.h create mode 100644 sem_3/Programm/TP2/ex1/jeudelaviemine/cell.cpp create mode 100644 sem_3/Programm/TP2/ex1/jeudelaviemine/cell.h create mode 100644 sem_3/Programm/TP2/ex1/jeudelaviemine/main create mode 100644 sem_3/Programm/TP2/ex1/jeudelaviemine/main.cpp create mode 100644 sem_3/Programm/TP2/ex1/main.cpp create mode 100644 sem_3/Programm/TP2/ex1/makefile create mode 100644 sem_3/Programm/TP2/exo10/exo10.c create mode 100644 sem_3/Programm/TP2/exo10/main create mode 100644 sem_3/Programm/TP2/exo11/exo11.c create mode 100644 sem_3/Programm/TP2/exo11/main create mode 100644 sem_3/Programm/TP2/exo13/exo13.c create mode 100644 sem_3/Programm/TP2/exo13/impair.c create mode 100644 sem_3/Programm/TP2/exo13/impair.h create mode 100644 sem_3/Programm/TP2/exo13/pair.c create mode 100644 sem_3/Programm/TP2/exo13/pair.h create mode 100644 sem_3/Programm/TP2/exo13/spair create mode 100644 sem_3/Programm/TP2/exo13/spair.c (limited to 'sem_3/Programm/TP2') diff --git a/sem_3/Programm/TP2/ex1/exo b/sem_3/Programm/TP2/ex1/exo new file mode 100644 index 0000000..3c36d84 Binary files /dev/null and b/sem_3/Programm/TP2/ex1/exo differ diff --git a/sem_3/Programm/TP2/ex1/itv.cpp b/sem_3/Programm/TP2/ex1/itv.cpp new file mode 100644 index 0000000..844d859 --- /dev/null +++ b/sem_3/Programm/TP2/ex1/itv.cpp @@ -0,0 +1,71 @@ +#include +#include"itv.h" + +float Itv::lenght () { + return bornesup-borneinf; +} + +void Itv::afficher () { + std::cout<<"["<=borneinf; +} +Itv::Itv () { + borneinf =0; + bornesup = 0; +} +Itv::Itv(float a, float b) { + bornesup = b; + borneinf = a; +} +void Itv::modifborne (int i, float f) { + if (i == 0 ) { + borneinf = f; + } + else if ( i == 1) { + bornesup = f; + } + else { + std::cout<< "Borne invalide, le premier param doit valoir 0 ( pour borne inf) ou 1 ( pour borne sup)" << std::endl; + } +} + +float Itv::getborne (int i) { + if (i == 0 ) { + return borneinf; + } + else if ( i == 1) { + return bornesup; + } + else { + std::cout<< "Borne invalide, le premier param doit valoir 0 ( pour borne inf) ou 1 ( pour borne sup)" << std::endl; + return 42; + } +} + +bool Itv::estegal ( Itv inter) { + return getborne(0)==inter.getborne(0) && getborne(1) == inter.getborne(1); +} + +bool Itv::estinclusstr ( Itv inter ) { + return getborne(0) > inter.getborne(0) && getborne(1) < inter.getborne(1); +} + +bool Itv::disjoint ( Itv inter) { + return getborne(1) < inter.getborne(0) || getborne(0) > inter.getborne(1); +} + +bool Itv::accole ( Itv inter) { + return getborne(0) == inter.getborne(0) || getborne(0) == inter.getborne(1) || getborne(1) == inter.getborne(0)|| getborne(1) == inter.getborne(1); +} + +bool Itv::imbrique ( Itv inter) { + return !accole(inter) && !disjoint(inter) && !estinclusstr(inter) && !estegal(inter); +} + +void Itv::translat ( float f) { + borneinf += f; + bornesup += f; +} diff --git a/sem_3/Programm/TP2/ex1/itv.h b/sem_3/Programm/TP2/ex1/itv.h new file mode 100644 index 0000000..e8835cd --- /dev/null +++ b/sem_3/Programm/TP2/ex1/itv.h @@ -0,0 +1,20 @@ +class Itv { + private : + float borneinf, bornesup; + public : + Itv(); + Itv(float,float); + float lenght(); + void afficher(); + bool appartient(float); + void modifborne(int,float); + float getborne(int); + + bool estegal (Itv); + bool estinclusstr(Itv); + bool disjoint(Itv); + bool accole(Itv); + bool imbrique(Itv); + void translat(float); + +}; diff --git a/sem_3/Programm/TP2/ex1/jeudelaviemine/cell.cpp b/sem_3/Programm/TP2/ex1/jeudelaviemine/cell.cpp new file mode 100644 index 0000000..9c17eb7 --- /dev/null +++ b/sem_3/Programm/TP2/ex1/jeudelaviemine/cell.cpp @@ -0,0 +1,43 @@ +#include "cell.h" +#include + +void cell::setColor(color nouvelle){ + couleur = nouvelle; +} + +color cell::getColor(){ + return couleur; +} + +void cell::setVivante(bool a) { + statut = a; +} +int cell::getX () { + return x; +} + +int cell::getY () { + return y; +} +bool cell::getVivante() { + return statut; +} +void cell::printcell () { + std::cout << "La cellule ( à l'adresse mémoire " << this << " ) = {" << (statut ? "vivante" : "morte")<<", " << x << "x"< +#include"cell.h" + +bool cell_est_couleur(cell&, color); +void test_cell ( cell&); +int main ( int argc, char ** argv) { + cell cell1(1,2,true); + cell cell2(1,3,false); + std::cout<<"L'objet c1 est a l'adresse memoire" << &cell1<< std::endl; + std::cout<<"L'objet c2 est a l'adresse memoire" << &cell2<< std::endl; + test_cell(cell1); + test_cell(cell2); + std::cout<< (cell1.estvoisineenVie(cell2) ? "cell1 est voisine de cell2" : "cell1 n'est pas voisine de cell2")< +#include"itv.h" + +int main () { + Itv inter1; + Itv inter2(0,24.4); + inter1.afficher(); + inter2.afficher(); + inter2.translat(0.5); + inter2.afficher(); + return 0; +} diff --git a/sem_3/Programm/TP2/ex1/makefile b/sem_3/Programm/TP2/ex1/makefile new file mode 100644 index 0000000..fa907f2 --- /dev/null +++ b/sem_3/Programm/TP2/ex1/makefile @@ -0,0 +1,4 @@ +CC = g++ +FLAGS = -Wall +LIBS = + diff --git a/sem_3/Programm/TP2/exo10/exo10.c b/sem_3/Programm/TP2/exo10/exo10.c new file mode 100644 index 0000000..fc2f92e --- /dev/null +++ b/sem_3/Programm/TP2/exo10/exo10.c @@ -0,0 +1,19 @@ +#include +#include + +int puiss (int x, int y) { + return ( y == 0 ? 1 : x * ( puiss(x, y-1))); +} + +int main ( int argc, char ** argv) { + int lg = 0; int ret =0; + while (argv[1][lg]!=0) { + lg ++; + } + lg --; + for ( int i=lg; i >= 0; i --) { + ret += puiss(10,lg-i)*((int)(argv[1][i] )- 48); + } + printf("%d \n", ret); + return 0; +} diff --git a/sem_3/Programm/TP2/exo10/main b/sem_3/Programm/TP2/exo10/main new file mode 100644 index 0000000..a617d42 Binary files /dev/null and b/sem_3/Programm/TP2/exo10/main differ diff --git a/sem_3/Programm/TP2/exo11/exo11.c b/sem_3/Programm/TP2/exo11/exo11.c new file mode 100644 index 0000000..e0567c2 --- /dev/null +++ b/sem_3/Programm/TP2/exo11/exo11.c @@ -0,0 +1,23 @@ +#include +#include + +int puiss (int x, int y) { + return ( y == 0 ? 1 : x * ( puiss(x, y-1))); +} + +int main (int argc, char** argv) { + int ordre =1; int cp = atoi(argv[1]); int bc = cp; + while (cp / 10!= 0) { + ordre ++; + cp = cp /10; + } + printf("%d\n", ordre); + cp = bc; + char nbchar[ordre]; + for ( int i = 0; i < ordre; i ++) { + nbchar[i] = cp / puiss(10, ordre -i-1) + 48; + cp = cp % puiss(10,ordre-i -1); + } + printf("%s\n", nbchar); + return 0; +} diff --git a/sem_3/Programm/TP2/exo11/main b/sem_3/Programm/TP2/exo11/main new file mode 100644 index 0000000..3aeee19 Binary files /dev/null and b/sem_3/Programm/TP2/exo11/main differ diff --git a/sem_3/Programm/TP2/exo13/exo13.c b/sem_3/Programm/TP2/exo13/exo13.c new file mode 100644 index 0000000..e69de29 diff --git a/sem_3/Programm/TP2/exo13/impair.c b/sem_3/Programm/TP2/exo13/impair.c new file mode 100644 index 0000000..f61f5bc --- /dev/null +++ b/sem_3/Programm/TP2/exo13/impair.c @@ -0,0 +1,5 @@ +#include "pair.h" + +int impair ( unsigned int i) { + return (i == 0 ? 0 : ( pair(i-1))); +} diff --git a/sem_3/Programm/TP2/exo13/impair.h b/sem_3/Programm/TP2/exo13/impair.h new file mode 100644 index 0000000..196468b --- /dev/null +++ b/sem_3/Programm/TP2/exo13/impair.h @@ -0,0 +1 @@ +int impair(unsigned int); diff --git a/sem_3/Programm/TP2/exo13/pair.c b/sem_3/Programm/TP2/exo13/pair.c new file mode 100644 index 0000000..05b9a0a --- /dev/null +++ b/sem_3/Programm/TP2/exo13/pair.c @@ -0,0 +1,4 @@ +#include "impair.h" +int pair(unsigned int i){ + return (i == 0 ? 1 : impair(i-1)); +} diff --git a/sem_3/Programm/TP2/exo13/pair.h b/sem_3/Programm/TP2/exo13/pair.h new file mode 100644 index 0000000..2b5acab --- /dev/null +++ b/sem_3/Programm/TP2/exo13/pair.h @@ -0,0 +1 @@ +int pair ( unsigned int ); diff --git a/sem_3/Programm/TP2/exo13/spair b/sem_3/Programm/TP2/exo13/spair new file mode 100644 index 0000000..fe2dd14 Binary files /dev/null and b/sem_3/Programm/TP2/exo13/spair differ diff --git a/sem_3/Programm/TP2/exo13/spair.c b/sem_3/Programm/TP2/exo13/spair.c new file mode 100644 index 0000000..32fa224 --- /dev/null +++ b/sem_3/Programm/TP2/exo13/spair.c @@ -0,0 +1,11 @@ +#include +#include +#include "pair.h" +#include "impair.h" + +int main ( int argc, char ** argv) { + int param = atoi(argv[1]); + if (pair(param)) printf("%d est pair\n", param); + else printf("%d est impair\n", param); + return 0; +} -- cgit v1.2.3