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
No related branches found
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.
Finish editing this message first!
Please register or to comment