Εκφωνήσεις-Λύσεις
Συντονιστής: grigkost
Εκφωνήσεις-Λύσεις
Καλησπέρα, έχω την εξής απορία, αν μπορεί κάποιος να βοηθήσει.
Ας πούμε ότι έχουμε δέκα εκφωνήσεις ασκήσεων και από κάτω τις λύσεις τους. Μπορούμε με κάποιο τρόπο αλλάζοντας τη σειρά των εκφωνήσεων να αλλάζει και η σειρά των λύσεων;
Ευχαριστώ
Ας πούμε ότι έχουμε δέκα εκφωνήσεις ασκήσεων και από κάτω τις λύσεις τους. Μπορούμε με κάποιο τρόπο αλλάζοντας τη σειρά των εκφωνήσεων να αλλάζει και η σειρά των λύσεων;
Ευχαριστώ
Σιλουανός Μπραζιτίκος
Λέξεις Κλειδιά:
- Tolaso J Kos
- Δημοσιεύσεις: 5222
- Εγγραφή: Κυρ Αύγ 05, 2012 10:09 pm
- Τοποθεσία: Λάρισα, Βαρκελώνη
- Επικοινωνία:
Re: Εκφωνήσεις-Λύσεις
Η απάντηση στο ερώτημά σου Σιλουανέ είναι το πακέτο answers το οποίο εισάγεται στο προοίμιο ως
Κώδικας: Επιλογή όλων
\usepackage{answers}
Η φαντασία είναι σημαντικότερη από τη γνώση !
- Demetres
- Γενικός Συντονιστής
- Δημοσιεύσεις: 8989
- Εγγραφή: Δευ Ιαν 19, 2009 5:16 pm
- Τοποθεσία: Λεμεσός/Πύλα
- Επικοινωνία:
Re: Εκφωνήσεις-Λύσεις
Σιλουανέ αν και δεν το έχω δοκιμάσει παρά μόνο σήμερα μπορεί να σου κάνει τη δουλειά και το πακέτο tcolorbox. Γράφω τον κώδικά που χρησιμοποίησα τώρα στη δοκιμή μου. Ουσιαστικά τον πήρα έτοιμο από το documentation αλλά έσβησα τις εντολές που χρωματίζουν διάφορα κουτιά. Αν ψάξεις στο mathematica μας έχει γίνει και μια παρουσίαση του πακέτου. Πρέπει να δημιουργήσεις το folder solutions πριν να τρέξεις το αρχείο. Τουλάχιστον στον υπολογιστή μου έπρεπε να το κάνω αλλιώς έβγαζε σφάλμα.
Κώδικας: Επιλογή όλων
\documentclass[12pt]{article}
\usepackage[xparse,many]{tcolorbox}
\usepackage{amsthm,amsmath}
\usepackage{pgf,tikz}
\usepackage{parskip}
\begin{document}
\NewTColorBox[auto counter,number within=section]{exercise}{+!O{}}{
before skip=\baselineskip,
after skip=\baselineskip,
blanker,
coltitle=black,
fonttitle=\bfseries,
lowerbox=ignored,
title={Exercise~\thetcbcounter:}, label={exercise@\thetcbcounter},
attach title to upper={ } ,
after upper={\par\hfill\textcolor{green!40!black}%
{\itshape Solution on page~\pageref{solution@\thetcbcounter}}},
savelowerto=solutions/exercise-\thetcbcounter.tex, record={\string\solution{\thetcbcounter}{solutions/exercise-\thetcbcounter.tex}}, #1
}
\NewTotalTColorBox{\solution}{mm}{
before skip=\baselineskip,
after skip=\baselineskip,
blanker,
coltitle=black,
fonttitle=\bfseries,
title={Solution of Exercise~\ref{exercise@#1} on page~\pageref{exercise@#1}:{ }},
phantomlabel={solution@#1},
attach title to upper={ },
}{\input{#2}}
\tcbset{no solution/.style={no recording,after upper=}}
\section{First Section - Easy Exercises}
\tcbstartrecording[easy.tex]\relax
\begin{exercise}
Compute
\tcblower
The answer is
\end{exercise}
\begin{exercise}
Compute
\tcblower
\end{exercise}
\tcbstoprecording
\section{This is Second Section - Hard Exercises}
\tcbstartrecording[hard.tex]\relax
\begin{exercise}
Solve the Poincar\'e Conjecture
\tcblower
This was solved by Perelman. You can find the answer in ...
\end{exercise}
\begin{exercise}
Solve the Riemann Hypothesis.
\tcblower
I don't know the answer either.
\end{exercise}
\tcbstoprecording
\section{Solutions to Exercises}
Here are the solutions of the easy exercises:
\tcbinputrecords[easy.tex]
Let's now write down the answers to the hard questions.
\tcbinputrecords[hard.tex]
\end{document}
Re: Εκφωνήσεις-Λύσεις
Δημήτρη, ευχαριστώ για την απάντηση. Δεν καταλαβαίνω όμως το εξής: Πες ότι έχω γράψει τις ασκήσεις 1,2,3,4,5,6,7,8,9,10
και μετά αλλάξω την σειρά τους σε 1,2,3,6,7,5,4,9,10, θα αλλάξει αυτόματα και η σειρά των λύσεων;
Θέλω με κάποιο τρόπο να αντιστοιχίσω μία άσκηση σε μία λύση, δηλαδή το \label και \ref να αντιστοιχούν σε ολόκληρες τις λύσεις και όχι μόνο στην αρίθμηση.
Σιλουανός Μπραζιτίκος
- Demetres
- Γενικός Συντονιστής
- Δημοσιεύσεις: 8989
- Εγγραφή: Δευ Ιαν 19, 2009 5:16 pm
- Τοποθεσία: Λεμεσός/Πύλα
- Επικοινωνία:
Re: Εκφωνήσεις-Λύσεις
Ναι Σιλουανέ αλλάζει αυτόματα.
Μάλιστα τα label και ref τα βάζει από μόνο του αυτόματα. Π.χ. ανάλογα με το section. Εσύ θα γράφεις το
\begin{exercise}
\end{exercise}
Μέσα σε αυτά θα γράφεις την εκφώνηση, μετά θα γράφεις \tcblower και μετά θα γράφεις τη λύση. Η εντολή lowerbox=ignored που υπάρχει στον ορισμό του exercise του λέει να αγνοήσει ότι υπάρχει από το tcblower και κάτω για να το φυλάξει και να το γράψει μετά.
Εσύ τώρα έχεις αρκετά exercises που πάνε μαζί με τις λύσεις τους. Τους αλλάζεις σειρά όπως θέλεις και όταν καλέσεις το latex να δείξει τις λύσεις θα τις δείξει με τη σειρά που τις έβαλες.
Πρέπει όμως πριν από κάθε συστάδα ασκήσεων να γράφεις
\tcbstartrecording[onoma-systadas-askhsewn.tex]
και μόλις τελειώνει να γράφεις
\tcbstoprecording
Προς το παρόν στο pdf εμφανίζονται μόνο οι εκφωνήσεις. Όταν γράψεις
\tcbinputrecords[onoma-systadas-askhsewn.tex]
θα εμφανίσει τις λύσεις εκεί που θα τις γράψεις με τη σειρά που εμφανίστηκαν οι εκφωνήσεις.
Μάλιστα τα label και ref τα βάζει από μόνο του αυτόματα. Π.χ. ανάλογα με το section. Εσύ θα γράφεις το
\begin{exercise}
\end{exercise}
Μέσα σε αυτά θα γράφεις την εκφώνηση, μετά θα γράφεις \tcblower και μετά θα γράφεις τη λύση. Η εντολή lowerbox=ignored που υπάρχει στον ορισμό του exercise του λέει να αγνοήσει ότι υπάρχει από το tcblower και κάτω για να το φυλάξει και να το γράψει μετά.
Εσύ τώρα έχεις αρκετά exercises που πάνε μαζί με τις λύσεις τους. Τους αλλάζεις σειρά όπως θέλεις και όταν καλέσεις το latex να δείξει τις λύσεις θα τις δείξει με τη σειρά που τις έβαλες.
Πρέπει όμως πριν από κάθε συστάδα ασκήσεων να γράφεις
\tcbstartrecording[onoma-systadas-askhsewn.tex]
και μόλις τελειώνει να γράφεις
\tcbstoprecording
Προς το παρόν στο pdf εμφανίζονται μόνο οι εκφωνήσεις. Όταν γράψεις
\tcbinputrecords[onoma-systadas-askhsewn.tex]
θα εμφανίσει τις λύσεις εκεί που θα τις γράψεις με τη σειρά που εμφανίστηκαν οι εκφωνήσεις.
Μέλη σε σύνδεση
Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 3 επισκέπτες