TD_C.git
7 years agoTP 11 exo1: Makefile: differenciate the compiliator flags for libraries
Jérôme Benoit [Thu, 9 Mar 2017 12:36:17 +0000 (13:36 +0100)] 
TP 11 exo1: Makefile: differenciate the compiliator flags for libraries
building.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_13 exo1: Commit the basic exercice structure with a smart buildsystem
Jérôme Benoit [Thu, 9 Mar 2017 11:12:01 +0000 (12:12 +0100)] 
TP_13 exo1: Commit the basic exercice structure with a smart buildsystem

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 12 exo3: Add a basic exercice skeleton for file copy and CLI
Jérôme Benoit [Wed, 8 Mar 2017 22:19:44 +0000 (23:19 +0100)] 
TP 12 exo3: Add a basic exercice skeleton for file copy and CLI
arguments handling

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoFix a typo in the GCC Makefile flags
Jérôme Benoit [Wed, 8 Mar 2017 21:52:13 +0000 (22:52 +0100)] 
Fix a typo in the GCC Makefile flags

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 12 exo2: to not handle scanf() return code for now
Jérôme Benoit [Wed, 8 Mar 2017 21:05:01 +0000 (22:05 +0100)] 
TP 12 exo2: to not handle scanf() return code for now

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 12 exo2: Basic file manipulations
Jérôme Benoit [Wed, 8 Mar 2017 15:34:47 +0000 (16:34 +0100)] 
TP 12 exo2: Basic file manipulations

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_12 exo1: Use a callback in the bubble sort to a compare function
Jérôme Benoit [Wed, 8 Mar 2017 14:48:07 +0000 (15:48 +0100)] 
TP_12 exo1: Use a callback in the bubble sort to a compare function
pointer

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 11 exo2: avoid a function run at each for() loop iteration
Jérôme Benoit [Wed, 8 Mar 2017 14:00:11 +0000 (15:00 +0100)] 
TP 11 exo2: avoid a function run at each for() loop iteration

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo3: Remove a compiler warning
Jérôme Benoit [Wed, 8 Mar 2017 08:15:09 +0000 (09:15 +0100)] 
TP11 exo3: Remove a compiler warning

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo3: Push the trivial implementation
Jérôme Benoit [Tue, 7 Mar 2017 20:51:45 +0000 (21:51 +0100)] 
TP11 exo3: Push the trivial implementation

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo2: Finish the asked features implementation
Jérôme Benoit [Tue, 7 Mar 2017 20:33:22 +0000 (21:33 +0100)] 
TP11 exo2: Finish the asked features implementation

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo2: Respect the specification for displayList() function
Jérôme Benoit [Tue, 7 Mar 2017 19:40:32 +0000 (20:40 +0100)] 
TP11 exo2: Respect the specification for displayList() function

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo2: Makefile: Add a static binary target and some cleanups
Jérôme Benoit [Tue, 7 Mar 2017 19:27:44 +0000 (20:27 +0100)] 
TP11 exo2: Makefile: Add a static binary target and some cleanups

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11: Rename the static binary target to express that it's not
Jérôme Benoit [Tue, 7 Mar 2017 17:47:05 +0000 (18:47 +0100)] 
TP11: Rename the static binary target to express that it's not
statically linked binary but linked only against the embedded libraries

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo2: Add basics UI functions and integrate them is the static and
Jérôme Benoit [Tue, 7 Mar 2017 15:54:13 +0000 (16:54 +0100)] 
TP11 exo2: Add basics UI functions and integrate them is the static and
shared library.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP11 exo1: Properly make linked list function a library shared and static
Jérôme Benoit [Tue, 7 Mar 2017 15:20:48 +0000 (16:20 +0100)] 
TP11 exo1: Properly make linked list function a library shared and static

And build two new binaries for static and dynamic linking against the
library.

