Giter VIP home page Giter VIP logo

epitech's Introduction

Epitech Computer Science School Projects


Some Epitech school projects made in 2014/2015.


Table of Contents

  • CPool: Unix and C Basics
    • The famous Epitech "Pool", 4 weeks of intense programming to learn all the basics of programmation.
  • CProjects: Advanced C language
    • A collection of projects written in C.
  • CppPool: C++ Basics
    • Second "Piscine" of Epitech, C++ programs to learn Object-oriented programming.
  • CppProjects: Advanced C++ Language
    • A collection of projects written in C++.
  • Mathematics: Statistics and Probabilities
    • A collection of mathematicals programs mainly written in python.
  • SpaceBomber: First Deployable Video Game with AI
    • Video Game Project written in C++, reproduction of the arcade game BomberMan but with space ships.

CPool: Unix and C Basics

Back to top

  • Day01: Unix Environments

    • linux files, scripts, git
  • Day02: Shell language

    • linux bash commands: ls, cat, grep, cut, find, sed, wc
  • Day03: First C Programming

    • my_aff_alpha.c : display alphabet.
    • my_aff_chiffre.c : display digits.
    • my_aff_comb.c : display in the ascending order all the combinations of three different digits in the ascending order.
    • my_revalpha.c : display alphabet in the reverse order.
    • my_isneg.c : check and display if the number in parameter is negative.
    • my_put_nbr.c : display a number from a string given as parameter.
  • Day04: Pointers

    • my_putstr.c : display string from a string given as parameter.
    • my_sort_int_tab.c : sort an integer array.
    • my_strlen.c : return lenght of a given string parameter.
    • my_swap.c : swap two integer given as parameter.
    • my_isneg.c : check and display if the number in parameter is negative.
    • my_put_nbr.c : display a number from a given string parameter.
  • Day05: Recursivity

    • my_factorielle_it.c : return the factoriel of an integer given in parameter in a iterative way.
    • my_factorielle_rec.c : return the factoriel of an integer given in parameter in a recursive way.
    • my_power_it.c : return the power of an integer given in parameter in a iterative way.
    • my_power_rec.c : return the power of an integer given in parameter in a recursive way.
  • Day06: String Manipulation

    • my_strcpy.c : copies a string into another.
    • my_strncpy.c : copies n characters from a string into another.
    • my_revstr.c : reverses a string.
    • my_strstr.c : Reproduce the behavior of the strstr function.
    • my_strcmp.c : Reproduce the behavior of the strcmp function.
    • my_strncmp.c : Reproduce the behavior of the strncmp function.
    • my_strupcase.c : puts every letter of every word in it in uppercase.
    • my_strlowcase.c : puts every letter of every word in it in lowercase.
  • Day07: Libmy, Arguments

    • my_strcat.c : copies a string after another.
    • my_strncat.c : concatenates n characters of the src string to the end of the dest string.
    • my_aff_params.c : displays its arguments.
    • my_rev_params.c : displays all the arguments received on the command line in reverse order.
    • lib : creation of a personal libmy.a
  • Day08: Compilation, Allocation

    • my_strdup.c : allocates memory and copies the string given as argument in it.
  • Day09: Structures

    • my_macroABS.h : Write a macro, named ABS, that replaces an argument with an absolute value.
    • my.h : Write your my.h header file that contains the prototypes of all the functions exposed by your libmy.a.
  • Day10: Do-op and Makefile

    • How to make a Makefile
    • do-op.c : return the power of an integer given in parameter in a recursive way.
  • Day11: Linked List

    • my_params_in_list.c : creates a new list from the command line arguments.
    • my_list_size.c : returns the number of elements on the list.
    • my_rev_list.c : reverses the order of the list’s elements.
  • Day12: File Descriptors

    • cat.c : Reproduce the behavior of the cat bash command line.
  • Rushs:

    • colle1-1.c : display a square with designated pattern.
    • colle2.c : display a string given in parameters by adding spaces to it and then by removing them.
    • colle3.c : displays the name of rush1, and the dimensions of his square.
    • sapin.c : displays a fir tree, based on its given size.
    • match.c : returns the number of combinations that match between two strings.
    • eval_expr : function that takes a string as parameter, which represents a mathematical expression, evaluates this expression and returns the result as an integer.
  • Subjects: You will be able to find all the original subjects in the file Subjects

