From 03542c01781307bd8cb29571d8a39197a4de83e2 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 13 Jul 2017 23:06:59 +0000 Subject: probsoln (10jul17) git-svn-id: svn://tug.org/texlive/trunk@44783 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/probsoln/CHANGES | 5 + Master/texmf-dist/doc/latex/probsoln/README | 13 +- .../doc/latex/probsoln/probsoln-manual.css | 253 -- .../doc/latex/probsoln/probsoln-manual.html | 2526 -------------------- .../doc/latex/probsoln/probsoln-manual.tex | 913 ------- Master/texmf-dist/doc/latex/probsoln/probsoln.pdf | Bin 390794 -> 414955 bytes .../doc/latex/probsoln/samples/prob-1stprncp.tex | 63 + .../doc/latex/probsoln/samples/prob-args.tex | 49 + .../doc/latex/probsoln/samples/prob-easy.tex | 114 + .../doc/latex/probsoln/samples/prob-easy2.tex | 137 ++ .../doc/latex/probsoln/samples/prob-implicit.tex | 52 + .../doc/latex/probsoln/samples/prob-mchoice.tex | 37 + .../doc/latex/probsoln/samples/prob-mixed.tex | 78 + .../doc/latex/probsoln/samples/prob-newdata.tex | 27 + .../doc/latex/probsoln/samples/prob-nosoln.tex | 9 + .../doc/latex/probsoln/samples/prob-probspaces.tex | 33 + .../latex/probsoln/samples/prob-probspaces2.tex | 43 + .../doc/latex/probsoln/samples/prob-tabmchoice.tex | 18 + .../doc/latex/probsoln/samples/prob-verb.tex | 28 + .../doc/latex/probsoln/samples/sample-exclude.pdf | Bin 0 -> 99030 bytes .../doc/latex/probsoln/samples/sample-exclude.tex | 56 +- .../doc/latex/probsoln/samples/sample.pdf | Bin 81519 -> 81303 bytes .../doc/latex/probsoln/samples/sample.tex | 52 +- .../doc/latex/probsoln/samples/sample2.pdf | Bin 76287 -> 84108 bytes .../doc/latex/probsoln/samples/sample2.tex | 51 - .../doc/latex/probsoln/samples/sample3.pdf | Bin 31901 -> 31898 bytes .../doc/latex/probsoln/samples/sample3.tex | 53 +- .../doc/latex/probsoln/samples/sample4.pdf | Bin 92920 -> 92887 bytes .../doc/latex/probsoln/samples/sample4.tex | 51 - .../doc/latex/probsoln/samples/sample5.pdf | Bin 82851 -> 73973 bytes .../doc/latex/probsoln/samples/sample5.tex | 51 - .../doc/latex/probsoln/samples/sample6.pdf | Bin 0 -> 26997 bytes .../doc/latex/probsoln/samples/sample6.tex | 51 - .../doc/latex/probsoln/samples/sample7.pdf | Bin 0 -> 65512 bytes .../doc/latex/probsoln/samples/sample7.tex | 51 - .../doc/latex/probsoln/samples/sample8.pdf | Bin 0 -> 35582 bytes .../doc/latex/probsoln/samples/sample8.tex | 51 - .../doc/latex/probsoln/samples/sample9.pdf | Bin 0 -> 79269 bytes .../doc/latex/probsoln/samples/sample9.tex | 19 + 39 files changed, 724 insertions(+), 4160 deletions(-) delete mode 100644 Master/texmf-dist/doc/latex/probsoln/probsoln-manual.css delete mode 100644 Master/texmf-dist/doc/latex/probsoln/probsoln-manual.html delete mode 100644 Master/texmf-dist/doc/latex/probsoln/probsoln-manual.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-1stprncp.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-args.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-easy.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-easy2.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-implicit.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-mchoice.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-mixed.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-newdata.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-nosoln.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces2.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-tabmchoice.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/prob-verb.tex create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.pdf create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/sample6.pdf create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/sample7.pdf create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/sample8.pdf create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/sample9.pdf create mode 100644 Master/texmf-dist/doc/latex/probsoln/samples/sample9.tex (limited to 'Master/texmf-dist/doc/latex/probsoln') diff --git a/Master/texmf-dist/doc/latex/probsoln/CHANGES b/Master/texmf-dist/doc/latex/probsoln/CHANGES index 3c3efc2c943..058edce2aa1 100644 --- a/Master/texmf-dist/doc/latex/probsoln/CHANGES +++ b/Master/texmf-dist/doc/latex/probsoln/CHANGES @@ -1,5 +1,10 @@ probsoln package versions: +Version 3.05: + + * Now allows comma-separated list of file names in + \loadrandomproblems and \loadrandomexcept + Version 3.04: * fixed bug in textenum diff --git a/Master/texmf-dist/doc/latex/probsoln/README b/Master/texmf-dist/doc/latex/probsoln/README index e3e0912a332..085e3e27ab0 100644 --- a/Master/texmf-dist/doc/latex/probsoln/README +++ b/Master/texmf-dist/doc/latex/probsoln/README @@ -1,9 +1,11 @@ -LaTeX Package : probsoln v3.04 +LaTeX Package : probsoln v3.05 -Last Modified : 2012-08-23 +Last Modified : 2017-07-10 Author : Nicola L.C. Talbot +Package FAQ : http://www.dickimaw-books.com/faqs/probsolnfaq.html + Files : probsoln.dtx - documented source file probsoln.ins - installation script @@ -45,11 +47,10 @@ Comment out \OnlyDescription if you want the documented code. If you experience difficulties, try reading the troubleshooting section of the manual. If that doesn't -help try -http://theoval.cmp.uea.ac.uk/~nlct/latex/packages/faq/ +help try http://www.dickimaw-books.com/faqs/probsolnfaq.html This material is subject to the LaTeX Project Public License. -See http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html for +See http://www.ctan.org/license/lppl1.3 for the details of that license. -http://theoval.cmp.uea.ac.uk/~nlct/ +http://www.dickimaw-books.com/ diff --git a/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.css b/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.css deleted file mode 100644 index 86f6de1a936..00000000000 --- a/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.css +++ /dev/null @@ -1,253 +0,0 @@ - -/* start css.sty */ -.ec-lmr-10x-x-109{} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmss-10x-x-109{ font-family: sans-serif;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-109{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{font-size:188%; font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmssbx-10x-x-207{ font-family: sans-serif; font-weight: bold;} -.ec-lmr-12x-x-120{font-size:130%;} -.ec-lmtt-12x-x-120{font-size:130%; font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-12x-x-120{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmtt-10x-x-109{ font-family: monospace;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmbx-10x-x-109{ font-weight: bold;} -.ec-lmtt-10{font-size:90%; font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.ec-lmtt-10{ font-family: monospace;} -.rm-lmr-8x-x-103{font-size:74%;} -.lmmi-10x-x-109{} -.lmmi-8x-x-103{font-size:74%;} -.lmsy-10x-x-109{} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmri-10x-x-109{ font-style:italic;} -.ec-lmr-10{font-size:90%;} -.ec-lmr-9{font-size:81%;} -.ec-lmtt-9{font-size:81%; font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -.ec-lmtt-9{ font-family: monospace;} -p.noindent { text-indent: 0em } -td p.noindent { text-indent: 0em; margin-top:0em; } -p.nopar { text-indent: 0em; } -p.indent{ text-indent: 1.5em } -@media print {div.crosslinks {visibility:hidden;}} -a img { border-top: 0; border-left: 0; border-right: 0; } -center { margin-top:1em; margin-bottom:1em; } -td center { margin-top:0em; margin-bottom:0em; } -.Canvas { position:relative; } -img.math{vertical-align:middle;} -li p.indent { text-indent: 0em } -li p:first-child{ margin-top:0em; } -li p:last-child, li div:last-child { margin-bottom:0.5em; } -li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } -.enumerate1 {list-style-type:decimal;} -.enumerate2 {list-style-type:lower-alpha;} -.enumerate3 {list-style-type:lower-roman;} -.enumerate4 {list-style-type:upper-alpha;} -div.newtheorem { margin-bottom: 2em; margin-top: 2em;} -.obeylines-h,.obeylines-v {white-space: nowrap; } -div.obeylines-v p { margin-top:0; margin-bottom:0; } -.overline{ text-decoration:overline; } -.overline img{ border-top: 1px solid black; } -td.displaylines {text-align:center; white-space:nowrap;} -.centerline {text-align:center;} -.rightline {text-align:right;} -div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } -.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } -div.fbox {display:table} -div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } -div.minipage{width:100%;} -div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} -div.center div {text-align: left;} -div.flushright, div.flushright div.flushright {text-align: right;} -div.flushright div {text-align: left;} -div.flushleft {text-align: left;} -.underline{ text-decoration:underline; } -.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } -.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } -.framebox-c {text-align:center;} -.framebox-l {text-align:left;} -.framebox-r {text-align:right;} -span.thank-mark{ vertical-align: super } -span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } -div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} -div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} -div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } -table.tabular td p{margin-top:0em;} -table.tabular {margin-left: auto; margin-right: auto;} -td p:first-child{ margin-top:0em; } -td p:last-child{ margin-bottom:0em; } -div.td00{ margin-left:0pt; margin-right:0pt; } -div.td01{ margin-left:0pt; margin-right:5pt; } -div.td10{ margin-left:5pt; margin-right:0pt; } -div.td11{ margin-left:5pt; margin-right:5pt; } -table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } -td.td00{ padding-left:0pt; padding-right:0pt; } -td.td01{ padding-left:0pt; padding-right:5pt; } -td.td10{ padding-left:5pt; padding-right:0pt; } -td.td11{ padding-left:5pt; padding-right:5pt; } -table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } -.hline hr, .cline hr{ height : 1px; margin:0px; } -.tabbing-right {text-align:right;} -span.TEX {letter-spacing: -0.125em; } -span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} -a span.TEX span.E {text-decoration: none; } -span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} -span.LATEX span.TEX{ position:relative; left: -0.4em; } -div.float, div.figure {margin-left: auto; margin-right: auto;} -div.float img {text-align:center;} -div.figure img {text-align:center;} -.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} -.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} -table.equation {width:100%;} -.equation td{text-align:center; } -td.equation { margin-top:1em; margin-bottom:1em; } -td.equation-label { width:5%; text-align:center; } -td.eqnarray4 { width:5%; white-space: normal; } -td.eqnarray2 { width:5%; } -table.eqnarray-star, table.eqnarray {width:100%;} -div.eqnarray{text-align:center;} -div.array {text-align:center;} -div.pmatrix {text-align:center;} -table.pmatrix {width:100%;} -span.pmatrix img{vertical-align:middle;} -div.pmatrix {text-align:center;} -table.pmatrix {width:100%;} -span.bar-css {text-decoration:overline;} -img.cdots{vertical-align:middle;} -.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} -.index-item, .index-subitem, .index-subsubitem {display:block} -div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} -div.caption span.id{font-weight: bold; white-space: nowrap; } -h1.partHead{text-align: center} -p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } -p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } -.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} -.subparagraphHead, .likesubparagraphHead { font-weight: bold;} -.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} -.verse{white-space:nowrap; margin-left:2em} -div.maketitle {text-align:center;} -h2.titleHead{text-align:center;} -div.maketitle{ margin-bottom: 2em; } -div.author, div.date {text-align:center;} -div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } -.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } -.abstract p {margin-left:5%; margin-right:5%;} -div.abstract {width:100%;} -span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } -table.multicols { width:100%; margin-left:1em; margin-top:1em; margin-bottom:1em; } -.equation td{text-align:center; } -.equation-star td{text-align:center; } -table.equation-star { width:100%; } -table.equation { width:100%; } -table.align, table.alignat, table.xalignat, table.xxalignat, table.flalign {width:100%; margin-left:5%; white-space: nowrap;} -table.align-star, table.alignat-star, table.xalignat-star, table.flalign-star {margin-left:auto; margin-right:auto; white-space: nowrap;} -td.align-label { width:5%; text-align:center; } -td.align-odd { text-align:right; padding-right:0.3em;} -td.align-even { text-align:left; padding-right:0.6em;} -table.multline, table.multline-star {width:100%;} -td.gather {text-align:center; } -table.gather {width:100%;} -div.gather-star {text-align:center;} -div.important { background-color:red; } -/* end css.sty */ - diff --git a/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.html b/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.html deleted file mode 100644 index 55dfa44a832..00000000000 --- a/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.html +++ /dev/null @@ -1,2526 +0,0 @@ - - - - -probsoln v3.04: creating problem sheets optionally with solutions - - - - - - - - - -
- - - - -
-
- -

probsoln v3.04: creating problem -sheets optionally with solutions

-
Nicola L.C. Talbot -
School of Computing Sciences -
University of East Anglia -
Norwich. Norfolk -
NR4 7TJ. United Kingdom. -
http://theoval.cmp.uea.ac.uk/~nlct/

-
2012-08-23
-
-

Contents

-
- 1 Introduction -
2 Package Options -
3 Verbatim -
4 Showing and Hiding Solutions -
5 General Formatting Commands -
6 Defining a Problem -
7 Using a Problem -
8 Loading Problems From External Files -
 8.1 Randomly Selecting Problems Not Selected in Previous Documents -
9 Iterating Through Datasets -
10 Random Number Generator -
11 Compatibility With Versions Prior to 3.0 -
Index - - -
-

-

-

1 Introduction

-

The probsoln package is designed for teachers or lecturers who want to -create problem sheets for their students. This package was designed with -mathematics problems in mind, but can be used for other subjects as well. The -idea is to create a file containing a large number of problems with their -solutions which can be read in by LATEX, and then select a number of -problems to typeset. This means that once the database has been set up, -each year you can easily create a new problem sheet that is sufficiently -different from the previous year, thus preventing the temptation of current -students seeking out the previous year’s students, and checking out their -answers. There is also an option that can be passed to the package -to determine whether or not the solutions should be printed. In this -way, one file can either produce the student’s version or the teacher’s -version. -

-

-

Top

2 Package Options

-

The following options may be passed to this package: -