To launch the dynamic binary: LD_LIBRARY_PATH=. ./exo1.dynamic

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agofixlet to .gitignore
Jérôme Benoit [Tue, 7 Mar 2017 09:33:44 +0000 (10:33 +0100)] 
fixlet to .gitignore

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 11 exo1: permit to specify linker libs to all relevant target in the
Jérôme Benoit [Mon, 6 Mar 2017 20:37:51 +0000 (21:37 +0100)] 
TP 11 exo1: permit to specify linker libs to all relevant target in the
Makefile

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 11 exo1: Fix the Makefile to produce the shared and the static
Jérôme Benoit [Mon, 6 Mar 2017 20:21:17 +0000 (21:21 +0100)] 
TP 11 exo1: Fix the Makefile to produce the shared and the static
library for linked list

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 11 exo1: Add the tweaked Makefile to make the linked list a library
Jérôme Benoit [Mon, 6 Mar 2017 16:00:12 +0000 (17:00 +0100)] 
TP 11 exo1: Add the tweaked Makefile to make the linked list a library

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP9 exo2: Code cleanup (indentation and unused header declaration)
Jerome Benoit [Sun, 5 Mar 2017 22:29:26 +0000 (23:29 +0100)] 
TP9 exo2: Code cleanup (indentation and unused header declaration)

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: Implement a merge sort function for the linked list.
Jerome Benoit [Sun, 5 Mar 2017 22:14:40 +0000 (23:14 +0100)] 
TP 9 exo2: Implement a merge sort function for the linked list.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoRefinement to .gitignore
Jerome Benoit [Sun, 5 Mar 2017 08:58:26 +0000 (09:58 +0100)] 
Refinement to .gitignore

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: fix a typo in a comment.
Jerome Benoit [Sat, 4 Mar 2017 18:41:43 +0000 (19:41 +0100)] 
TP 9 exo2: fix a typo in a comment.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: correct some types mismatching.
Jerome Benoit [Fri, 3 Mar 2017 22:58:02 +0000 (23:58 +0100)] 
TP 9 exo2: correct some types mismatching.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: Add list_concat() linked list helper function.
Jerome Benoit [Fri, 3 Mar 2017 22:48:46 +0000 (23:48 +0100)] 
TP 9 exo2: Add list_concat() linked list helper function.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: Add link_sort linked list helper function
Jerome Benoit [Fri, 3 Mar 2017 21:45:07 +0000 (22:45 +0100)] 
TP 9 exo2: Add link_sort linked list helper function