CProjects: Advanced C language

Back to top

description in progress.

CppPool: C++ Basics

Back to top

  • Day01: Storage Classes

    • white_rabbit.c : function that follow Alice’s journey.
    • menger : display a fractal curve based on squares, with the size and depth given in parameters.
    • bitmap : build a .bmp file.
    • drawing.c : draw square in a bmp file.
    • pyramid.c : return the shortest path to the pyramid’s exit.
  • Day02m: Pointers and Memory

    • mul_div.c : calculates the sum and product of the first and second parameters with pointers.
    • mem_ptr.c : concatenates str1 and str2 in parameters. The resulting string is stored in the pointer pointed by res.
    • tab_to_2dtab.c : takes an array of integers as its tab parameter, and uses it to create a bidimensional array of length lines and width columns.
    • func_ptr.c : build a few function pointers.
    • castmania.c : understanding and mastering casts.
  • Day02a: C Data Structures

    • simple_list.c : build a simple linked list, with main manipulation functions.
    • simple_btree.h : create a set of functions that will let you manipulate a binary tree.
    • generic_list.c : create a generic list.
    • stack.h : create a stack based on the previously created generic list.
    • queue.h : create a queue based on the previously created generic list.
    • map.h : create a map based on the previously created generic list.
    • tree_traversal.h : iterate over a tree in a generic way, using containers.
  • Day03: Advanced String Manipulation

    • ex00 : create a String module, init and destructor function.
    • ex01 : sets the content of the current instance to the string parameters.
    • ex02 : appends a parameter to the content of the current instance and the opposite function.
    • ex03 : returns the char at the pos position of the current instance, or -1 if the position is invalid.
    • ex04 : empties the content of the current instance.
    • ex05 : returns the size of the string, or -1 if the string pointer is NULL.
    • ex06 : compares the content of the current instance to that of str. Results are the same as the strcmp function.
    • ex07 : copies n characters from the current instance’s content, starting from the pos position, into s. Returns the number of characters copied.
    • ex08 : returns the buffer contained in the current instance..
    • ex09 : returns 1 if the string is empty, -1 otherwise.
    • ex10 : searches for the first occurence of str’s content in the current instance, starting from the pos position.
    • ex11 : insert : copies str into the current instance, at the pos position.
    • ex12 : returns the content of the current instance converted into an int. Behaves like the atoi(3) function.
    • ex13 : returns an array of strings filled with the content of the current instance split using the separator delimiter.
    • ex14 : displays the content of the current instance to the standard output.
  • Day06: IOStream, String and Objects

    • my_cat.cpp : write a simplified cat(1) command.
    • my_convert_temp.cpp : convert temperatures from the Celsius scale to the Fahrenheit scale, and vice-versa.
    • sickkoala.cpp : simulation of your dear Koalas’ health, with the creation of a koala class.
    • koalanurse.cpp : create the koalanurse class.
    • koaladoctor.cpp : create a doctor class to give instructions to the nurses.
    • ex05 : create lists for the classes created before.
  • Day07m: Creation of Starfleet, Polymorphism, Namespaces

    • Federation.cpp : create a Federation namespace, which will contain all the elements that allow the Federation to exist.
    • Borg.cpp : create a Borg namespace containing a Ship class.
    • Destination.hh : Destination is an enumeration defined in the Destination.hh file.
  • Day07a: Skat, new, delete and Smart Pointers

    • skat.cpp : inplement the skat class.
  • Day08: Droids, Coplien form and Default delete

    • droid.cpp : creation of the droid class.
    • droidmemory.cpp : add experienceacquired, and FingerPrint,theDroidMemory’sid,storedasasize_t.
  • Day09: Inheritance

    • character.c : create a simple Character class, getLvl(), getPv(), getPower().
    • warrior.cpp : create a warrior class.
    • ex02 : create Mage, Priest class.
    • ex03 : add Paladin class.
    • ex04 : add Hunter class.
  • Day10: Override and final

    • ex00 : Sorcerer, Peon, Victim classes.
    • ex01 : Weapons classes.
    • ex03 : omplete the definition of the following AMateria class, and implement the necessary member functions.
  • Day13: Encapsulation, Canonical form, Operators and Nested Classes

    • ex00 : Picture and Toy class.
    • ex01 : re-use the two classes from the previous exercise and make them comply with the canonical form.
    • ex02 : add two values to the ToyType enumeration: BUZZ and WOODY, and create two new Buzz and Woody classes.
    • ex03 : add a speak method to the Toy class, taking the statement to say as a parameter.
    • ex04 : add operators to classes.
    • ex05 : add a speak_es method to the Toy class, with the same signature as speak.
  • Day14m: Casting Spells

    • ex00 : implement the Fruit, Lemon and Banana classes.
    • ex01 : Sorting the FruitBoxes will be done by hand. It will be done by a LittleHand. Implement the LittleHand class.
  • Day14a: Errors, Units Tests

    • ex00 : implement the error reporting system.
    • ex01 : unit tests.
    • ex02 : implement a CommunicationDevice : use the CommunicationAPI and handle all its errors.
    • ex03 : design a generic class to ensure the release of dynamically allocated compo- nents of the rover.
    • ex04 : Our ScopedPtr is nice, but we can’t copy it. Let’s implement a RefPtr that can be stored, copied, and still takes care of deleting the object!
  • Day15: Templates

    • ex00 : create templates that should generate functions that can be called with any type of parameter, as long as they have the same type and support all comparison operators.
    • ex01 : write the compare function template. It takes two parameters of the same type, and returns an int.
    • ex02 : several function that returns min.
    • ex03 : implement the foreach function template. It will let you walk over an array and call a function for each element in it.
    • ex04 : write the equal function template that takes as parameters two constant references to a given type. It must return true if the two parameters are equal, and false otherwise.
    • ex05 : write an array class template that contains elements of type T.
  • Day16: The StandarT Library

    • ex00 : create a Parser class.
    • ex01 : create a DomesticKoala class which will represent a Koala that can learn to do things. Everything a Koala can do will be a KoalaAction member function.
    • ex02 : create an event handler using an std::list. This event handler will let you schedule actions at a T time, know the action scheduled at a given time, add T time units to the current time, and many other things.
  • Day17: Algorithms

    • ex00 : create a do_find function template taking 2 parameters: reference to a templated type and an integer.
    • ex01 : fill in the blanks using the appropriate STL algorithms in MyAlgorithms.hpp.
    • ex02 : create a Cesar class implementing the IEncryptionMethod interface.
    • ex03 : re-use all the files from the previous exercise and write the Encryption class.
  • Rushs:

    • SKL : implement a program with the C language, in a an object-oriented way.
    • Santa : create a program to help santa claus to systemize his gift wrapping chain in C++.
    • GKrellm : vreate your own GNU Krell Monitor.
  • Subjects: You will be able to find all the original subjects in the file Subjects

CppProjects: Advanced C++ Language

Back to top

  • trade : build a trader bot.
  • plazza : realize a scrapper, which is composed of a main program, with an user interface, that accepts new commands, of several process, themselves with several threads, themselves looking for mails inside several files.

Mathematics: Statistics and Probabilities

Back to top

See this README.md to get more details.

SpaceBomber: First Deployable Video Game with AI

Back to top

See this README.md to get more details.

epitech's People

Contributors

gwendolinerodriguez avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.