{"id":15047154,"url":"https://github.com/raveriss/cpp09","last_synced_at":"2026-02-26T16:02:48.722Z","repository":{"id":245286432,"uuid":"817779830","full_name":"raveriss/cpp09","owner":"raveriss","description":"C++ Module 09: STL. Ce module contient des exercices pour se familiariser avec la Standard Template Library (STL) en C++98. Les exercices incluent la manipulation de conteneurs standards et l'implémentation d'algorithmes de tri et de notation polonaise inversée.","archived":false,"fork":false,"pushed_at":"2024-08-25T20:40:26.000Z","size":2735,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T22:28:15.411Z","etag":null,"topics":["algorithms","bitcoin","bitcoin-exchange","cpp","cpp98","data-structures","merge-sort","reverse-polish-notation","stl"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/raveriss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-20T12:26:50.000Z","updated_at":"2024-08-25T20:40:29.000Z","dependencies_parsed_at":"2024-06-21T05:41:55.152Z","dependency_job_id":"55cd9147-0fc6-4d9b-83c3-a158957e4538","html_url":"https://github.com/raveriss/cpp09","commit_stats":null,"previous_names":["raveriss/cpp09"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raveriss%2Fcpp09","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raveriss%2Fcpp09/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raveriss%2Fcpp09/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raveriss%2Fcpp09/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raveriss","download_url":"https://codeload.github.com/raveriss/cpp09/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254341100,"owners_count":22054982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithms","bitcoin","bitcoin-exchange","cpp","cpp98","data-structures","merge-sort","reverse-polish-notation","stl"],"created_at":"2024-09-24T20:54:53.331Z","updated_at":"2026-02-26T16:02:43.702Z","avatar_url":"https://github.com/raveriss.png","language":"C++","readme":"# cpp09 - École 42 | Paris\n\n## Description\n\nCe projet fait partie des exercices du module CPP09. Il a pour but de renforcer les compétences en programmation C++98, en mettant l'accent sur l'utilisation de la Standard Template Library (STL) en C++.\n\n## Exercise 00: Bitcoin Exchange\n\nL'objectif de l'exercice 00 consiste à créer un programme qui affiche la valeur d’une certaine quantité de bitcoins à une certaine date. Vous allez développer un programme qui utilise une base de données au format CSV pour représenter le prix du bitcoin au fil du temps.\n\n### Structure du Projet\n\nLe projet est organisé de la manière suivante :\n\n- **Directory:** `ex00/`\n- **Files submitted:**\n  - `BitcoinExchange.hpp`\n  - `BitcoinExchange.cpp`\n  - `Makefile`\n  - `main.cpp`\n\n### Description des Fichiers\n\n- `BitcoinExchange.hpp`: Contient la déclaration des classes et fonctions utilisées dans le projet.\n- `BitcoinExchange.cpp`: Contient l'implémentation des classes et fonctions.\n- `main.cpp`: Contient le point d'entrée du programme et la logique principale.\n- `Makefile`: Fichier pour automatiser la compilation du projet.\n\n### Compilation\n\nPour compiler le projet, utilisez la commande suivante dans le terminal :\n\n```bash\nmake\n```\nCette commande génère un exécutable nommé btc dans le répertoire courant.\n\n## Exécution\nAprès la compilation, exécutez le programme avec la commande :\n\n```bash\n./btc input.txt\n```\nRemplacez input.txt par le fichier contenant les données à évaluer.\n\n## Exercise 01: Reverse Polish Notation\nL'objectif de l'exercice 01 consiste à créer un programme capable de traiter des expressions mathématiques en notation polonaise inversée.\n\n## Structure du Projet\nLe projet est organisé de la manière suivante :\n\n- **Directory:** `ex01/`\n- **Files submitted:**\n  - `RPN.hpp`\n  - `RPN.cpp`\n  - `Makefile`\n  - `main.cpp`\n### Description des Fichiers\n- `RPN.hpp`: Contient la déclaration des classes et fonctions utilisées dans le projet.\n- `RPN.cpp`: Contient l'implémentation des classes et fonctions.\n- `main.cpp`: Contient le point d'entrée du programme et la logique principale.\n- `Makefile`: Fichier pour automatiser la compilation du projet.\n## Compilation\nPour compiler le projet, utilisez la commande suivante dans le terminal :\n\n```bash\nmake\n```\nCette commande génère un exécutable nommé RPN dans le répertoire courant.\n\n## Exécution\nAprès la compilation, exécutez le programme avec la commande :\n\n```bash\n./RPN \"8 9 * 9 - 9 - 9 - 4 - 1 +\"\n```\nVous pouvez remplacer l'expression par n'importe quelle autre expression en notation polonaise inversée.\n\n## Exercise 02: PmergeMe\nL'objectif de l'exercice 02 consiste à créer un programme qui trie une séquence d'entiers positifs en utilisant l'algorithme \"merge-insert\".\n\n## Structure du Projet\nLe projet est organisé de la manière suivante :\n\n- **Directory:** `ex02/`\n- **Files submitted:**\n  - `PmergeMe.hpp`\n  - `PmergeMe.cpp`\n  - `Makefile`\n  - `main.cpp`\n### Description des Fichiers\n`PmergeMe.hpp`: Contient la déclaration des classes et fonctions utilisées dans le projet.\n`PmergeMe.cpp`: Contient l'implémentation des classes et fonctions.\n`main.cpp`: Contient le point d'entrée du programme et la logique principale.\n`Makefile`: Fichier pour automatiser la compilation du projet.\n## Compilation\nPour compiler le projet, utilisez la commande suivante dans le terminal :\n\n```bash\nmake\n```\nCette commande génère un exécutable nommé PmergeMe dans le répertoire courant.\n\n## Exécution\nAprès la compilation, exécutez le programme avec la commande :\n\n```bash\n./PmergeMe 3 5 9 7 4\n```\nVous pouvez remplacer les arguments par n'importe quelle séquence d'entiers positifs.\n\n## Fonctionnalités\nGestion des exceptions : Le programme démontre l'utilisation des exceptions pour gérer les erreurs de manière propre et sécurisée.\nSuivi des bonnes pratiques de codage C++98 : Respect strict des conventions de codage et des standards de C++98.\nStructure de code modulaire et maintenable : Le code est organisé de manière à être facilement compréhensible et extensible.\n## Contributeurs\nraveriss\n\n## Remarques\nCe projet suit les conventions de codage strictes pour C++98.\n\n## Ressources Utilisées\n- [Apprenez à programmer en C++ sur OpenClassrooms](https://openclassrooms.com/fr/courses/1894236-apprenez-a-programmer-en-c)\n- [Programmez en orienté objet avec C++ sur OpenClassrooms](https://openclassrooms.com/fr/courses/7137751-programmez-en-oriente-objet-avec-c)\n- [Apprenez à programmer en C++ sur codecademy](https://www.codecademy.com/catalog/language/c-plus-plus)\n- [Introduction à C++ sur Sololearn](https://www.sololearn.com/fr/learn/courses/c-plus-plus-introduction)\n- [C++ Intermédiaire sur Sololearn](https://www.sololearn.com/fr/learn/courses/c-plus-plus-intermediate)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraveriss%2Fcpp09","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraveriss%2Fcpp09","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraveriss%2Fcpp09/lists"}