-answers
Show the answers -
-noanswers
Don’t show the answers (default) -
-draft
Display the label and dataset name when a problem is used -
-final
Don’t display label and dataset name when a problem is used -
-usedefaultargs
Make \thisproblem use the default arguments supplied in - the problem definition. - - -
-nousedefaultargs
Make \thisproblem prompt for problem arguments - (default).
-

-

-

Top

3 Verbatim

-

As from version 3.02, problems and solutions may contain verbatim text, but -you must use the fragile (or fragile=true) option for the associated -environments. -

Alternatively, if most of your problems contain verbatim, you can globally set -this option using: - - -

-
-\setkeys{probsoln}{fragile} -
-

You can switch off this option using fragile=false. -

The fragile option writes information to a temporary file. This defaults to -\jobname.vrb but the name may be changed. The extension (.vrb) is given -by: -


\ProbSolnFragileExt  \ProbSolnFragileExt

-

-The base name (\jobname) is given by: -


\ProbSolnFragileFile  \ProbSolnFragileFile

-

-

-

-

Top

4 Showing and Hiding Solutions

-

In addition to the answers and noanswers package options, it is also possible to -show or suppress the solutions using -


\showanswers  \showanswers

-

-and -


\hideanswers  \hideanswers

-

-respectively. -

The boolean variable showanswers determines whether the answers should be -displayed. You can use this value with the ifthen package to specify -different text depending on whether the solutions should be displayed. For -example: - - -

-
-Assignment 1\ifthenelse{\boolean{showanswers}}{ (Solution Sheet)}{} -
-

Alternatively you can use \ifshowanswers\else\fi: - - -

-
-Assignment 1\ifshowanswers\space (Solution Sheet)\fi -
-

-

For longer passages, you can use the environments -


onlyproblem  \begin{onlyproblem}[option]

-

-and -


onlysolution  \begin{onlysolution}[option]

-

-For example: - - -

-
-\begin{onlyproblem}% - 
What is the derivative of $f(x) = x^2$? - 
\end{onlyproblem}% - 
\begin{onlysolution}% - 
$f’(x) = 2x$ - 
\end{onlysolution} -
-

The above will only display the question if showanswers is false and will only -display the solution if showanswers is true. If you want the question to appear in -the answer sheet as well as the solution, then don’t put the question in the -onlyproblem environment: - - -

-
-What is the derivative of $f(x) = x^2$? - 
\begin{onlysolution}% - 
Solution: $f’(x) = 2x$ - 
\end{onlysolution} -
-

-

If you want to include verbatim text in the body of onlyproblem or -onlysolution, you need to specify fragile in the optional argument of the -environment. (See §3 Verbatim for further details.)
-

-

If you use onlysolution within the defproblem environment, the problem will -be tagged as having a solution and will be added to the list used by -\foreachsolution. The optional argument of onlysolution (and onlyproblem) is -inherited from the parent defproblem setting. -

-

-

Top

5 General Formatting Commands

-

The commands and environments described in this section are provided to assist -formatting problems and their solutions. -


solution  \begin{solution}text\end{solution}

-

-By default, this is equivalent to -
\par\noindent\textbf{\solutionname}: text -
-where \solutionname \solutionname defaults to “Solution”. Note that you -must place the solution environment inside the onlysolution environment or -between \ifshowanswers\fi to ensure that it is suppressed when the solutions -are not wanted. (See §4 Showing and Hiding Solutions.) -

Note that the probsoln package will only define the solution environment if it -is not already defined. -


textenum  \begin{textenum}\end{textenum}

-

-The textenum environment is like the enumerate environment but is in-line. It -uses the same counter that the enumerate environment would use at that level -so the question can be compact but the answer can use enumerate instead. For - - -example: - - -

-
-\begin{onlyproblem}% - 
  Differentiate the following: - 
  \begin{textenum} - 
    \item $f(x)=2^x$; \item $f(x)=\cot(x)$ - 
  \end{textenum} - 
\end{onlyproblem} - 
\begin{onlysolution} - 
  \begin{enumerate} - 
  \item - 
    \begin{align*} - 
    f(x) &= 2^x = \exp(\ln(x^2)) =\exp(2\ln(x))\\ - 
    f’(x) &= \exp(2\ln(x))\times \frac{2}{x}\\ - 
      &= f(x)\frac{2}{x} - 
    \end{align*} - 
  \item - 
    \begin{align*} - 
    f(x) &= \cot(x) = (\tan(x))^{-2}\\ - 
    f’(x) &= -(\tan(x))^{-2}\times\sec^2(x)\\ - 
    &=-\csc^2x - 
    \end{align*} - 
  \end{enumerate} - 
\end{onlysolution} -
-

In this example, the items in the question are brief, so an enumerate -environment would result in a lot of unnecessary white space, but the answers -require more space, so an enumerate environment is more appropriate. Since the -textenum environment uses the same counters as the enumerate environment, the -question and answer sheets use consistent labelling. Note that there are other -packages available on CTAN that you can use to create in-line lists. Check the -TeX Catalogue for further details. -

\correctitem \incorrectitem  -


\correctitem
\incorrectitem

-

-You can use the commands \correctitem and \incorrectitem in place of -\item. If the solutions are suppressed, these commands behave in the same way -as \item, otherwise they format the item label using one of the commands: -\correctitemformat \incorrectitemformat  -


\correctitemformat{label}
\incorrectitemformat{label}

-

-For example: - - -

-
-Under which of the following functions does $S=\{a_1,a_2\}$ - 
become a probability space? - 
\begin{enumerate} - 
\incorrectitem $P(a_1)=\frac{1}{3}$, $P(a_2)=\frac{1}{2}$ - 
\correctitem $P(a_1)=\frac{3}{4}$, $P(a_2)=\frac{1}{4}$ - 
\correctitem $P(a_1)=1$, $P(a_2)=0$ - 
\incorrectitem $P(a_1)=\frac{5}{4}$, $P(a_2)=-\frac{1}{4}$ - 
\end{enumerate} -
-

The default definition of \correctitemformat puts a frame around the -label. -

-

-

Top

6 Defining a Problem

-

It is possible to construct a problem sheet with solutions using the commands -described in the previous sections, however it is also possible to define a set of -problems for later use. In this way you can create an external file containing -many problems some or all of which can be loaded and used in a document. The -probsoln package has a default data set labelled “default” in which you can -store problems. Alternatively, you can create multiple data sets. You -can then iterate through each problem in a problem set. You can use a -previously defined problem more than once, which means that by judicious -use of onlyproblem, onlysolution or the showanswers boolean variable -in conjunction with \showanswers and \hideanswers, you can print -the solutions in a different location to the questions (for example in an -appendix). -


defproblem  \begin{defproblem}[n][default args]{label}[option]
definition
\end{defproblem}

-

-This defines the problem whose label is given by label. The label must be -unique for a given data set and should not contain active characters or -a comma. (Active characters include the special characters such as $ -and &, but some packages may make other symbols active, such as the -colon (:) character. For example, the ngerman and babel packages make -certain punctuation active. Check the relevant package documentation for -details.) - - -

The final optional argument optionmay be fragile to indicate that the -problem contains verbatim text. Any occurrences of onlyproblem or onlysolution -contained within defproblem are inherited from defproblem. (See §3 Verbatim for -further details.)
-

-

If defproblem occurs in the document or is included via \input or \include, -then the problem will be added to the default data set. If defproblem occurs in -an external file that is loaded using one of the commands defined in §8 Loading -Problems From External Files then the problem will be added to the specified -data set. -

The contents of the defproblem environment should be the text that defines -the problem. This may include any of the commands defined in §4 Showing and -Hiding Solutions and §5 General Formatting Commands. -

The problem may optionally take narguments (where nis from 0 to 9). -The arguments can be referenced in the definition via #1,…,#9. If nis omitted -then the problem doesn’t take any arguments. The following example defines a -problem with one argument: - - -

