Skip to content
Snippets Groups Projects
Commit d4accf1e authored by Nicolas M. Thiéry's avatar Nicolas M. Thiéry
Browse files

WIMS: support pour les programmes dont on doit deviner l'entree

parent b15b8b08
Branches
No related tags found
No related merge requests found
Showing
with 27 additions and 10 deletions
......@@ -2,10 +2,10 @@
# Do not edit by hand.
title=Exercices de programmation C++
description=quelques exercices de lecture et interprtation de programmes en C++.
description=quelques exercices de lecture et interprtation de programmes en C++
language=fr
category=oef, exercise
domain=programming,
domain=programming,
level=U1
keywords=C++
require=
......
PROGRAMS=$(wildcard data/*.cpp)
OUTPUT=$(PROGRAMS:%=%.output)
TARGETS=variable if loop function
all: data/index $(OUTPUT)
ANSWER=$(PROGRAMS:%=%.answer)
TARGETS=$(shell cd data; ls *.cpp | cut -d '_' -f 1 - | sort | uniq)
all: data/index $(ANSWER)
data/index: $(PROGRAMS)
cd data; \
......@@ -10,18 +10,22 @@ data/index: $(PROGRAMS)
(echo "$$target: "`ls -m $${target}_*.cpp`) >> index; \
done
data/%.output: data/%.bin
./$< > $@
data/%.answer: data/%.bin
if echo $< | grep -q _input.cpp; then \
for i in `seq 0 99`; do if [ x`echo $$i | $<` = 'x42' ]; then echo $$i; fi; done > $@; \
else \
./$< > $@; \
fi
data/%.cpp.bin: data/%.cpp
g++ $< -o $@
g++ -Wall -Wno-sign-compare -Wno-unused-value -pedantic -std=c++11 $< -o $@
clean:
rm data/*.bin data/*.output data/index
rm data/*.bin data/*.answer data/index
# Pour restauration
archive:
cd ..; tar zcvf /tmp/modtool-test~coding~readingCppPrograms.fr.tgz test~coding~readingCppPrograms.fr
cd ..; tar zcf /tmp/modtool-test~coding~readingCppPrograms.fr.tgz test~coding~readingCppPrograms.fr
#main.oef: header.oef programs/guess-output/*.cpp footer.oef Makefile
# cd programs/guess-output; make all.oef
......
......@@ -28,3 +28,16 @@ en changeant le nom.
doit être répétée à chaque fois que les fichiers sources sont modifiés).
%%%%
Le répertoire data/ contient des programmes C++. Le nom des programmes
est de la forme <theme>_nom.cpp ou <theme>_nom_input.cpp.
Dans le premier cas, l'utilisateur doit deviner la sortie du
programme. Dans le second cas, le programme doit lire un entier entre
0 et 99 sur l'entrée standard, et l'utilisateur doit deviner lequel
donne 42; pour l'instant il doit être unique.
Mise à jour de l'exercice sur WIMS:
wims.u-psud.fr -> serveur de l'université -> Accueil WIMS -> modtools -> login -> Restauration
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment