diff --git a/Java/Analyzer.java b/Java/Analyzer.java index 389163ac2eb71d78183b2ae9d0869316f8176c4b..8bb758cc7afcc619c0033af13d429b9c563742ee 100644 --- a/Java/Analyzer.java +++ b/Java/Analyzer.java @@ -30,7 +30,7 @@ public class Analyzer { BigDecimal x_big = new BigDecimal(x); cost.add(x); cumulative_cost.add( (!cumulative_cost.isEmpty()) ? cumulative_cost.get(cumulative_cost.size()-1).add(x_big) : x_big); - BigDecimal x_square = x_big.multiply(x_big); + BigDecimal x_square = x_big.multiply(x_big); cumulative_square = cumulative_square.add(x_square); } diff --git a/Java/Main.java b/Java/Main.java index 4f0dac33e3cf5ee6feef544bda157d41146e64d5..afaf926c21b23a11f1e112ba135dafb4771abe78 100644 --- a/Java/Main.java +++ b/Java/Main.java @@ -28,8 +28,8 @@ public class Main { // Enregistrement du nombre de copies efféctuées par l'opération. // S'il y a eu réallocation de mémoire, il a fallu recopier tout le tableau. copy_analysis.append( (memory_allocation == true)? i: 1); - // Enregistrement de l'espace mémoire non-utilisé. - memory_analysis.append( a.capacity() - a.size() ); + // Enregistrement de l'espace mémoire non-utilisé. + memory_analysis.append( a.capacity() - a.size() ); } // Affichage de quelques statistiques sur l'expérience. @@ -41,6 +41,6 @@ public class Main { // Sauvegarde les données de l'expérience: temps et nombre de copies effectuées par opération. time_analysis.save_values("../plots/dynamic_array_time_java.plot"); copy_analysis.save_values("../plots/dynamic_array_copy_java.plot"); - memory_analysis.save_values("../plots/dynamic_array_memory_java.plot"); + memory_analysis.save_values("../plots/dynamic_array_memory_java.plot"); } } diff --git a/README.md b/README.md index 7e4f98f1647b484c9f66e079dd7c6e299983b3da..6bc64ef8e1dbd71d253a18e87f6cd039a4317a9c 100644 --- a/README.md +++ b/README.md @@ -1,56 +1,36 @@ -# Compilation et exécution en C: +# Sujet de TP 1 -cd C/ +Vous travaillerez cette année en binôme. Il ne sera pas possible de changer +de binôme en cours de semestre. -make +## Exercice 1: git +### Clonez le projet sda sur votre compte étudiant -./arraylist_analysis +Dans votre terminal, placez vous dans le répertoire où vous souhaitez créer le dossier +`git clone git@depot.lipn.univ-paris13.fr:david/sda.git` -make clean +`cd sda` -cd .. +### Vérifiez que vous êtes dans la branche tp1 -# Compilation et exécution en C++: +`git branch` -cd CPP/ +Si n'êtes pas dans la branche tp1, tapez -make +`git checkout tp1` -./arraylist_analysis +### Créez votre propre branche -make clean +Le nom de votre branche est constitué de vos numéros d'étudiants séparés par un `_` -cd .. +`git checkout -b NUMERO1_NUMERO2` -# Compilation et exécution en Java: +### Ajoutez un fichier AUTHORS.md à votre branche -cd Java +A la racine du projet, créez un fichier `AUTHORS.md` contenant 2 lignes avec vos noms, prénoms et numéros d'étudiants. -javac * - -java Main - -cd .. - -# Exécution en Python - -cd Python - -python main.py - -cd .. - -# Observation des résultats -### Dans le répertoire plots, lisez le contenu du fichier plot_result - -cd plots -more plot_result - -### puis lancez ce script avec gnuplot - -gnuplot plot_result - -### Regardez à présent les courbes obtenus dans le répertoire eps/ - -gv eps/dynamic_array_amortized_time_alpha_2.eps +Ajoutez ensuite ce fichier au projet +`git add AUTHORS.md` +`git commit -am "Ajout du fichier AUTHORS.md"` +`git push` diff --git a/launch_analysis.sh b/launch_analysis.sh new file mode 100644 index 0000000000000000000000000000000000000000..f5e860c53647b49b425dcb453b74a83cb3dadb05 --- /dev/null +++ b/launch_analysis.sh @@ -0,0 +1,68 @@ +RED='\033[0;31m' +NC='\033[0m' # No Color + + +# Compilation et exécution en C: +echo "${RED} Compilation du code source en C ${NC}" +cd C/ + +make + +echo "${RED} Exécution des benchmarks en C ${NC}" +./arraylist_analysis + +echo "${RED} Nettoyage ${NC}" +make clean + +cd .. + +# Compilation et exécution en C++: +echo "${RED} Compilation du code source en C++ ${NC}" +cd CPP/ + +make + +echo "${RED} Exécution des benchmarks en C++ ${NC}" +./arraylist_analysis + +echo "${RED} Nettoyage ${NC}" +make clean + +cd .. + +# Compilation et exécution en Java: + +echo "${RED} Compilation du code source en Java ${NC}" +cd Java + +javac * + +echo "${RED} Exécution des benchmarks en Java ${NC}" +java Main + +echo "${RED} Nettoyage ${NC}" +rm *.class + +cd .. + +# Exécution en Python + +echo "${RED} Compilation du code source en Python ${NC}" +cd Python + +echo "${RED} Exécution des benchmarks en Python ${NC}" +python main.py + +cd .. + +# Observation des résultats +### Dans le répertoire plots, lisez le contenu du fichier plot_result + +cd plots +more plot_result + +### puis lancez ce script avec gnuplot + +gnuplot plot_result + +