The sorting algorithm is bubble sort.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: Better handling of special cases in list_delete()
Jerome Benoit [Fri, 3 Mar 2017 19:29:20 +0000 (20:29 +0100)] 
TP 9 exo2: Better handling of special cases in list_delete()

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 8 exo1: Fix a memory allocation comment.
Jerome Benoit [Fri, 3 Mar 2017 19:12:53 +0000 (20:12 +0100)] 
TP 8 exo1: Fix a memory allocation comment.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: Fix the link_delete function return value or code cleanup.
Jerome Benoit [Fri, 3 Mar 2017 19:01:34 +0000 (20:01 +0100)] 
TP 9 exo2: Fix the link_delete function return value or code cleanup.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoTP 9 exo2: Fix linked list insert helper function.
Jérôme Benoit [Wed, 1 Mar 2017 20:36:16 +0000 (21:36 +0100)] 
TP 9 exo2: Fix linked list insert helper function.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 9 exo2: handle out of bound list operations properly.
Jérôme Benoit [Wed, 1 Mar 2017 19:28:12 +0000 (20:28 +0100)] 
TP 9 exo2: handle out of bound list operations properly.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 9 exo2: Add list_insert and list_delete linked list helpers
Jérôme Benoit [Wed, 1 Mar 2017 18:52:17 +0000 (19:52 +0100)] 
TP 9 exo2: Add list_insert and list_delete linked list helpers
functions.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_9 exo2: update Makefile
Jérôme Benoit [Wed, 1 Mar 2017 13:15:56 +0000 (14:15 +0100)] 
TP_9 exo2: update Makefile

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoUpdate the exercice skeleton Makefile to the one given during the
Jérôme Benoit [Wed, 1 Mar 2017 13:08:23 +0000 (14:08 +0100)] 
Update the exercice skeleton Makefile to the one given during the
course.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 9 exo2: Simplify the return value handling in the list counting
Jérôme Benoit [Wed, 1 Mar 2017 07:59:51 +0000 (08:59 +0100)] 
TP 9 exo2: Simplify the return value handling in the list counting
function.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_9 exo2: preliminary work on linked list helpers.
Jérôme Benoit [Tue, 28 Feb 2017 17:48:17 +0000 (18:48 +0100)] 
TP_9 exo2: preliminary work on linked list helpers.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_8 exo3: Fix the linked list freeing function to properly go to the next link.
Jérôme Benoit [Tue, 28 Feb 2017 14:55:17 +0000 (15:55 +0100)] 
TP_8 exo3: Fix the linked list freeing function to properly go to the next link.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_9 exo1: Fix the linked list freeing function to properly go to the
Jérôme Benoit [Tue, 28 Feb 2017 14:53:17 +0000 (15:53 +0100)] 
TP_9 exo1: Fix the linked list freeing function to properly go to the
next link.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_9 exo1: split the linked list implementation into reusable code
Jérôme Benoit [Tue, 28 Feb 2017 14:46:15 +0000 (15:46 +0100)] 
TP_9 exo1: split the linked list implementation into reusable code

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_8 exo2: be more explicative about a false malloc invocation.
Jérôme Benoit [Tue, 28 Feb 2017 14:32:36 +0000 (15:32 +0100)] 
TP_8 exo2: be more explicative about a false malloc invocation.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_8 exo3: Properly free the memory on all elements of the linked list.
Jérôme Benoit [Tue, 28 Feb 2017 14:28:06 +0000 (15:28 +0100)] 
TP_8 exo3: Properly free the memory on all elements of the linked list.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoEnable more warnings on more TP examples.
Jérôme Benoit [Tue, 28 Feb 2017 14:16:53 +0000 (15:16 +0100)] 
Enable more warnings on more TP examples.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoFix a mismatching type comparison.
Jérôme Benoit [Tue, 28 Feb 2017 14:14:36 +0000 (15:14 +0100)] 
Fix a mismatching type comparison.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoEnable more warning at compilation time.
Jérôme Benoit [Tue, 28 Feb 2017 14:10:59 +0000 (15:10 +0100)] 
Enable more warning at compilation time.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoAdding TP 8 exo3
Jérôme Benoit [Mon, 27 Feb 2017 20:56:06 +0000 (21:56 +0100)] 
Adding TP 8 exo3

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoAdd TP8 exo2
Jérôme Benoit [Mon, 27 Feb 2017 18:48:35 +0000 (19:48 +0100)] 
Add TP8 exo2

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP 8 exo1: be more explicit about the malloc size.
Jérôme Benoit [Mon, 27 Feb 2017 18:24:46 +0000 (19:24 +0100)] 
TP 8 exo1: be more explicit about the malloc size.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoAdd clean target to TP 7 correction Makefile.
Jérôme Benoit [Mon, 27 Feb 2017 18:19:00 +0000 (19:19 +0100)] 
Add clean target to TP 7 correction Makefile.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoAdd TP 7 correction.
Jérôme Benoit [Mon, 27 Feb 2017 18:15:11 +0000 (19:15 +0100)] 
Add TP 7 correction.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoTP_8 exo1
Jérôme Benoit [Mon, 27 Feb 2017 15:04:56 +0000 (16:04 +0100)] 
TP_8 exo1

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoRename one TP number.
Jérôme Benoit [Mon, 27 Feb 2017 14:16:51 +0000 (15:16 +0100)] 
Rename one TP number.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoREADME: fix some typos
Jérôme Benoit [Mon, 27 Feb 2017 13:55:21 +0000 (14:55 +0100)] 
README: fix some typos

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoReorganize the repository structure to deal with more than one TP.
Jérôme Benoit [Mon, 27 Feb 2017 13:13:06 +0000 (14:13 +0100)] 
Reorganize the repository structure to deal with more than one TP.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoREADME: fix some typos.
Jerome Benoit [Sun, 26 Feb 2017 12:14:48 +0000 (13:14 +0100)] 
README: fix some typos.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoexo1.c: enforce an stdout buffer write after a printf not doing it.
Jerome Benoit [Sun, 26 Feb 2017 11:28:20 +0000 (12:28 +0100)] 
exo1.c: enforce an stdout buffer write after a printf not doing it.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoexo1.c: Use VLA array correctly to store integer values and properly initialized it.
Jerome Benoit [Sun, 26 Feb 2017 11:13:37 +0000 (12:13 +0100)] 
exo1.c: Use VLA array correctly to store integer values and properly initialized it.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoexo3.c: Properly initalize a for loop count integer variable.
Jerome Benoit [Sun, 26 Feb 2017 10:47:04 +0000 (11:47 +0100)] 
exo3.c: Properly initalize a for loop count integer variable.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years ago.gitignore: make cygwin users happy.
Jerome Benoit [Sat, 25 Feb 2017 20:04:59 +0000 (21:04 +0100)] 
.gitignore: make cygwin users happy.