-
-\begin{defproblem}[1]{diffsin} - 
Differentiate $f(x)=\sin(#1x)$. - 
\begin{onlysolution}% - 
  \begin{solution} - 
    $f’(x) = #1\cos(#1x)$ - 
  \end{solution} - 
\end{onlysolution} - 
\end{defproblem} -
-

-

The second optional argument default argssupplies default problem -arguments that will automatically be used within \thisproblem when used in -\foreachproblem in conjunction with the package option usedefaultargs. (See §9 -Iterating Through Datasets.) For example: - - -

-
-\begin{defproblem}[1][{2}]{diffsin} - 
Differentiate $f(x)=\sin(#1x)$. - 
\begin{onlysolution}% - 
  \begin{solution} - 
    $f’(x) = #1\cos(#1x)$ - 
  \end{solution} - 
\end{onlysolution} - 
\end{defproblem} -
-

-


\newproblem  \newproblem[n][default args]{label}{problem}{solution} -

-

-This is a shortcut command for: - \begin{defproblem}[n][default args]{label}% -
problem% -
\begin{onlysolution}% -
\begin{solution}% -
solution% -
\end{solution}% -
\end{onlysolution}% -
\end{defproblem}
-

For example: - - -

-
-\newproblem[1]{diffsin}{% - 
  \(f(x) = \sin(#1x)\) - 
}% - 
{% - 
  \(f’(x) = #1\cos(#1x)\) - 
} -
-

is equivalent to - - -

-
-\begin{defproblem}[1]{diffcos}% - 
  \(f(x) = \cos(#1x)\) - 
\begin{onlysolution}% - 
  \begin{solution}% - 
    \(f’(x) = -#1\sin(#1x)\) - 
  \end{solution}% - 
\end{onlysolution}% - 
\end{defproblem} -
-

(In this example, the argument will need to be a positive number to avoid a -double minus in the answer. If you want to perform floating point arithmetic on -the arguments, then try the fp or pgfmath packages.) -

Alternatively, if you want to supply default arguments to use when iterating -through problems with \foreachproblem: - - -

-
-\newproblem[1][{3}]{diffsin}{% - 
  \(f(x) = \sin(#1x)\) - 
}% - 
{% - 
  \(f’(x) = #1\cos(#1x)\) - 
} -
-

-


\newproblem*  \newproblem*[n][default args]{label}{definition} -

-

-This is a shortcut for: - \begin{defproblem}[n][default args]{label}% -
definition% -
\end{defproblem}
-

Note that you can’t use verbatim text with \newproblem or \newproblem*. -Use the defproblem environment instead with the fragile option.
-

-

-

-

Top

7 Using a Problem

-

Once you have defined a problem using defproblem or \newproblem (see §6 -Defining a Problem), you can later display the problem using: -


\useproblem  \useproblem[data set]{label}{arg1}…{argN} -

-

-where data setis the name of the data set that contains the problem (the -default data set is used if omitted), labelis the label identifying the required -problem and arg1, …, argNare the arguments to pass to the problem, if the -problem was defined to have arguments (where N is the number of arguments -specified when the problem was defined). -

For example, in the previous section the problem diffcos was defined to have -one argument, so it can be used as follows: - - -

-
-\useproblem{diffcos}{3} -
-

This will be equivalent to: - - -

-
-\(f(x) = \cos(3x)\) - 
\begin{onlysolution}% - 
\begin{solution}% - 
\(f’(x) = -3\sin(3x)\) - 
\end{solution}% - 
\end{onlysolution}% -
-

-

-

-

Top

8 Loading Problems From External Files

-

You can store all your problem definitions (see §6 Defining a Problem) in an -external file. These problems can all be appended to the default data set by -including the file via \input or they can be appended to other data sets -using one of the commands described below. Once you have loaded all -the required problems, you can iterate through the data sets using the -commands described in §9 Iterating Through Datasets. Note that the -commands below will create a new data set, if the named data set doesn’t -exist. -


\loadallproblems  \loadallproblems[data set]{filename}

-

-This will load all problems defined in filenameand append them to the -specified data set, in the order in which they are defined in the file. If data set -is omitted, the default data set will be used. If data setdoesn’t exist, it will be -created. -


\loadselectedproblems  \loadselectedproblems[data set]{labels}{filename} -

-

-This is like \loadallproblems, but only those problems whose label is listed in -the comma-separated list labelsare loaded. For example, if I have some -problems defined in the file derivatives.tex, then - - -

-
-\loadselectedproblems{diffsin,diffcos}{derivatives} -
-

will only load the problems whose labels are diffsin and diffcos, -respectively. All the other problems in the file will remain undefined. -


\loadexceptproblems  \loadexceptproblems[data set]{exception -list}{filename}

-

-This is the reverse of \loadselectedproblems. This loads all problems except -those whose labels are listed in exception list. -


\loadrandomproblems  \loadrandomproblems[data set]{n}{filename} -

-

-This randomly loads nproblems from filenameand adds them to the given -data set. If data setis omitted, the default data set is assumed. Note that the -problems will be added to the data set in a random order, not in the order in -which they were defined. There must be at least nproblems defined in -filename. -


\loadrandomexcept  \loadrandomexcept[data set]{n}{filename}{exception -list}

-

-This is similar to \loadrandomproblems except that it won’t load those -problems whose labels are listed in exception list. If you want to -automatically exclude problems included in previous documents, see -§8.1 Randomly Selecting Problems Not Selected in Previous -Documents. -

Note that the random number generator has been modified in version 3.01 in -order to fix a bug. If you want to ensure that your random numbers are -compatible with earlier versions, you can switch to the old generator -using -


\PSNuseoldrandom  \PSNuseoldrandom

-

-

It is generally not a good idea to place anything in filenamethat is not -inside the body of defproblem or in the arguments to \newproblem or -\newproblem*. All the commands in this section input the external file within a -local scope, so command definitions would need to be made global to have any -effect. In addition, \loadrandomproblems has to load each file twice, which -means that anything outside a problem definition will be parsed twice. -
- - -

-

-

-

Top

8.1 Randomly Selecting Problems Not Selected in Previous Documents

-

Suppose you have a large set of questions that you want to randomly select for -assignments and exams. The chances are, you don’t want to include questions -that have been previously set for, say, the last three years. That is, you don’t -want to select questions the students may already have seen. As from version -3.03, you can now do this. -

The probsoln package defaults to the UK academic year, which starts in -September. If this isn’t appropriate, you can change it using: -


\SetStartMonth  \SetStartMonth{n}

-

-where nis the number of the month. (1 = January, 2 = February, -etc.) -

The start year is the calender year in effect when the academic -year started. For example, if this is the academic year 2011/12, then -the start year is 2011. This is automatically set to the start of the -current academic year. It is also updated when \SetStartMonth is -used.1 -If you want to set it to a specific year, you can use: -


\SetStartYear  \SetStartYear{year}

-

-For example: \SetStartYear{2008} indicates the academic year 2008/9. -

There are two files concerned with previously used labels. They are: -

-The previously used labels file
This keeps track of all problems used in - previous years, as well as problems used by other documents that have - this as their previously used labels file, and it contains the problem - labels from the last run of the current document. -
-The current used labels file
This defaults to \jobname.prb, but the name can - be changed using: -


\SetUsedFileName  \SetUsedFileName{name}

-

- This file keeps track of all the labels used in the current document from - the previous LATEX run. Note that if you want to delete this file, first - clear it using - - -


\ClearUsedFile  \ClearUsedFile{file}

-

- in place of \ExcludePreviousFile{file}, described below. The - argument fileis the previously used labels file described above. - \ClearUsedFile will remove all labels in the current used labels file from - the previously used labels file and clear the current used labels file. Once - this file is empty, it may then be deleted. -

-
-

Before loading randomly selected problems, first specify the previously used -labels file with the command: -


\ExcludePreviousFile  \ExcludePreviousFile[number of years]{file -name}

-

-where file nameis the name of the previously used file. The optional argument -number of yearsspecifies the year cut-off. This defaults to 3, which means that -only those labels used this year or the previous 2 years will be kept. Any -problems used before then may be reused. -

Suppose I’m lecturing a first year undergraduate mathematics course -(designated, say, mth101). I want to set assignments on each topic and an exam -at the end of the year (as well as a resit or second sitting paper). I’ve got -databases with problems for each topic, but the first and second sitting -exams mustn’t include any of the problems used in the assignments -or any problems used in assignments or exams for the previous two -academic years. I’m going to arrange my directory structure as follows: -

- -

-

-

Top

9 Iterating Through Datasets

-

Once you have defined all your problems for a given data set, you can use an -individual problem with \useproblem (see §7 Using a Problem) but it is more -likely that you will want to iterate through all the problems so that -you don’t need to remember the labels of all the problems you have -defined. -


\foreachproblem  \foreachproblem[data set]{body}

-

-This does bodyfor each problem in the given data set. If data setis omitted, -the default data set is used. Within bodyyou can use -


\thisproblem  \thisproblem

-

-to use the current problem and -


\thisproblemlabel  \thisproblemlabel

-

-to access the current label. If the problem requires arguments, and no default -arguments were supplied in the problem definition or the package option -usedefaultargs was not used, then you will be prompted for arguments, so if you - - -want to use this approach you will need to use LATEX in interactive mode. If -you do provide arguments, they will be stored in the event that you need to -iterate through the data set again. The arguments will be included in -\thisproblem, so you only need to use \thisproblem without having to specify -\useproblem. -

For example, to iterate through all problems in the default data set: - - -

-
-\begin{enumerate} - 
\foreachproblem{\item\thisproblem} - 
\end{enumerate} -
-

-


\foreachsolution  \foreachsolution[data set]{body}

-

-This is equivalent to \foreachsolution, but only iterates through problems -that contain the onlysolution environment. Note that you still need to use -\showanswers or the answers package option for the contents of the onlysolution -environment to appear. -


\foreachdataset  \foreachdataset{cmd}{body}

-

-This does bodyfor each of the defined data sets. Within body, cmdwill be -set to the name of the current data set. For example, to display all problems in -all data sets: - - -

-
-\begin{enumerate} - 
\foreachdataset{\thisdataset}{% - 
\foreachproblem[\thisdataset]{\item\thisproblem}} - 
\end{enumerate} -
-

-

Suppose I have two external files called derivatives.tex and -probspaces.tex which define problems using both onlyproblem and onlysolution -for example: - - -

-
-\begin{defproblem}{cosxsqsinx}% - 
\begin{onlyproblem}% - 
$y = \cos(x^2)\sin x$.% - 
\end{onlyproblem}% - 
\begin{onlysolution}% - 
\[\frac{dy}{dx} = -\sin(x^2)2x\sin x + \cos(x^2)\cos x\] - 
\end{onlysolution}% - 
\end{defproblem} -
-

I can write a document that creates two data sets, one for the derivative -problems and one for the problems about probability spaces. I can then use -\hideanswers and iterate through the require data set to produce the -problems. Later, I can use \showanswers and iterate over all problems defined -in both data sets to produce the chapter containing all the answers. When -displaying the questions, I have taken advantage of the fact that I can -cross-reference items within an enumerate environment, and redefined -\theenumi to label the questions according to the chapter. The cross-reference -label is constructed from the problem label and is referenced in the -answer section to ensure that the answers have the same label as the -questions. - - -

-
-\documentclass{report} - 
\usepackage{probsoln} - 
\begin{document} - 
\hideanswers - 
\chapter{Differentiation} - 
 randomly select 25 problems from derivatives.tex and add to - 
 the data set called ’deriv’ - 
\loadrandomproblems[deriv]{25}{derivatives} - 
 Display the problems - 
\renewcommand{\theenumi}{\thechapter.\arabic{enumi}} - 
\begin{enumerate} - 
\foreachproblem[deriv]{\item\label{prob:\thisproblemlabel}\thisproblem} - 
\end{enumerate} - 
 You may need to change \theenumi back here - 
\chapter{Probability Spaces} - 
 randomly select 25 problems from probspaces.tex and add to - 
 the data set called ’spaces’ - 
\loadrandomproblems[spaces]{25}{probspaces} - 
 Display the problems - 
\renewcommand{\theenumi}{\thechapter.\arabic{enumi}} - 
\begin{enumerate} - 
\foreachproblem[spaces]{\item\label{prob:\thisproblemlabel}\thisproblem} - 
\end{enumerate} - 
 You may need to change \theenumi back here - 
\appendix - 
\chapter{Solutions} - 
\showanswers - 
\begin{itemize} - 
\foreachdataset{\thisdataset}{% - 
\foreachproblem[\thisdataset]{\item[\ref{prob:\thisproblemlabel}]\thisproblem} - 
} - 
\end{itemize} - 
\end{document} -
-

- - -

-

-

Top

10 Random Number Generator

-

This package provides a pseudo-random number generator that is used by -\loadrandomproblems. As noted earlier the random number generator has been -modified in version 3.01 in order to fix a bug. If you want to ensure that your -random numbers are compatible with earlier versions, you can switch to the old -generator using -


\PSNuseoldrandom  \PSNuseoldrandom

-

-


\PSNrandseed  \PSNrandseed{n}

-

-This sets the seed to nwhich must be a non-zero integer. For example, to -generate a different set of random numbers every time you LATEX your -document,2 -put the following in your preamble: - - -

-
-\PSNrandseed{\time} -
-

or to generate a different set of random numbers every year you LATEX your -document: - - -

-
-\PSNrandseed{\year} -
-

-


\PSNgetrandseed  \PSNgetrandseed{register}

-

-This stores the current seed in the count register specified by register. For -example: - - -

-
-\newcount\myseed - 
\PSNgetrandseed{\myseed} -
-

-


\PSNrandom  \PSNrandom{register}{n}

-

-Generates a random integer from 1 to nand stores in the count register -specified by register. For example, the following generates an integer from 1 to -10 and stores it in the register \myreg: - - -

-
-\newcount\myreg - 
\PSNrandom{\myreg}{10} -
-

-


\random  \random{counter}{min}{max}

-

-Generates a random integer from minto maxand stores in the given -counter. For example, the following generates a random number between 3 and -8 (inclusive) and stores it in the counter myrand. - - -

-
-\newcounter{myrand} - 
\random{myrand}{3}{8} -
-

-


\doforrandN  \doforrandN{n}{cmd}{list}{text}

-

-Randomly selects nvalues from the comma-separated list given by -listand iterates through this subset. On each iteration it sets cmd -to the current value and does text. For example, the following will -load a randomly selected problem from two of the listed files (where -file1.tex, file2.tex and file3.tex are files containing at least one -problem): - - -

-
-\doforrandN{2}{\thisfile}{file1,file2,file3}{% - 
\loadrandomproblems{1}{\thisfile}} -
-

-

-

-

Top

11 Compatibility With Versions Prior to 3.0

-

Version 3.0 of the probsoln package completely changed the structure of the -package, but the commands described in this section have been provided to -maintain compatibility with earlier versions. The only problems that are likely -to occur are those where commands are contained within groups. This will effect -any commands that are contained in external files that are outside of the -arguments to \newproblem and \newproblem*. However, since the external files -had to be parsed twice in order to load the problems, this shouldn’t be an issue -as adding anything other than problem definitions in those files would be -problematic anyway. -

The other likely difference is where the random generator is used in a group. -This includes commands such as \selectrandomly. For example, if your -document contained something like: - - -

-
-\begin{enumerate} - 
\selectrandomly{file1}{8} - 
\item Solve the following: - 
\begin{enumerate} - 
\selectrandomly{file2}{4} - 
\end{enumerate} - 
\selectrandomly{file3}{2} - 
\end{enumerate} -
-

Then using versions prior to v3.0 will produce a different set of random -numbers since the second \selectrandomly is in a different level of grouping. If -you want to ensure that the document produces exactly the same random set -with the new version as with the old version, you will need to get and set the -random number seed. For example, the above would need to be modified so that -it becomes: - - -

-
-\begin{enumerate} - 
\selectrandomly{file1}{8} - 
\item Solve the following: - 
\newcount\oldseed - 
\PSNgetrandseed{\oldseed} - 
\begin{enumerate} - 
\selectrandomly{file2}{4} - 
\end{enumerate} - 
\PSNrandseed{\oldseed} - 
\selectrandomly{file3}{2} - 
\end{enumerate} -
-

-


\selectrandomly  \selectrandomly{filename}{n}

-

-This is now equivalent to: - {\loadrandomproblems[filename]{n}{filename}}% -
\foreachproblem[filename]{\PSNitem\thisproblem\endPSNitem}
-


\selectallproblems  \selectallproblems{filename}

-

-This is now equivalent to: - {\loadallproblems[filename]{filename}}% -
\foreachproblem[filename]{\PSNitem\thisproblem\endPSNitem}
-

Note that in both the above cases, a new data set is created with the same -name as the file name. - - -

-

-

Top

Index

-

B -

-
babel package  1
-

C -\ClearUsedFile  2
-\correctitem  3
-\correctitemformat  4
-

D -defproblem (environment)  5, 6, 7, 8, 9, 10, 11, 12
-\doforrandN  13
-

E -enumerate (environment)  14, 15, 16
-environments:
-    defproblem  17, 18, 19, 20, 21, 22, 23, 24
-    enumerate  25, 26, 27
-    onlyproblem  28, 29, 30, 31, 32, 33, 34
-    onlysolution  35, 36, 37, 38, 39, 40, 41
-    solution  42, 43, 44
-    textenum  45
-\ExcludePreviousFile  46
-

F -\foreachdataset  47
-\foreachproblem  48, 49, 50
-\foreachsolution  51, 52
-fp package  53
-fragile  54
-

H -\hideanswers  55, 56, 57
- - -

I -\ifshowanswers  58, 59
-ifthen package  60
-\include  61
-\incorrectitem  62
-\incorrectitemformat  63
-\input  64, 65
-\item  66
-

L -\loadallproblems  67
-\loadexceptproblems  68
-\loadrandomexcept  69
-\loadrandomproblems  70, 71
-\loadselectedproblems  72
-

N -\newproblem  73, 74, 75, 76
-\newproblem*  77, 78, 79
-ngerman package  80
-

O -onlyproblem (environment)  81, 82, 83, 84, 85, 86, 87
-onlysolution (environment)  88, 89, 90, 91, 92, 93, 94
-

P -package options:
-    answers  95, 96, 97
-    draft  98
-    final  99
-    noanswers  100, 101
-    nousedefaultargs  102
-    usedefaultargs  103, 104, 105
-pgfmath package  106
-probsoln package  107, 108, 109
-\ProbSolnFragileExt  110
-\ProbSolnFragileFile  111
- - -\PSNgetrandseed  112
-\PSNrandom  113
-\PSNrandseed  114
-\PSNuseoldrandom  115, 116
-

R -\random  117
-

S -\selectallproblems  118
-\selectrandomly  119, 120
-\SetStartMonth  121
-\SetStartYear  122
-\SetUsedFileName  123
-\showanswers  124, 125, 126, 127
-showanswers boolean variable  128, 129, 130, 131
-solution (environment)  132, 133, 134
-\solutionname  135
-

T -textenum (environment)  136
-\theenumi  137
-\thisproblem  138, 139, 140, 141
-\thisproblemlabel  142
-

U -\useproblem  143, 144, 145
-

-

-1So don’t use \SetStartMonth after \SetStartYear.

-2assuming you leave at least a minute between runs.

- - - - - - diff --git a/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.tex b/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.tex deleted file mode 100644 index d2822c6093d..00000000000 --- a/Master/texmf-dist/doc/latex/probsoln/probsoln-manual.tex +++ /dev/null @@ -1,913 +0,0 @@ -\documentclass[a4paper]{nlctdoc} - -\usepackage[utf8]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{lmodern} -\usepackage{color} -\usepackage{creatdtx} -\usepackage{probsoln} - -\usepackage[colorlinks, - bookmarks, - hyperindex=false, - pdfauthor={Nicola L.C. Talbot}, - pdftitle={probsoln: creating problem sheets optionally with solutions}]{hyperref} -\doxitem{Option}{option}{package options} - -\RecordChanges -\PageIndex -\CheckSum{1822} - -\newcommand*{\dq}[1]{``#1''} - -\begin{document} -\MakeShortVerb{"} -\DeleteShortVerb{\|} - - \title{probsoln v3.04: -creating problem sheets optionally with solutions} - \author{Nicola L.C. Talbot\\[10pt] -School of Computing Sciences\\ -University of East Anglia\\ -Norwich. Norfolk\\ -NR4 7TJ. United Kingdom.\\ -\url{http://theoval.cmp.uea.ac.uk/~nlct/}} - - \date{2012-08-23} - \maketitle -\tableofcontents - - \section{Introduction} -The \styfmt{probsoln} package is designed for teachers or lecturers -who want to create problem sheets for their students. This package -was designed with mathematics problems in mind, but can be used for -other subjects as well. The idea is to create a file containing a -large number of problems with their solutions which can be read in -by \LaTeX, and then select a number of problems to typeset. This -means that once the database has been set up, each year you can -easily create a new problem sheet that is sufficiently different -from the previous year, thus preventing the temptation of current -students seeking out the previous year's students, and checking out -their answers. There is also an option that can be passed to the -package to determine whether or not the solutions should be printed. -In this way, one file can either produce the student's version or -the teacher's version. - -\section{Package Options}\label{sec:pkgopt} -The following options may be passed to this package: -\begin{description} -\item[\pkgopt{answers}] Show the answers -\item[\pkgopt{noanswers}] Don't show the answers (default) -\item[\pkgopt{draft}] Display the label and dataset name when a problem is used -\item[\pkgopt{final}] Don't display label and dataset name when a problem is used -\item[\pkgopt{usedefaultargs}] Make \ics{thisproblem} use the -default arguments supplied in the problem definition. -\item[\pkgopt{nousedefaultargs}] Make \ics{thisproblem} prompt for -problem arguments (default). -\end{description} - -\section{Verbatim}\label{sec:verbatim} - -As from version 3.02, problems and solutions may contain verbatim -text, but you must use the \iterm{fragile}\texttt{fragile} (or -\texttt{fragile=true}) option for the associated environments. - -Alternatively, if most of your problems contain verbatim, you can -globally set this option using: -\begin{verbatim} -\setkeys{probsoln}{fragile} -\end{verbatim} -You can switch off this option using \texttt{fragile=false}. - -The \texttt{fragile} option writes information to a temporary file. -This defaults to "\jobname.vrb" but the name may be changed. The -extension (".vrb") is given by: -\begin{definition}[\DescribeMacro{\ProbSolnFragileExt}] -\cs{ProbSolnFragileExt} -\end{definition} -The base name (\cs{jobname}) is given by: -\begin{definition}[\DescribeMacro{\ProbSolnFragileFile}] -\cs{ProbSolnFragileFile} -\end{definition} - -\section{Showing and Hiding Solutions}\label{sec:showanswers} - -In addition to the \pkgopt{answers} and \pkgopt{noanswers} package -options, it is also possible to show or suppress the solutions -using -\begin{definition}[\DescribeMacro{\showanswers}] -\cs{showanswers} -\end{definition} -and -\begin{definition}[\DescribeMacro{\hideanswers}] -\cs{hideanswers} -\end{definition} -respectively. - -The boolean variable \bool{showanswers} determines whether the -answers should be displayed. You can use this value with the -\sty{ifthen} package to specify different text depending on -whether the solutions should be displayed. For example: -\begin{verbatim} -Assignment 1\ifthenelse{\boolean{showanswers}}{ (Solution Sheet)}{} -\end{verbatim} -Alternatively you can use \ics{ifshowanswers}\ldots\cs{else}\ldots -\cs{fi}: -\begin{verbatim} -Assignment 1\ifshowanswers\space (Solution Sheet)\fi -\end{verbatim} - -For longer passages, you can use the environments -\begin{definition}[\DescribeEnv{onlyproblem}] -\cs{begin}\marg{onlyproblem}\oarg{option} -\end{definition} -and -\begin{definition}[\DescribeEnv{onlysolution}] -\cs{begin}\marg{onlysolution}\oarg{option} -\end{definition} -For example: -\begin{verbatim} -\begin{onlyproblem}% -What is the derivative of $f(x) = x^2$? -\end{onlyproblem}% -\begin{onlysolution}% -$f'(x) = 2x$ -\end{onlysolution} -\end{verbatim} -The above will only display the question if \bool{showanswers} -is false and will only display the solution if \bool{showanswers} -is true. If you want the question to appear in the answer -sheet as well as the solution, then don't put the question in -the \env{onlyproblem} environment: -\begin{verbatim} -What is the derivative of $f(x) = x^2$? -\begin{onlysolution}% -Solution: $f'(x) = 2x$ -\end{onlysolution} -\end{verbatim} - -\begin{important} -If you want to include verbatim text in the body of -\env{onlyproblem} or \env{onlysolution}, you need to specify -\texttt{fragile} in the optional argument of the environment. -(See \sectionref{sec:verbatim} for further details.) -\end{important} - -If you use \envfmt{onlysolution} within the \env{defproblem} -environment, the problem will be tagged as having a solution -and will be added to the list used by \ics{foreachsolution}. -The optional argument of \envfmt{onlysolution} (and \env{onlyproblem}) -is inherited from the parent \env{defproblem} setting. - -\section{General Formatting Commands}\label{sec:formatting} - -The commands and environments described in this section are -provided to assist formatting problems and their solutions. -\begin{definition}[\DescribeEnv{solution}] -\verb|\begin{solution}|\meta{text}\verb|\end{solution}| -\end{definition} -By default, this is equivalent to -\begin{display} -\verb|\par\noindent\textbf{\solutionname}: |\meta{text} -\end{display} -where \DescribeMacro{\solutionname}\cs{solutionname} defaults -to \dq{\solutionname}. Note that you must place the \env{solution} -environment inside the \envfmt{onlysolution} environment or -between \ics{ifshowanswers}\ldots\cs{fi} to ensure that it -is suppressed when the solutions are not wanted. (See -\sectionref{sec:showanswers}.) - - -Note that the \styfmt{probsoln} package will only define the -\env{solution} environment if it is not already defined. - -\begin{definition}[\DescribeEnv{textenum}] -\verb|\begin{textenum}|\ldots\verb|\end{textenum}| -\end{definition} -The \envfmt{textenum} environment is like the \env{enumerate} -environment but is in-line. It uses the same counter that the -\envfmt{enumerate} environment would use at that level so the -question can be compact but the answer can use \envfmt{enumerate} -instead. For example: -\begin{verbatim} -\begin{onlyproblem}% - Differentiate the following: - \begin{textenum} - \item $f(x)=2^x$; \item $f(x)=\cot(x)$ - \end{textenum} -\end{onlyproblem} -\begin{onlysolution} - \begin{enumerate} - \item - \begin{align*} - f(x) &= 2^x = \exp(\ln(x^2)) =\exp(2\ln(x))\\ - f'(x) &= \exp(2\ln(x))\times \frac{2}{x}\\ - &= f(x)\frac{2}{x} - \end{align*} - \item - \begin{align*} - f(x) &= \cot(x) = (\tan(x))^{-2}\\ - f'(x) &= -(\tan(x))^{-2}\times\sec^2(x)\\ - &=-\csc^2x - \end{align*} - \end{enumerate} -\end{onlysolution} -\end{verbatim} -In this example, the items in the question are brief, so an -\env{enumerate} environment would result in a lot of unnecessary -white space, but the answers require more space, so an -\envfmt{enumerate} environment is more appropriate. Since the -\envfmt{textenum} environment uses the same counters as the -\envfmt{enumerate} environment, the question and answer sheets use -consistent labelling. Note that there are other packages available -on CTAN that you can use to create in-line lists. Check the -\urlfootref{http://www.tex.ac.uk/tex-archive/help/Catalogue/bytopic.html\#enumeration}{TeX -Catalogue} for further details. - -\DescribeMacro{\correctitem}\DescribeMacro{\incorrectitem} -\begin{definition} -\cs{correctitem}\\ -\cs{incorrectitem} -\end{definition} -You can use the commands \cs{correctitem} and \cs{incorrectitem} -in place of \ics{item}. If the solutions are suppressed, these -commands behave in the same way as \cs{item}, otherwise they -format the item label using one of the commands: -\DescribeMacro{\correctitemformat}\DescribeMacro{\incorrectitemformat} -\begin{definition} -\cs{correctitemformat}\marg{label}\\ -\cs{incorrectitemformat}\marg{label} -\end{definition} -For example: -\begin{verbatim} -Under which of the following functions does $S=\{a_1,a_2\}$ -become a probability space? -\begin{enumerate} -\incorrectitem $P(a_1)=\frac{1}{3}$, $P(a_2)=\frac{1}{2}$ -\correctitem $P(a_1)=\frac{3}{4}$, $P(a_2)=\frac{1}{4}$ -\correctitem $P(a_1)=1$, $P(a_2)=0$ -\incorrectitem $P(a_1)=\frac{5}{4}$, $P(a_2)=-\frac{1}{4}$ -\end{enumerate} -\end{verbatim} -The default definition of \cs{correctitemformat} puts a frame around -the label. - -\section{Defining a Problem}\label{sec:defproblem} - -It is possible to construct a problem sheet with solutions using the -commands described in the previous sections, however it is also -possible to define a set of problems for later use. In this way you -can create an external file containing many problems some or all of -which can be loaded and used in a document. The \styfmt{probsoln} -package has a default data set labelled \dq{default} in which you -can store problems. Alternatively, you can create multiple data -sets. You can then iterate through each problem in a problem set. -You can use a previously defined problem more than once, which means -that by judicious use of \env{onlyproblem}, \env{onlysolution} or -the \bool{showanswers} boolean variable in conjunction with -\ics{showanswers} and \ics{hideanswers}, you can print the solutions -in a different location to the questions (for example in an -appendix). - -\begin{definition}[\DescribeEnv{defproblem}] -\verb|\begin{defproblem}|\oarg{n}\oarg{default args}\marg{label}\oarg{option}\newline -\meta{definition}\newline -\verb|\end{defproblem}| -\end{definition} -This defines the problem whose label is given by \meta{label}. The -label must be unique for a given data set and should not contain -active characters or a comma. (Active characters include the special characters -such as \$ and \&, but some packages may make other symbols active, -such as the colon (:) character. For example, the \sty{ngerman} and -\sty{babel} packages make certain punctuation active. Check the -relevant package documentation for details.) - -\begin{important} -The final optional argument \meta{option} may be \texttt{fragile} to -indicate that the problem contains verbatim text. Any occurrences of -\env{onlyproblem} or \env{onlysolution} contained within -\envfmt{defproblem} are inherited from \envfmt{defproblem}. (See -\sectionref{sec:verbatim} for further details.) -\end{important} - -If \env{defproblem} occurs in the document or is included via -\ics{input} or \ics{include}, then the problem will be added to -the default data set. If \envfmt{defproblem} occurs in an external -file that is loaded using one of the commands defined in -\sectionref{sec:load} then the problem will be added to -the specified data set. - -The contents of the \env{defproblem} environment should be the text -that defines the problem. This may include any of the commands -defined in \sectionref{sec:showanswers} and -\sectionref{sec:formatting}. - -The problem may optionally take \meta{n} arguments (where -\meta{n} is from 0 to 9). The arguments can be referenced -in the definition via \texttt{\#1},\ldots,\texttt{\#9}. -If \meta{n} is omitted then the problem doesn't take any -arguments. -The following example defines a problem with one argument: -\begin{verbatim} -\begin{defproblem}[1]{diffsin} -Differentiate $f(x)=\sin(#1x)$. -\begin{onlysolution}% - \begin{solution} - $f'(x) = #1\cos(#1x)$ - \end{solution} -\end{onlysolution} -\end{defproblem} -\end{verbatim} - -The second optional argument \meta{default args} supplies -default problem arguments that will automatically be used within -\ics{thisproblem} when used in \ics{foreachproblem} in conjunction -with the package option \pkgopt{usedefaultargs}. (See \sectionref{sec:foreach}.) -For example: -\begin{verbatim} -\begin{defproblem}[1][{2}]{diffsin} -Differentiate $f(x)=\sin(#1x)$. -\begin{onlysolution}% - \begin{solution} - $f'(x) = #1\cos(#1x)$ - \end{solution} -\end{onlysolution} -\end{defproblem} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\newproblem}] -\cs{newproblem}\oarg{n}\oarg{default args}\marg{label}\marg{problem}\marg{solution} -\end{definition} -This is a shortcut command for: -\begin{ttfamily}\obeylines -\cs{begin}\{defproblem\}\oarg{n}\oarg{default args}\marg{label}\% -\meta{problem}\% -\cs{begin}\{onlysolution\}\% -\cs{begin}\{solution\}\% -\meta{solution}\% -\cs{end}\{solution\}\% -\cs{end}\{onlysolution\}\% -\cs{end}\{defproblem\} -\end{ttfamily} -For example: -\begin{verbatim} -\newproblem[1]{diffsin}{% - \(f(x) = \sin(#1x)\) -}% -{% - \(f'(x) = #1\cos(#1x)\) -} -\end{verbatim} -is equivalent to -\begin{verbatim} -\begin{defproblem}[1]{diffcos}% - \(f(x) = \cos(#1x)\) -\begin{onlysolution}% - \begin{solution}% - \(f'(x) = -#1\sin(#1x)\) - \end{solution}% -\end{onlysolution}% -\end{defproblem} -\end{verbatim} -(In this example, the argument will need to be a positive number -to avoid a double minus in the answer. If you want to perform -floating point arithmetic on the arguments, then try the -\sty{fp} or \sty{pgfmath} packages.) - -Alternatively, if you want to supply default arguments to use when -iterating through problems with \ics{foreachproblem}: -\begin{verbatim} -\newproblem[1][{3}]{diffsin}{% - \(f(x) = \sin(#1x)\) -}% -{% - \(f'(x) = #1\cos(#1x)\) -} -\end{verbatim} - - -\begin{definition}[\DescribeMacro{\newproblem*}] -\cs{newproblem*}\oarg{n}\oarg{default args}\marg{label}\marg{definition} -\end{definition} -This is a shortcut for: -\begin{ttfamily}\obeylines -\cs{begin}\{defproblem\}\oarg{n}\oarg{default args}\marg{label}\% -\meta{definition}\% -\cs{end}\{defproblem\} -\end{ttfamily} - -\begin{important} -Note that you can't use verbatim text with \cs{newproblem} or -\cs{newproblem*}. Use the \env{defproblem} environment instead with -the \texttt{fragile option}. -\end{important} - -\section{Using a Problem}\label{sec:useproblem} - -Once you have defined a problem using \env{defproblem} or -\ics{newproblem} (see \sectionref{sec:defproblem}), you can -later display the problem using: -\begin{definition}[\DescribeMacro{\useproblem}] -\cs{useproblem}\oarg{data set}\marg{label}\marg{arg$_1$}\ldots -\marg{arg$_N$} -\end{definition} -where \meta{data set} is the name of the data set that contains -the problem (the default data set is used if omitted), -\meta{label} is the label identifying the required problem and -\meta{arg$_1$}, \ldots, \meta{arg$_N$} -are the arguments to pass to the problem, if the problem was -defined to have arguments (where $N$ is the number -of arguments specified when the problem was defined). - -For example, in the previous section the problem \texttt{diffcos} -was defined to have one argument, so it can be used as follows: -\begin{verbatim} -\useproblem{diffcos}{3} -\end{verbatim} -This will be equivalent to: -\begin{verbatim} -\(f(x) = \cos(3x)\) -\begin{onlysolution}% -\begin{solution}% -\(f'(x) = -3\sin(3x)\) -\end{solution}% -\end{onlysolution}% -\end{verbatim} - -\section{Loading Problems From External Files}\label{sec:load} - -You can store all your problem definitions (see -\sectionref{sec:defproblem}) in an external file. -These problems can all be appended to the default data set by -including the file via \ics{input} or they can be appended -to other data sets using one of the commands described below. -Once you have loaded all the required problems, you can -iterate through the data sets using the commands described -in \sectionref{sec:foreach}. Note that the commands below -will create a new data set, if the named data set doesn't -exist. - -\begin{definition}[\DescribeMacro{\loadallproblems}] -\cs{loadallproblems}\oarg{data set}\marg{filename} -\end{definition} -This will load all problems defined in \meta{filename} and -append them to the specified data set, in the order in which -they are defined in the file. If \meta{data set} is -omitted, the default data set will be used. If \meta{data set} -doesn't exist, it will be created. - -\begin{definition}[\DescribeMacro{\loadselectedproblems}] -\cs{loadselectedproblems}\oarg{data set}\marg{labels}\marg{filename} -\end{definition} -This is like \cs{loadallproblems}, but only those problems whose -label is listed in the comma-separated list \meta{labels} are -loaded. For example, if I have some problems defined in the -file \texttt{derivatives.tex}, then -\begin{verbatim} -\loadselectedproblems{diffsin,diffcos}{derivatives} -\end{verbatim} -will only load the problems whose labels are \texttt{diffsin} -and \texttt{diffcos}, respectively. All the other problems in -the file will remain undefined. - -\begin{definition}[\DescribeMacro{\loadexceptproblems}] -\cs{loadexceptproblems}\oarg{data set}\marg{exception list}\marg{filename} -\end{definition} -This is the reverse of \cs{loadselectedproblems}. This loads all -problems except those whose labels are listed in \meta{exception -list}. - -\begin{definition}[\DescribeMacro{\loadrandomproblems}] -\cs{loadrandomproblems}\oarg{data set}\marg{n}\marg{filename} -\end{definition} -This randomly loads \meta{n} problems from \meta{filename} and -adds them to the given data set. If \meta{data set} is omitted, -the default data set is assumed. Note that the problems will be -added to the data set in a random order, not in the order in -which they were defined. There must be at least \meta{n} problems -defined in \meta{filename}. - -\begin{definition}[\DescribeMacro{\loadrandomexcept}] -\cs{loadrandomexcept}\oarg{data -set}\marg{n}\marg{filename}\marg{exception list} -\end{definition} -This is similar to \cs{loadrandomproblems} except that it won't load -those problems whose labels are listed in \meta{exception list}. -\textbf{If you want to automatically exclude problems included in -previous documents, see \sectionref{sec:exprev}.} - -Note that the random number generator has been modified in version -3.01 in order to fix a bug. If you want to ensure that your random -numbers are compatible with earlier versions, you can switch to the -old generator using -\begin{definition}[\DescribeMacro{\PSNuseoldrandom}] -\cs{PSNuseoldrandom} -\end{definition} - -\begin{important} -It is generally not a good idea to place anything in -\meta{filename} that is not inside the body of \env{defproblem} -or in the arguments to \ics{newproblem} or \ics{newproblem*}. -All the commands in this section input the external file within -a local scope, so command definitions would need to be made -global to have any effect. In addition, \cs{loadrandomproblems} -has to load each file twice, which means that anything outside -a problem definition will be parsed twice. -\end{important} - -\subsection{Randomly Selecting Problems Not Selected in Previous -Documents} -\label{sec:exprev} - -Suppose you have a large set of questions that you want to randomly -select for assignments and exams. The chances are, you don't want to -include questions that have been previously set for, say, the last -three years. That is, you don't want to select questions the -students may already have seen. As from version 3.03, you can now do -this. - -The \sty{probsoln} package defaults to the UK academic year, which -starts in September. If this isn't appropriate, you can change it -using: -\begin{definition}[\DescribeMacro{\SetStartMonth}] -\cs{SetStartMonth}\marg{n} -\end{definition} -where \meta{n} is the number of the month. (1 = January, 2 = -February, etc.) - -The \emph{start year} is the calender year in effect when the -academic year started. For example, if this is the academic year -2011/12, then the start year is 2011. This is automatically set to -the start of the current academic year. It is also updated when -\cs{SetStartMonth} is used.\footnote{So don't use \cs{SetStartMonth} -after \cs{SetStartYear}.} If you want to set it to a specific year, -you can use: -\begin{definition}[\DescribeMacro{\SetStartYear}] -\cs{SetStartYear}\marg{year} -\end{definition} -For example: \verb|\SetStartYear{2008}| indicates the academic year -2008/9. - -There are two files concerned with previously used labels. They are: -\begin{description} - - \item[The previously used labels file] This keeps track of all - problems used in previous years, as well as problems used by - other documents that have this as their previously used labels - file, and it contains the problem labels from the last run of - the current document. - - \item[The current used labels file] This defaults to -\cs{jobname}\texttt{.prb}, but the name can be changed using: - \begin{definition}[\DescribeMacro{\SetUsedFileName}] - \cs{SetUsedFileName}\marg{name} - \end{definition} - This file keeps track of all the labels used in the current - document from the previous \LaTeX\ run. Note that if you want to - delete this file, first clear it using - \begin{definition}[\DescribeMacro{\ClearUsedFile}] - \cs{ClearUsedFile}\marg{file} - \end{definition} - in place of \cs{ExcludePreviousFile}\marg{file}, described below. - The argument \meta{file} is the previously used labels file - described above. \cs{ClearUsedFile} will remove all labels in - the current used labels file from the previously used labels file - and clear the current used labels file. Once this file is empty, - it may then be deleted. - -\end{description} - -Before loading randomly selected problems, first specify the -previously used labels file with the command: -\begin{definition}[\DescribeMacro{\ExcludePreviousFile}] -\cs{ExcludePreviousFile}\oarg{number of years}\marg{file name} -\end{definition} -where \meta{file name} is the name of the previously used file. The -optional argument \meta{number of years} specifies the year cut-off. -This defaults to 3, which means that only those labels used this -year or the previous 2 years will be kept. Any problems used before -then may be reused. - -Suppose I'm lecturing a first year undergraduate mathematics course -(designated, say, mth101). I want to set assignments on each topic -and an exam at the end of the year (as well as a resit or second -sitting paper). I've got databases with problems for each topic, but -the first and second sitting exams mustn't include any of the -problems used in the assignments or any problems used in assignments -or exams for the previous two academic years. I'm going to arrange -my directory structure as follows: -\begin{itemize} -\item \texttt{mth101/} - \begin{itemize} - \item \texttt{assignment1/} (differentiation) - \begin{itemize} - \item \texttt{assignment1.tex} - \end{itemize} - \item \texttt{assignment2/} (probability spaces) - \begin{itemize} - \item \texttt{assignment2.tex} - \end{itemize} - \item \texttt{assignment3/} (linear algebra) - \begin{itemize} - \item \texttt{assignment3.tex} - \end{itemize} - \item \texttt{exams/} - \begin{itemize} - \item \texttt{exam.tex} (first sitting) - \item \texttt{resit.tex} (second sitting) - \end{itemize} - \item \texttt{databases/} - \begin{itemize} - \item \texttt{differentiation.tex} - \item \texttt{probabilityspaces.tex} - \item \texttt{linearalgebra.tex} - \end{itemize} - \item \texttt{previouslabels.tex} (created by \sty{probsoln}) - \end{itemize} -\end{itemize} - -\section{Iterating Through Datasets}\label{sec:foreach} - -Once you have defined all your problems for a given data set, you -can use an individual problem with \ics{useproblem} (see -\sectionref{sec:useproblem}) but it is more likely that you will -want to iterate through all the problems so that you don't need to -remember the labels of all the problems you have defined. - -\begin{definition}[\DescribeMacro{\foreachproblem}] -\cs{foreachproblem}\oarg{data set}\marg{body} -\end{definition} -This does \meta{body} for each problem in the given data set. -If \meta{data set} is omitted, the default data set is used. -Within \meta{body} you can use -\begin{definition}[\DescribeMacro{\thisproblem}] -\cs{thisproblem} -\end{definition} -to use the current problem and -\begin{definition}[\DescribeMacro{\thisproblemlabel}] -\cs{thisproblemlabel} -\end{definition} -to access the current label. If the problem requires arguments, -and no default arguments were supplied in the problem definition or -the package option \pkgopt{usedefaultargs} was not used, then -you will be prompted for arguments, so if you want to use this -approach you will need to use \LaTeX\ in interactive mode. If -you do provide arguments, they will be stored in the event that -you need to iterate through the data set again. The -arguments will be included in \cs{thisproblem}, so you only -need to use \cs{thisproblem} without having to specify -\ics{useproblem}. - -For example, to iterate through all problems -in the default data set: -\begin{verbatim} -\begin{enumerate} -\foreachproblem{\item\thisproblem} -\end{enumerate} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\foreachsolution}] -\cs{foreachsolution}\oarg{data set}\marg{body} -\end{definition} -This is equivalent to \cs{foreachsolution}, but only iterates -through problems that contain the \env{onlysolution} environment. -Note that you still need to use \ics{showanswers} or the -\pkgopt{answers} package option for the contents of the -\env{onlysolution} environment to appear. - -\begin{definition}[\DescribeMacro{\foreachdataset}] -\cs{foreachdataset}\marg{cmd}\marg{body} -\end{definition} -This does \meta{body} for each of the defined data sets. Within -\meta{body}, \meta{cmd} will be set to the name of the current -data set. For example, to display all problems in all data sets: -\begin{verbatim} -\begin{enumerate} -\foreachdataset{\thisdataset}{% -\foreachproblem[\thisdataset]{\item\thisproblem}} -\end{enumerate} -\end{verbatim} - -Suppose I have two external files called -\texttt{derivatives.tex} and \texttt{probspaces.tex} which -define problems using both \env{onlyproblem} and -\env{onlysolution} for example: -\begin{verbatim} -\begin{defproblem}{cosxsqsinx}% -\begin{onlyproblem}% -$y = \cos(x^2)\sin x$.% -\end{onlyproblem}% -\begin{onlysolution}% -\[\frac{dy}{dx} = -\sin(x^2)2x\sin x + \cos(x^2)\cos x\] -\end{onlysolution}% -\end{defproblem} -\end{verbatim} -I can write a document that creates two data sets, one for -the derivative problems and one for the problems about -probability spaces. I can then use \ics{hideanswers} and -iterate through the require data set to produce the problems. -Later, I can use \ics{showanswers} and iterate over all problems defined in both data -sets to produce the chapter containing all the answers. When -displaying the questions, I have taken advantage of the fact that -I can cross-reference items within an \env{enumerate} environment, -and redefined \ics{theenumi} to label the questions according to -the chapter. The cross-reference label is constructed from -the problem label and is referenced in the answer section to -ensure that the answers have the same label as the questions. -\begin{verbatim} -\documentclass{report} -\usepackage{probsoln} -\begin{document} -\hideanswers -\chapter{Differentiation} -% randomly select 25 problems from derivatives.tex and add to -% the data set called 'deriv' -\loadrandomproblems[deriv]{25}{derivatives} - -% Display the problems -\renewcommand{\theenumi}{\thechapter.\arabic{enumi}} -\begin{enumerate} -\foreachproblem[deriv]{\item\label{prob:\thisproblemlabel}\thisproblem} -\end{enumerate} -% You may need to change \theenumi back here - -\chapter{Probability Spaces} -% randomly select 25 problems from probspaces.tex and add to -% the data set called 'spaces' -\loadrandomproblems[spaces]{25}{probspaces} - -% Display the problems -\renewcommand{\theenumi}{\thechapter.\arabic{enumi}} -\begin{enumerate} -\foreachproblem[spaces]{\item\label{prob:\thisproblemlabel}\thisproblem} -\end{enumerate} -% You may need to change \theenumi back here - -\appendix - -\chapter{Solutions} -\showanswers -\begin{itemize} -\foreachdataset{\thisdataset}{% -\foreachproblem[\thisdataset]{\item[\ref{prob:\thisproblemlabel}]\thisproblem} -} -\end{itemize} - -\end{document} -\end{verbatim} - -\section{Random Number Generator}\label{sec:random} - -This package provides a pseudo-random number generator that is used -by \ics{loadrandomproblems}. As noted earlier the random number -generator has been modified in version 3.01 in order to fix a bug. -If you want to ensure that your random numbers are compatible with -earlier versions, you can switch to the old generator using -\begin{definition}[\DescribeMacro{\PSNuseoldrandom}] -\cs{PSNuseoldrandom} -\end{definition} - -\begin{definition}[\DescribeMacro{\PSNrandseed}] -\cs{PSNrandseed}\marg{n} -\end{definition} -This sets the seed to \meta{n} which must be a non-zero integer. -For example, to generate a different set of random numbers -every time you \LaTeX\ your document,\footnote{assuming you -leave at least a minute between runs.} put the following in your -preamble: -\begin{verbatim} -\PSNrandseed{\time} -\end{verbatim} -or to generate a different set of random numbers every year you -\LaTeX\ your document: -\begin{verbatim} -\PSNrandseed{\year} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\PSNgetrandseed}] -\cs{PSNgetrandseed}\marg{register} -\end{definition} -This stores the current seed in the count register specified by -\meta{register}. -For example: -\begin{verbatim} -\newcount\myseed -\PSNgetrandseed{\myseed} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\PSNrandom}] -\cs{PSNrandom}\marg{register}\marg{n} -\end{definition} -Generates a random integer from 1 to \meta{n} and stores in -the count register specified by \meta{register}. For example, -the following generates an integer from 1 to 10 and stores it -in the register \cs{myreg}: -\begin{verbatim} -\newcount\myreg -\PSNrandom{\myreg}{10} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\random}] -\cs{random}\marg{counter}\marg{min}\marg{max} -\end{definition} -Generates a random integer from \meta{min} to \meta{max} and -stores in the given counter. For example, the following generates -a random number between 3 and 8 (inclusive) and stores it in -the counter \texttt{myrand}. -\begin{verbatim} -\newcounter{myrand} -\random{myrand}{3}{8} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\doforrandN}] -\cs{doforrandN}\marg{n}\marg{cmd}\marg{list}\marg{text} -\end{definition} -Randomly selects \meta{n} values from the comma-separated list -given by \meta{list} and iterates through this subset. On -each iteration it sets \meta{cmd} to the current value and -does \meta{text}. For example, the following will load a -randomly selected problem from two of the listed files (where -\texttt{file1.tex}, \texttt{file2.tex} and \texttt{file3.tex} -are files containing at least one problem): -\begin{verbatim} -\doforrandN{2}{\thisfile}{file1,file2,file3}{% -\loadrandomproblems{1}{\thisfile}} -\end{verbatim} - -\section{Compatibility With Versions Prior to 3.0} - -Version 3.0 of the \sty{probsoln} package completely changed the -structure of the package, but the commands described in this -section have been provided to maintain compatibility with -earlier versions. The only problems that are likely to occur are -those where commands are contained within groups. This will -effect any commands that are contained in external files that are -outside of the arguments to \ics{newproblem} and \ics{newproblem*}. -However, since the external files had to be parsed twice in -order to load the problems, this shouldn't be an issue as adding -anything other than problem definitions in those files would -be problematic anyway. - -The other likely difference is where the random generator is -used in a group. This includes commands such as -\ics{selectrandomly}. For example, if your document contained -something like: -\begin{verbatim} -\begin{enumerate} -\selectrandomly{file1}{8} - -\item Solve the following: -\begin{enumerate} -\selectrandomly{file2}{4} -\end{enumerate} - -\selectrandomly{file3}{2} -\end{enumerate} -\end{verbatim} -Then using versions prior to v3.0 will produce a different -set of random numbers since the second \cs{selectrandomly} -is in a different level of grouping. If you want to ensure -that the document produces exactly the same random set with -the new version as with the old version, you will need to -get and set the random number seed. For example, the above -would need to be modified so that it becomes: -\begin{verbatim} -\begin{enumerate} -\selectrandomly{file1}{8} - -\item Solve the following: -\newcount\oldseed -\PSNgetrandseed{\oldseed} -\begin{enumerate} -\selectrandomly{file2}{4} -\end{enumerate} -\PSNrandseed{\oldseed} - -\selectrandomly{file3}{2} -\end{enumerate} -\end{verbatim} - -\begin{definition}[\DescribeMacro{\selectrandomly}] -\cs{selectrandomly}\marg{filename}\marg{n} -\end{definition} -This is now equivalent to: -\begin{ttfamily}\obeylines -\{\cs{loadrandomproblems}\oarg{filename}\marg{n}\marg{filename}\}\% -\cs{foreachproblem}\oarg{filename}\{\cs{PSNitem}\cs{thisproblem}\cs{endPSNitem}\} -\end{ttfamily} - -\begin{definition}[\DescribeMacro{\selectallproblems}] -\cs{selectallproblems}\marg{filename} -\end{definition} -This is now equivalent to: -\begin{ttfamily}\obeylines -\{\cs{loadallproblems}\oarg{filename}\marg{filename}\}\% -\cs{foreachproblem}\oarg{filename}\{\cs{PSNitem}\cs{thisproblem}\cs{endPSNitem}\} -\end{ttfamily} - -Note that in both the above cases, a new data set is created -with the same name as the file name. - - \StopEventually{\clearpage\phantomsection\addcontentsline{toc}{section}{Index}\PrintIndex} - -\end{document} diff --git a/Master/texmf-dist/doc/latex/probsoln/probsoln.pdf b/Master/texmf-dist/doc/latex/probsoln/probsoln.pdf index e0bbc92904f..50dee7e1cc0 100644 Binary files a/Master/texmf-dist/doc/latex/probsoln/probsoln.pdf and b/Master/texmf-dist/doc/latex/probsoln/probsoln.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-1stprncp.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-1stprncp.tex new file mode 100644 index 00000000000..343d6b3e1c0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-1stprncp.tex @@ -0,0 +1,63 @@ + % This file is public domain + % + % These problems all involve differentiating from 1st principles + +\newproblem{dfp:xcube}{% +Differentiate $f(x) = x^3$ with respect to $x$ by first principles.}{% +\begin{eqnarray*} +\frac{dy}{dx} & = & \lim_{\Delta x\rightarrow 0}\frac{f(x+\Delta x) - f(x)}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{(x+\Delta x)^3-x^3}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{(x+\Delta x)(x^2+2x\Delta x+(\Delta x)^2)-x^3}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{x^3+3x^2\Delta x+3x(\Delta x)^2+(\Delta x)^3-x^3}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{3x^2\Delta x+3x(\Delta x)^2+(\Delta x)^3}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}3x^2+3x\Delta x + (\Delta x)^2\\ + & = & 3x^2 +\end{eqnarray*}} + +\newproblem{dfp:Ioverxsq}{% +Differentiate $\displaystyle f(x) = \frac{1}{x^2}$ with respect to $x$ by first principles.}{% +\begin{eqnarray*} +\frac{df}{dx} & = & \lim_{\Delta x\rightarrow 0}\frac{\frac{1}{(x+\Delta x)^2}-\frac{1}{x^2}}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{\frac{x^2-(x+\Delta x)^2}{x^2(x+\Delta x)^2}}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{x^2-(x^2+2x\Delta x+(\Delta x)^2)}{x^2\Delta x(x+\Delta x)^2}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{-2x\Delta x-(\Delta x)^2}{x^2\Delta x(x+\Delta x)^2}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{-2x-\Delta x}{x^2(x+\Delta x)^2}\\ + & = & \frac{-2x}{x^2x^2}\\ + & = & -\frac{2}{x^3} +\end{eqnarray*}} + +\newproblem{dfp:sqrtx}{% +Differentiate from first principles $f(x) = \surd x$}{% +\begin{eqnarray*} +\frac{df}{dx} & = & \lim_{\Delta x\rightarrow 0}\frac{\sqrt{x+\Delta x}-\surd x}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{(\sqrt{x+\Delta x}-\surd x)(\sqrt{x+\delta x}+\surd x)}{\Delta x(\sqrt{x+\Delta x}+\surd x)}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{x+\Delta x - x}{\Delta x(\sqrt{x+\Delta x}+\surd x)}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{\Delta x}{\Delta x(\sqrt{x+\Delta x}+\Delta x)}\\ + & = & \lim_{\Delta x\rightarrow 0}\frac{1}{\sqrt{x+\Delta x}+\surd x}\\ + & = & \frac{1}{2\surd x} +\end{eqnarray*}} + +\newproblem{dfp:cons}{% +Differentiate from first principles $f(x) = c$ where $c$ is a constant.}{% +\begin{eqnarray*} +\frac{df}{dx} & = & \lim_{\Delta x\rightarrow 0}\frac{c-c}{\Delta x}\\ + & = & \lim_{\Delta x\rightarrow 0}0\\ + & = & 0 +\end{eqnarray*}} + +\newproblem{dfp:cosx}{% +Given +\begin{eqnarray*} +\lim_{x \rightarrow 0} \frac{\cos x - 1}{x} & = & 0\\ +\lim_{x \rightarrow 0} \frac{\sin x}{x} & = & 1 +\end{eqnarray*} +differentiate from first principles $f(x) = \cos x$.}{% +\begin{eqnarray*} +\frac{df}{dx} & = & \lim_{\Delta x \rightarrow 0}\frac{f(x + \Delta x) - f(x)}{\Delta x}\\ + & = & \lim_{\Delta x \rightarrow 0} \frac{\cos(x + \Delta x) - \cos(x)}{\Delta x}\\ + & = & \lim_{\Delta x \rightarrow 0} \frac{\cos x\cos\Delta x - \sin x\sin\Delta x - \cos x}{\Delta x}\\ + & = & \lim_{\Delta x \rightarrow 0} \frac{\cos x(\cos\Delta x - 1) - \sin x\sin\Delta x}{\Delta x}\\ + & = & \cos x\lim_{\Delta x \rightarrow 0}\frac{\cos\Delta x - 1}{\Delta x} + - \sin x\lim_{\Delta x \rightarrow 0}\frac{\sin\Delta x}{\Delta x}\\ + & = & -1 \qquad\mbox{(using given results)} +\end{eqnarray*}} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-args.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-args.tex new file mode 100644 index 00000000000..8276790feb6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-args.tex @@ -0,0 +1,49 @@ + % This file is public domain + % + % These problems require arguments +% + % Arguments: #1->a_2, #2->a_1 and #3->a_0 + % (Arguments must be integers) +\newcount\ctr +\newproblem[3][{1}{2}{3}]{diff:quad}{% +\(f(x) = +\ifnum#1=0 +\else +\ifnum#1=1\else#1\fi x^2 +\fi +\ifnum#2=0 +\else +\ifnum#2>0 \ifnum#1=0 \else + \fi \fi +\ifnum#2=1\else#2\fi x +\fi +\ifnum#3=0 +\else +\ifnum#3>0 \ifnum#2=0 \ifnum#1=0 \else + \fi \else + \fi\fi +#3 +\fi\) +}{% +\(f'(x) = +\ifnum#1=0 +\else +\ctr=2 +\multiply\ctr by #1 +\the\ctr x +\fi +\ifnum#2=0 +\else +\ifnum#2>0 \ifnum#1=0 \else + \fi \fi +#2 +\fi + % print 0 if both #1 and #2 are 0 +\ifnum#1=0 \ifnum#2=0 0 \fi\fi +\) +} + +\begin{defproblem}[1][{6}]{diff:sin} +\begin{onlyproblem} + \(f(x) = \sin(#1x)\) +\end{onlyproblem} +\begin{onlysolution} + \(f'(x) = #1\cos(#1x)\) +\end{onlysolution} +\end{defproblem} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-easy.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-easy.tex new file mode 100644 index 00000000000..0527e3e4647 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-easy.tex @@ -0,0 +1,114 @@ + % This file is public domain + % + % These are all easy differentiation problems + +\newproblem{diffeasy:gpowh}{% +\(f(x) = g(x)^{h(x)}.\)}{% +\begin{eqnarray*} +f(x) & = & e^{\ln g(x)^{h(x)}}\\ + & = & e^{h(x)\ln g(x)}\\ +f'(x) & = & e^{h(x)\ln g(x)}(h'(x)\ln g(x) + h(x)\frac{g'(x)}{g(x)})\\ + & = & g(x)^{h(x)}(h'(x)\ln g(x) + \frac{h(x)g'(x)}{g(x)}) +\end{eqnarray*}} + +\newproblem{diffeasy:arcsin}{% +\(y = \arcsin(x)\)}{% +\[\sin(y) = x\] +diff. w.r.t. $x$: +\begin{eqnarray*} +\cos y \frac{dy}{dx} & = & 1\\ +\frac{dy}{dx} & = & \frac{1}{\cos y}\\ + & = & \frac{1}{\sqrt{1 - \sin^2y}}\\ + & = & \frac{1}{\sqrt{1-x^2}}. +\end{eqnarray*}} + +\newproblem{diffeasy:arccos}{% +$y = \arccos x$.}{% +\(\cos y = x\) +diff. w.r.t. $x$: +\begin{eqnarray*} +-\sin y \frac{dy}{dx} & = & 1\\ +\frac{dy}{dx} & = & \frac{-1}{\sin y}\\ + & = & \frac{-1}{\sqrt{1-\cos^2y}}\\ + & = & \frac{-1}{\sqrt{1-x^2}} +\end{eqnarray*}} + +\newproblem{diffeasy:tan}{% +\(y = \tan x\)}{% +\begin{eqnarray*} +y & = & \tan x\\ + & = & \frac{\sin x}{\cos x}\\ +\frac{dy}{dx} & = & \frac{\cos x}{\cos x} + \sin x\times\frac{-1}{\cos^2x}\times -\sin x\\ + & = & 1 + \tan^2x\\ + & = & \sec^2x. +\end{eqnarray*}} + +\newproblem{diffeasy:arctan}{% +\(y = \arctan x = \tan^{-1}x\)}{% +\[\tan y = x\] +diff w.r.t. $x$: +\begin{eqnarray*} +\sec^2y\frac{dy}{dx} & = & 1\\ +\frac{dy}{dx} & = & \frac{1}{\sec^2y}\\ + & = & \frac{1}{1+\tan^2y}\\ + & = & \frac{1}{1+x^2} +\end{eqnarray*}} + +\newproblem{diffeasy:cot}{% +\(y = (\tan x)^{-1} = \cot x\)}{% +\begin{eqnarray*} +\frac{dy}{dx} & = & -(\tan x)^{-2}\sec^2x\\ + & = & -\frac{\cos^2x}{\sin^2x}\cdot\frac{1}{\cos^2x}\\ + & = & \frac{-1}{\sin^2x}\\ + & = & -\csc^2x. +\end{eqnarray*}} + +\newproblem{diffeasy:cosxsqsinx}{% +$y = \cos(x^2)\sin x$.}{% +\[\frac{dy}{dx} = -\sin(x^2)2x\sin x + \cos(x^2)\cos x\]} + +\newproblem{diffeasy:xlnx}{% +$y = (x+1)\ln(x+1)$.}{% +\begin{eqnarray*} +\frac{dy}{dx} & = & \ln(x+1) + \frac{x+1}{x+1}\\ + & = & 1 + \ln(x+1). +\end{eqnarray*}} + +\newproblem{diffeasy:glng}{% +$f(x) = g(x)\ln(g(x))$.}{% +\begin{eqnarray*} +f'(x) & = & g'(x)\ln(g(x)) + \frac{g(x)}{g(x)}g'(x)\\ + & = & g'(x)(1+\ln(g(x))). +\end{eqnarray*}} + +\newproblem{diffeasy:sinx/x}{% +$y = \frac{\sin x}{x}$.}{% +\[\frac{dy}{dx} = \frac{\cos x}{x} - \frac{\sin x}{x^2}\]} + +\newproblem{diffeasy:exp4x}{% + $y = \exp(4x)$ +}% +{% + \[\frac{dy}{dx} = 4\exp(4x)\] +} + +\newproblem{diffeasy:exp3x+2}{% + $y = \exp(3x+2)$ +}% +{% + \[\frac{dy}{dx} = 3\exp(3x+2)\] +} + +\newproblem{diffeasy:cubic}{% + $y=x^3 + 4x^2 - x + 3$ +}% +{% + \[\frac{dy}{dx} = 3x^2 + 8x - 1\] +} + +\newproblem{diffeasy:quad}{% + $y=2x^3 + 6x -1$ +}% +{% + \[\frac{dy}{dx} = 6x + 6 = 6(x+1)\] +} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-easy2.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-easy2.tex new file mode 100644 index 00000000000..d6edc7ee3ce --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-easy2.tex @@ -0,0 +1,137 @@ + % This file is public domain + % + % These are all easy differentiation problems + +\begin{defproblem}{diffeasy:gpowh}% +\begin{onlyproblem}% +\(f(x) = g(x)^{h(x)}.\)% +\end{onlyproblem}% +\begin{onlysolution}% +\begin{eqnarray*} +f(x) & = & e^{\ln g(x)^{h(x)}}\\ + & = & e^{h(x)\ln g(x)}\\ +f'(x) & = & e^{h(x)\ln g(x)}(h'(x)\ln g(x) + h(x)\frac{g'(x)}{g(x)})\\ + & = & g(x)^{h(x)}(h'(x)\ln g(x) + \frac{h(x)g'(x)}{g(x)}) +\end{eqnarray*}% +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:arcsin}% +\begin{onlyproblem}% +\(y = \arcsin(x)\)% +\end{onlyproblem}% +\begin{onlysolution}% +\[\sin(y) = x\] +diff. w.r.t. $x$: +\begin{eqnarray*} +\cos y \frac{dy}{dx} & = & 1\\ +\frac{dy}{dx} & = & \frac{1}{\cos y}\\ + & = & \frac{1}{\sqrt{1 - \sin^2y}}\\ + & = & \frac{1}{\sqrt{1-x^2}}. +\end{eqnarray*} +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:arccos}% +\begin{onlyproblem}% +$y = \arccos x$.% +\end{onlyproblem}% +\begin{onlysolution}% +\(\cos y = x\) +diff. w.r.t. $x$: +\begin{eqnarray*} +-\sin y \frac{dy}{dx} & = & 1\\ +\frac{dy}{dx} & = & \frac{-1}{\sin y}\\ + & = & \frac{-1}{\sqrt{1-\cos^2y}}\\ + & = & \frac{-1}{\sqrt{1-x^2}} +\end{eqnarray*} +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:tan}% +\begin{onlyproblem}% +\(y = \tan x\)% +\end{onlyproblem} +\begin{onlysolution}% +\begin{eqnarray*} +y & = & \tan x\\ + & = & \frac{\sin x}{\cos x}\\ +\frac{dy}{dx} & = & \frac{\cos x}{\cos x} + \sin x\times\frac{-1}{\cos^2x}\times -\sin x\\ + & = & 1 + \tan^2x\\ + & = & \sec^2x. +\end{eqnarray*} +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:arctan}% +\begin{onlyproblem}% +\(y = \arctan x = \tan^{-1}x\)% +\end{onlyproblem}% +\begin{onlysolution}% +\[\tan y = x\] +diff w.r.t. $x$: +\begin{eqnarray*} +\sec^2y\frac{dy}{dx} & = & 1\\ +\frac{dy}{dx} & = & \frac{1}{\sec^2y}\\ + & = & \frac{1}{1+\tan^2y}\\ + & = & \frac{1}{1+x^2} +\end{eqnarray*} +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:cot}% +\begin{onlyproblem}% +\(y = (\tan x)^{-1} = \cot x\)% +\end{onlyproblem} +\begin{onlysolution}% +\begin{eqnarray*} +\frac{dy}{dx} & = & -(\tan x)^{-2}\sec^2x\\ + & = & -\frac{\cos^2x}{\sin^2x}\cdot\frac{1}{\cos^2x}\\ + & = & \frac{-1}{\sin^2x}\\ + & = & -\csc^2x. +\end{eqnarray*} +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:cosxsqsinx}% +\begin{onlyproblem}% +$y = \cos(x^2)\sin x$.% +\end{onlyproblem}% +\begin{onlysolution}% +\[\frac{dy}{dx} = -\sin(x^2)2x\sin x + \cos(x^2)\cos x\] +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:xlnx}% +\begin{onlyproblem}% +$y = (x+1)\ln(x+1)$. +\end{onlyproblem}% +\begin{onlysolution}% +\begin{eqnarray*} +\frac{dy}{dx} & = & \ln(x+1) + \frac{x+1}{x+1}\\ + & = & 1 + \ln(x+1). +\end{eqnarray*} +\end{onlysolution} +\end{defproblem} + +\begin{defproblem}{diffeasy:glng}% +\begin{onlyproblem}% +$f(x) = g(x)\ln(g(x))$. +\end{onlyproblem} +\begin{onlysolution}% +\begin{eqnarray*} +f'(x) & = & g'(x)\ln(g(x)) + \frac{g(x)}{g(x)}g'(x)\\ + & = & g'(x)(1+\ln(g(x))). +\end{eqnarray*} +\end{onlysolution}% +\end{defproblem} + +\begin{defproblem}{diffeasy:sinx/x} +\begin{onlyproblem}% +$y = \frac{\sin x}{x}$. +\end{onlyproblem} +\begin{onlysolution}% +\[\frac{dy}{dx} = \frac{\cos x}{x} - \frac{\sin x}{x^2}\] +\end{onlysolution}% +\end{defproblem} + diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-implicit.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-implicit.tex new file mode 100644 index 00000000000..dd847d96e30 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-implicit.tex @@ -0,0 +1,52 @@ + % This file is public domain + % + % These are all implicit differentiation problems + +\newproblem{imd:circ}{% +Find the gradient of the unit circle ($x^2 + y^2 = 1$).}{% +Differentiating with respect to $x$ gives: +\begin{eqnarray*} +2x + 2y\frac{dy}{dx} & = & 0\\ +\frac{dy}{dx} & = & \frac{-2x}{2y}\\ + & = & \frac{-x}{\sqrt{1-x^2}}. +\end{eqnarray*}} + +\newproblem{imd:ellipse}{% +Find the gradient of the ellipse given by $4x^2 + 3y^2 = 25$.}{% +Differentiating with respect to $x$ gives: +\begin{eqnarray*} +8x + 6y\frac{dy}{dx} & = & 0\\ +\frac{dy}{dx} & = & \frac{-8x}{6y}\\ + & = & \frac{-4x}{\sqrt{25-4x^2}}. +\end{eqnarray*}} + +\newproblem{imd:ysq:xcuov2mx}{% +Find $\frac{dy}{dx}$, given +\begin{displaymath} +y^2 = \frac{x^3}{2-x} +\end{displaymath}}{% +Differentiating both sides w.r.t.\ $x$: +\begin{eqnarray*} +2y\frac{dy}{dx} & = & \frac{(2-x)3x^2 - x^3(-1)}{(2-x)^2}\\ + & = & \frac{3x^2(2-x) + x^3}{(2-x)^2}\\ + & = & \frac{6x^2 - 3x^3 + x^3}{(2-x)^2}\\ + & = & \frac{6x^2-2x^3}{(2-x)^2}\\ + & = & 2x^2\frac{3-x}{(2-x)^2} +\end{eqnarray*} +Therefore +\begin{displaymath} +y\frac{dy}{dx} = x^2\frac{3-x}{(2-x)^2} +\end{displaymath}} + +\newproblem{imd:exy:IIxay}{% +Differentiate w.r.t.\ $x$: +\begin{displaymath} +e^{xy} = 2x + y +\end{displaymath}}{% +Differentiating both sides w.r.t.\ $x$: +\begin{eqnarray*} +e^{xy}(1y + x\frac{dy}{dx}) & = & 2 + \frac{dy}{dx}\\ +xe^{xy}\frac{dy}{dx} - \frac{dy}{dx} & = & 2 - ye^{xy} \\ +\frac{dy}{dx}(xe^{xy}-1) & = & 2 - ye^{xy}\\ +\frac{dy}{dx} & = & \frac{2-ye^{xy}}{xe^{xy}-1} +\end{eqnarray*}} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-mchoice.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-mchoice.tex new file mode 100644 index 00000000000..22886ce9b2c --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-mchoice.tex @@ -0,0 +1,37 @@ + % This file is public domain + % + % These problems are for multiple choice questions +\newproblem{mc:prod}{% +Which of the following is the derivative of $x\sin(x)$? +(Circle the correct answer.) +\ifthenelse{\boolean{showanswers}}{}% +{\begin{description} +\item[A] $\sin(x)$ +\item[B] $x\cos(x)$ +\item[C] $\sin(x) + x\cos(x)$ +\end{description} +}}{% +\begin{description} +\item[A] $\sin(x)$ +\item[B] $x\cos(x)$ +\item[\textcircled{C}] $\sin(x) + x\cos(x)$ (product rule). +\end{description} +} + +\newproblem{mc:quot}{% +Which of the following is the derivative of $\frac{\sin(x)}{x}$? +(Circle the correct answer.) +\ifthenelse{\boolean{showanswers}}{}% +{\begin{description} +\item[A] $\sin(x)$ +\item[B] $\cos(x)$ +\item[C] $\frac{\cos(x)x-\sin(x)}{x^2}$ +\end{description} +}}{% +\begin{description} +\item[A] $\sin(x)$ +\item[B] $\cos(x)$ +\item[\textcircled{C}] $\frac{\cos(x)x-\sin(x)}{x^2}$ +(quotient rule) +\end{description} +} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-mixed.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-mixed.tex new file mode 100644 index 00000000000..1f43968b8a4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-mixed.tex @@ -0,0 +1,78 @@ + % This file is public domain + % + % These problems are a mixture of essay-style and questions with + % answers. One of these problems requires the tikz package + +\newproblem*{oop}{Describe what is meant by object-oriented +programming.} + +\begin{defproblem}{inheritance} + Describe what is meant by the term \emph{inheritance} in + object-oriented programming. Use examples. +\end{defproblem} + +\begin{defproblem}{weightedcoin}% + \begin{onlyproblem} + A coin is weighted so that heads is four times as likely + as tails. Find the probability that: + \begin{textenum} + \item tails appears, + \item heads appears + \end{textenum}% + \end{onlyproblem}% + \begin{onlysolution} + Let $p=P(T)$, then $P(H)=4p$. We require $P(H)+P(T)=1$, + so $4p+p=1$, hence $p=\frac{1}{5}$. Therefore: + \begin{textenum} + \item $P(T)=\frac{1}{5}$, + \item $P(H)=\frac{4}{5}$ + \end{textenum} + \end{onlysolution} +\end{defproblem} + +\begin{defproblem}{validprobspaces} +\begin{onlyproblem}% +Under which of the following functions does +$S=\{a_1,a_2\}$ become a probability space? +\par +\begin{textenum} +\begin{tabular}{ll} +\item $P(a_1)=\frac{1}{3}$, $P(a_2)=\frac{1}{2}$ +& +\item\label{validprobspacescorrect1} $P(a_1)=\frac{3}{4}$, +$P(a_2)=\frac{1}{4}$ +\\ +\item\label{validprobspacescorrect2} $P(a_1)=1$, $P(a_2)=0$ +& +\item $P(a_1)=\frac{5}{4}$, $P(a_2)=-\frac{1}{4}$ +\end{tabular} +\end{textenum} +\end{onlyproblem}% +\begin{onlysolution}% +\ref{validprobspacescorrect1} and \ref{validprobspacescorrect2}% +\end{onlysolution} +\end{defproblem} + +\begin{defproblem}{digraph} + \begin{onlyproblem}\label{ex:digraph} + Identify, if any, the sinks and sources of the digraph shown in Figure~\ref{fig:digraph}. + + \begin{figure}[tbh] + \centering + \begin{tikzpicture}[every node/.style={draw,circle}] + \path (0,0) node (A) {$A$} + (1,0) node (B) {$B$} + (0,1) node (C) {$C$}; + \draw[->] (A) -- (B); + \draw[->] (B) -- (C); + \draw[->] (A) -- (C); + \end{tikzpicture} + \par + \caption{Digraph for Question~\ref{ex:digraph}} + \label{fig:digraph} + \end{figure} + \end{onlyproblem} + \begin{onlysolution} + $A$ is a souce and $C$ is a sink. + \end{onlysolution} +\end{defproblem} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-newdata.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-newdata.tex new file mode 100644 index 00000000000..946f0e11248 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-newdata.tex @@ -0,0 +1,27 @@ + % This file is public domain +\begin{defproblem}{sample} +\begin{onlyproblem} +Differentiate $y=\sin x$ +\end{onlyproblem} +\begin{onlysolution} +$y'=\cos x$ +\end{onlysolution} +\end{defproblem} + +\begin{defproblem}[1]{sample2} +\begin{onlyproblem} +Differentiate $y = \sin(#1x)$ +\end{onlyproblem} +\begin{onlysolution} +$y'=#1\cos #1x$ +\end{onlysolution} +\end{defproblem} + +\begin{defproblem}{sample3} +\begin{onlyproblem} +Differentiate $y = x^2$. +\end{onlyproblem} +\begin{onlysolution} +$y' = 2x$ +\end{onlysolution} +\end{defproblem} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-nosoln.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-nosoln.tex new file mode 100644 index 00000000000..9909651b86d --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-nosoln.tex @@ -0,0 +1,9 @@ + % This file is public domain + % + % these problems don't have solutions + +\newproblem*{oop}{Describe what is meant by object-oriented +programming.} + +\newproblem*{inheritance}{Describe what is meant by the term +\emph{inheritance} in object-oriented programming. Use examples.} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces.tex new file mode 100644 index 00000000000..4862e5caefb --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces.tex @@ -0,0 +1,33 @@ + % This file is public domain + % + % Finite probability spaces +\newproblem{weightedcoin}{% +A coin is weighted so that heads is four times as likely +as tails. Find the probability that: +\begin{textenum} +\item tails appears, +\item heads appears +\end{textenum}}{% +Let $p=P(T)$, then $P(H)=4p$. We require $P(H)+P(T)=1$, +so $4p+p=1$, hence $p=\frac{1}{5}$. Therefore: +\begin{textenum} +\item $P(T)=\frac{1}{5}$, +\item $P(H)=\frac{4}{5}$ +\end{textenum}} + +\newproblem*{validprobspaces}{% +Under which of the following functions does +$S=\{a_1,a_2\}$ become a probability space? +\par +\begin{textenum} +\begin{tabular}{ll} +\incorrectitem $P(a_1)=\frac{1}{3}$, $P(a_2)=\frac{1}{2}$ +& +\correctitem $P(a_1)=\frac{3}{4}$, $P(a_2)=\frac{1}{4}$ +\\ +\correctitem $P(a_1)=1$, $P(a_2)=0$ +& +\incorrectitem $P(a_1)=\frac{5}{4}$, $P(a_2)=-\frac{1}{4}$ +\end{tabular} +\end{textenum} +} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces2.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces2.tex new file mode 100644 index 00000000000..dacddb510cf --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-probspaces2.tex @@ -0,0 +1,43 @@ + % This file is public domain + % + % Finite probability spaces +\begin{defproblem}{weightedcoin} +\begin{onlyproblem}% +A coin is weighted so that heads is four times as likely +as tails. Find the probability that: +\begin{textenum} +\item tails appears, +\item heads appears +\end{textenum} +\end{onlyproblem} +\begin{onlysolution}% +Let $p=P(T)$, then $P(H)=4p$. We require $P(H)+P(T)=1$, +so $4p+p=1$, hence $p=\frac{1}{5}$. Therefore: +\begin{textenum} +\item $P(T)=\frac{1}{5}$, +\item $P(H)=\frac{4}{5}$ +\end{textenum} +\end{onlysolution} +\end{defproblem} + +\begin{defproblem}{validprobspaces} +\begin{onlyproblem}% +Under which of the following functions does +$S=\{a_1,a_2\}$ become a probability space? +\par +\begin{textenum} +\begin{tabular}{ll} +\item $P(a_1)=\frac{1}{3}$, $P(a_2)=\frac{1}{2}$ +& +\item\label{validprobspacescorrect1} $P(a_1)=\frac{3}{4}$, $P(a_2)=\frac{1}{4}$ +\\ +\item\label{validprobspacescorrect2} $P(a_1)=1$, $P(a_2)=0$ +& +\item $P(a_1)=\frac{5}{4}$, $P(a_2)=-\frac{1}{4}$ +\end{tabular} +\end{textenum} +\end{onlyproblem}% +\begin{onlysolution}% +\ref{validprobspacescorrect1} and \ref{validprobspacescorrect2}% +\end{onlysolution} +\end{defproblem} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-tabmchoice.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-tabmchoice.tex new file mode 100644 index 00000000000..9555b97dd32 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-tabmchoice.tex @@ -0,0 +1,18 @@ + % This file is public domain + % + % These problems are designed to be placed in a + % tabular environment + % +\newproblem{tab:1}{% +What is $(3+2)\times5$? & +25 \ifshowanswers\selected\else\notselected\fi & +13 \notselected & +10 \notselected & +}{Brackets come first}% + +\newproblem{tab:2}{% +What is $-1+2\times3$? & +3 \notselected & +-7 \notselected & +5 \ifshowanswers\selected\else\notselected\fi & +}{Multiplication comes first}% diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/prob-verb.tex b/Master/texmf-dist/doc/latex/probsoln/samples/prob-verb.tex new file mode 100644 index 00000000000..07e0f835134 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/prob-verb.tex @@ -0,0 +1,28 @@ +\begin{defproblem}{code-helloworld} +This problem has a code fragment. +\begin{onlyproblem} +\lstset{language=Java} +\begin{lstlisting} +public class HelloWorld +{ + public static void main(String[] args) + { + System.out.println("Hello World!"); + } +} +\end{lstlisting} +\end{onlyproblem} +\begin{onlysolution} +\lstset{language=Java} +\begin{lstlisting} +public class HelloWorld +{ + public static void main(String[] args) + { + System.out.println("Hello " + + (args.length==0 ? "anon" : args[0])+"!"); + } +} +\end{lstlisting} +\end{onlysolution} +\end{defproblem} diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.pdf new file mode 100644 index 00000000000..a0e6571cacb Binary files /dev/null and b/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.tex index 8295015352e..0120d310ed2 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample-exclude.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample-exclude.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample-exclude.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here % This file is public domain \documentclass[a4paper]{article} @@ -63,11 +15,11 @@ % Exclude problems that have been used this year or the previous % two academic years. (Creates a file called 'excluded.tex' to % store labels of used problems. Also creates a file called - % \jobname.prb that stores labels of problems used in this + % \jobname.prb that stores labels of problems used in this % document, so they don't get excluded on subsequent runs.) \ExcludePreviousFile[3]{excluded} - % To clear the used problems file (\jobname.prb) of the labels + % To clear the used problems file (\jobname.prb) of the labels % generated in the previous run, comment the above and uncomment % below: % \ClearUsedFile{excluded} @@ -96,6 +48,7 @@ % and store in database 'nosoln': \loadrandomproblems[nosoln]{1}{prob-nosoln} + \begin{document} \title{Sample Problem Sheet} \author{Nicola Talbot} @@ -124,6 +77,3 @@ \foreachproblem[nosoln]{\item \thisproblem} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample-exclude.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample.pdf index 43f13544672..3a44bed21a3 100644 Binary files a/Master/texmf-dist/doc/latex/probsoln/samples/sample.pdf and b/Master/texmf-dist/doc/latex/probsoln/samples/sample.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample.tex index c5b631659e6..b6bd6658259 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here % This file is public domain \documentclass[a4paper]{article} @@ -81,6 +33,7 @@ % and store in database 'nosoln': \loadrandomproblems[nosoln]{1}{prob-nosoln} + \begin{document} \title{Sample Problem Sheet} \author{Nicola Talbot} @@ -109,6 +62,3 @@ \foreachproblem[nosoln]{\item \thisproblem} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample2.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample2.pdf index a54bc6f77d3..007f6d906b5 100644 Binary files a/Master/texmf-dist/doc/latex/probsoln/samples/sample2.pdf and b/Master/texmf-dist/doc/latex/probsoln/samples/sample2.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample2.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample2.tex index 72a2f6df6a3..cd13c89f309 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample2.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample2.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample2.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample2.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here % This file is public domain \documentclass[a4paper]{article} @@ -94,6 +46,3 @@ \end{enumerate} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample2.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample3.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample3.pdf index 1b0e3717ade..d6f6ff4909a 100644 Binary files a/Master/texmf-dist/doc/latex/probsoln/samples/sample3.pdf and b/Master/texmf-dist/doc/latex/probsoln/samples/sample3.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample3.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample3.tex index f40e4755ae4..6922f9538ed 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample3.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample3.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample3.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample3.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here % This file is public domain \documentclass[a4paper]{article} @@ -66,11 +18,8 @@ \begin{document} \begin{longtable}{lrrrl} -\bfseries Question & \bfseries A & \bfseries B & +\bfseries Question & \bfseries A & \bfseries B & \bfseries C & \ifshowanswers \bfseries Reason\fi\\ \selectrandomly{prob-tabmchoice}{2} \end{longtable} \end{document} -\endinput -%% -%% End of file `sample3.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample4.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample4.pdf index fba702a13fb..7aadf56ca1f 100644 Binary files a/Master/texmf-dist/doc/latex/probsoln/samples/sample4.pdf and b/Master/texmf-dist/doc/latex/probsoln/samples/sample4.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample4.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample4.tex index e79fd08340d..b432182d01e 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample4.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample4.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample4.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample4.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here % This file is public domain \documentclass[a4paper]{article} @@ -67,6 +19,3 @@ Differentiate the following functions: \foreachproblem{\item \thisproblem} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample4.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample5.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample5.pdf index 3d50533dc6c..f4ac8c7fdc0 100644 Binary files a/Master/texmf-dist/doc/latex/probsoln/samples/sample5.pdf and b/Master/texmf-dist/doc/latex/probsoln/samples/sample5.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample5.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample5.tex index 4f515585196..ac294c11caf 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample5.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample5.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample5.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample5.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here % This file is public domain \documentclass[a4paper]{report} @@ -80,6 +32,3 @@ \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample5.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample6.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample6.pdf new file mode 100644 index 00000000000..2a8be97bbc7 Binary files /dev/null and b/Master/texmf-dist/doc/latex/probsoln/samples/sample6.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample6.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample6.tex index 321fda452a9..65769d3c97b 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample6.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample6.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample6.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample6.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here \documentclass{article} \usepackage[usedefaultargs]{probsoln} @@ -57,6 +9,3 @@ \foreachproblem{\item \thisproblem} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample6.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample7.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample7.pdf new file mode 100644 index 00000000000..12b0da7dad8 Binary files /dev/null and b/Master/texmf-dist/doc/latex/probsoln/samples/sample7.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample7.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample7.tex index 0b48c4cc85e..00ccf637d46 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample7.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample7.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample7.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample7.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here \documentclass{article} \usepackage{tikz} @@ -66,6 +18,3 @@ \foreachsolution{\item[\ref{q-\thisproblemlabel}] \thisproblem} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample7.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample8.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample8.pdf new file mode 100644 index 00000000000..f931368efa3 Binary files /dev/null and b/Master/texmf-dist/doc/latex/probsoln/samples/sample8.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample8.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample8.tex index 503488f5e2e..e68954daf24 100644 --- a/Master/texmf-dist/doc/latex/probsoln/samples/sample8.tex +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample8.tex @@ -1,51 +1,3 @@ -%% -%% This is file `sample8.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% probsoln.dtx (with options: `sample8.tex,package') -%% -%% probsoln.dtx -%% Copyright 2013 Nicola Talbot -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license of (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Maintainer of this work is Nicola Talbot. -%% -%% This work consists of the files probsoln.dtx and probsoln.ins and the derived files probsoln.sty, sample-exclude.tex, sample.tex, sample2.tex, sample3.tex, sample4.tex, sample5.tex, sample6.tex, sample7.tex, sample8.tex, prob-1stprncp.tex, prob-args.tex, prob-easy.tex, prob-easy2.tex, prob-implicit.tex, prob-mchoice.tex, prob-mixed.tex, prob-newdata.tex, prob-nosoln.tex, prob-probspaces.tex, prob-probspaces2.tex, prob-tabmchoice.tex, prob-verb.tex. -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% randomly select 25 problems from derivatives.tex and add to -%% the data set called 'deriv' -%% Display the problems -%% You may need to change \theenumi back here -%% randomly select 25 problems from probspaces.tex and add to -%% the data set called 'spaces' -%% Display the problems -%% You may need to change \theenumi back here \documentclass{article} \usepackage{listings} @@ -61,6 +13,3 @@ \foreachproblem{\item \thisproblem} \end{enumerate} \end{document} -\endinput -%% -%% End of file `sample8.tex'. diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample9.pdf b/Master/texmf-dist/doc/latex/probsoln/samples/sample9.pdf new file mode 100644 index 00000000000..9632dc35dfa Binary files /dev/null and b/Master/texmf-dist/doc/latex/probsoln/samples/sample9.pdf differ diff --git a/Master/texmf-dist/doc/latex/probsoln/samples/sample9.tex b/Master/texmf-dist/doc/latex/probsoln/samples/sample9.tex new file mode 100644 index 00000000000..79ac7c5f5e9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/probsoln/samples/sample9.tex @@ -0,0 +1,19 @@ + % This file is public domain +\documentclass[a4paper]{article} + +\usepackage{probsoln} + % uncomment the following line to display the answers + % \showanswers + + % Load 10 problems randomly selected from the given files +\loadrandomproblems{10}{prob-1stprncp,prob-easy,prob-implicit,prob-probspaces} + +\begin{document} +\title{Sample Problem Sheet} +\author{Nicola Talbot} +\maketitle + +\begin{enumerate} + \foreachproblem{\item \thisproblem} +\end{enumerate} +\end{document} -- cgit v1.2.3