Ad argvmentvm transi
Topos Uranos

Svmmarivm

Haec lectio qvintam cvrsvs partem aperit, fvnctionibvs dedicatam. Explicat ad qvid pars valeat: docere qvomodo qvaestio in membra nominata decomponatvr, singvla cvm interfacie et pacto, et qvomodo qvaedam qvaestiones solvantvr ad minorem svi ipsarvm instantiam redvctae, per recvrsionem; qvattvor eivs lectiones exhibet et filvm qvo nectvntvr; in memoriam revocat qvae pars pro cognitis habet, praesertim circvitvs partis 4 eorvmqve invariantes; qvaestionem qvam pars solvit proponit, programmatis qvod eandem compvtationem exscriptam repetit et qvod, propter incvriam in exscribendo, perperam respondet compilatore nihil dicente; pactvm (praecondicionem et postcondicionem) praenvntiat vt formam qva pars singvla membra specificabit; et ostendit qvo dvcat, in partibvs seqventibvs et in cvrsv Programmatio Lingva C++ II.

Proposita discendi

  1. Ordinem argvmentorvm partis describere et explicare qvid qvaeqve lectio seqventi conferat.
  2. Algorithmos partis 4 (vestigivm circvitvs, eivs invariantem et variantem) in memoriam revocare et, si opvs est, retractare.
  3. Exemplo praenvntiare notionem pacti: qvid membrvm programmatis ab eo postvlet qvi eo vtitvr et qvid ei vicissim praestet.
  4. Agnoscere qvid in fine partis facere scire exspectetvr, idqve ab eis distingvere qvae in partibvs seqventibvs discentvr.

Probatio initialis

Anteqvam pars percvrritvr, initivm ipsvm metiri expedit. Haec probatio est svi ipsivs exploratio: nvlli censvrae svbicitvr, et solvm eivs propositvm est stvdivm dirigere. Qvinqve primae qvaestiones examinant qvae pars pro cognitis habet: vestigivm circvitvs, eivs invariantem, praecondicionem specificationis, exemplvm valoris in initialisatione factvm et inqvisitionem, intra programma partis 4, compvtationis qvae sva data accipit et sva reddit. Qvinqve seqventes ordine lectionvm ideas praecipvas partis attingvnt: acervvm vocationvm, transmissionem argvmenti, separationem compvtationis ab exhibitione, definitionem recvrsivam factorialis et exsecvtionem fvnctionis qvae se ipsam vocat. Nemo eas iam recte solvere cogitvr, et in nonnvllis earvm «nondvm scio» responsio honesta est: qvaeqve responsio, recta vel non, rem explicat et lectionem nominat qvae eam tractat. Eaedem facvltates in fine itervm metivntvr, in lectione synthesis.

Probatio initialis

Antequam vnitatem incipias, pvnctvm vnde proficisceris metire. Brevis est sui ipsivs probatio: non aestimatvr, et eivs exitvs in solo tvo navigatro servatvr.

  1. Qvaestio 1Ex vnitatibvs prioribvsQvid scribit int n{305}; int c{1}; while (n >= 10) { n = n / 10; ++c; } std::println("{}", c);?

  2. Qvaestio 2Ex vnitatibvs prioribvsIn circvitv int total{0}; int k{1}; while (k <= n) { total += k; ++k; }, cvm n≥0n \geq 0, qvae relatio valet qvotiens condicio aestimatvr?

  3. Qvaestio 3Ex vnitatibvs prioribvsSpecificatio divisionis dicit: «datis integris a≥0a \geq 0 et b>0b > 0, invenire qq et rr cvm a=b⋅q+ra = b \cdot q + r et 0≤r<b0 \leq r < b». Qvae est eivs praecondicio?

  4. Qvaestio 4Ex vnitatibvs prioribvsPost int a{3}; int b{a}; b = 7;, qvantvs est valor ipsivs a?

  5. Qvaestio 5Ex vnitatibvs prioribvsProgramma lectionis 4.4 qvod nvmeros primos minores qvam 100 scribit circvitvm habet qvi candidatos percvrrit et, intra evm, alterivm qvi eorvm divisores temptat. Qvod membrvm est compvtatio qvae sva data accipit et sva reddit, qvam nominare expediat?

  6. Qvaestio 6Programma in main incipit; main fvnctionem g vocat, et g aliam fvnctionem h vocat. Dvm h exseqvitvr, qvae vocationes nondvm finitae svnt?

  7. Qvaestio 7Cvm fvnctione int f(int x) { x = x + 1; return x; }, qvid scribit int a{3}; int b{f(a)}; std::println("{} {}", a, b);?

  8. Qvaestio 8Programma diem calendarii legit et eivs diem hebdomadis scribere debet. Qvae decompositio compvtationem ab exhibitione separat?

  9. Qvaestio 9Qvae ex definitionibvs seqventibvs n!n! pro omni natvrali nn definit?

  10. Qvaestio 10Cvm int f(int n) { if (n == 0) { return 0; } return n + f(n - 1); }, qvid scribit std::println("{}", f(3));?