Signed-off-by: Jerome Benoit <jerome.benoit@sap.com>
7 years agoexo3.c: implement ROTX where X the number of latin
Jérôme Benoit [Sat, 18 Feb 2017 23:49:59 +0000 (00:49 +0100)] 
exo3.c: implement ROTX where X the number of latin
alphabet letter to rotate.

And make a use of it for X=13.

There's still a lot of rooms for improvements but it works.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoFixlets to the README in the exercice skeleton usage
Jérôme Benoit [Wed, 15 Feb 2017 22:50:45 +0000 (23:50 +0100)] 
Fixlets to the README in the exercice skeleton usage

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoexo3: implement the primaries features requested
Jérôme Benoit [Wed, 15 Feb 2017 22:46:37 +0000 (23:46 +0100)] 
exo3: implement the primaries features requested

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoexo2.c: spell fixes
Jérôme Benoit [Wed, 15 Feb 2017 21:43:15 +0000 (22:43 +0100)] 
exo2.c: spell fixes

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoexo2.c: Finish the implementation of the desired features:
Jérôme Benoit [Wed, 15 Feb 2017 21:20:18 +0000 (22:20 +0100)] 
exo2.c: Finish the implementation of the desired features:

- sequence the chosen operation on the new value and the last operation result;
- implement the main loop exit conditions.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoexo1.c: fix a typo
Jérôme Benoit [Wed, 15 Feb 2017 12:26:17 +0000 (13:26 +0100)] 
exo1.c: fix a typo

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoAdd exo2 preliminary structure
Jérôme Benoit [Tue, 14 Feb 2017 22:39:56 +0000 (23:39 +0100)] 
Add exo2 preliminary structure

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years ago.gitignore: do not try to be smart for now
Jérôme Benoit [Tue, 14 Feb 2017 22:08:06 +0000 (23:08 +0100)] 
.gitignore: do not try to be smart for now

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years ago.gitignore: ignore the binary built INSIDE the exo? dir
Jérôme Benoit [Tue, 14 Feb 2017 22:05:50 +0000 (23:05 +0100)] 
.gitignore: ignore the binary built INSIDE the exo? dir

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agosortFirst(): only change the return value once, not at every iteration
Jérôme Benoit [Tue, 14 Feb 2017 21:50:42 +0000 (22:50 +0100)] 
sortFirst(): only change the return value once, not at every iteration
when a permutation is done.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years ago.gitignore: ignore the default binary's name Makefile output
Jérôme Benoit [Tue, 14 Feb 2017 21:41:11 +0000 (22:41 +0100)] 
.gitignore: ignore the default binary's name Makefile output

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoImplement exo1.c completly:
Jérôme Benoit [Tue, 14 Feb 2017 21:35:05 +0000 (22:35 +0100)] 
Implement exo1.c completly:

* Add user prompt for the array values;
* Optimize sortArray() values inversion loop;
* Beautify a bit the terminal output.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoexo1: swap, no need to declare tmp variable if values are the same
Jérôme Benoit [Sun, 12 Feb 2017 19:32:02 +0000 (20:32 +0100)] 
exo1: swap, no need to declare tmp variable if values are the same

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
7 years agoInitial commit of Polytech'Marseille tutorial C exercices
Jérôme Benoit [Sat, 11 Feb 2017 21:20:10 +0000 (22:20 +0100)] 
Initial commit of Polytech'Marseille tutorial C exercices

* Introduce an exercice solution skeleton with a basic
  Makefile and piece of C elementary structure file.
* Preliminary work on tutorial's exercice one :
- add void swap(int* v1, int* v2); function;
- add void displayArray(int* array, int count) function;
        - add bool sortFirst(int* array, int length) function;
* Document a bit the usage in the README file.

Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>