scopo::=$introduzione$esercizio$insulti introduzione::=Dobbiamo fare un algoritmo per |Dobbiamo scrivere un programma per |Si deve scrivere un algoritmo per |Il problema computazionale è #$problema problema::=ordinare |incartavetrare |scartabellare |navigare |$quando$visitare |penetrare |incolpare |defraudare |cincischiare |smozzicare |piurificare #$strutturadati#.$\n$\n quando::=pre|post|inter|sopra|ultra strutturadati::=una lista|un albero|un binalbero|una binlista|un bingrafo|un doppio albero a camme in testa|un albero genealogico|un binalbero completo|un bindoppiolistone incasinato|un binpierangelosamarato esercizio::=$funzione { $\n$\t$tipo $nomearg#; $\n$\t$tipo $nomearg#; $\n$\n$\t$nomearg = $operatore$\n$\t$nomearg = $operatore$\n$\t$nomearg = $operatore$\n$\t$ciclo$\t$operatore$\n } $\n funzione::=$tipo $nomefunzione $argomenti $\n tipo::=int|void|char|binalbero|bindoppiografo|listagrafobin|char*|int*|grafobindoppio*|nodo|nodoScorsoio|nodoCravatta nomefunzione::=main|ordDopAlb|PercorListENonTiStufar|VisitSgradit|OrdinAlTavol|TrovLeDifferenz|TrovLElementCheNonCentr argomenti::=($tipo $nomearg#, #$tipo $nomearg#) nomearg::=T|V|*T|*V|*u|v|L|k operatore::=$prefisso$postfisso ($nomearg#, $nomearg#); prefisso::=succ|prec|suck|guard|visit|prosFiglio|altroFiglio|figlioSecondoLetto|nipote|Cugino|foglia|ramo|radice postfisso::=Fratello|Lista|Albero|BinAlbero|Binbinbinalbero|Bingrafo|Binpierangelo ciclo::=$\n$\t#$while|$for#$\n while::=while ($nomearg $cond $valore#) {$\n $\t$\t$operatore $\n$\t$\t$operatore#$\n$\t#} $\n for::=for ($nomearg $cond $valore#) {#$\n $\t$\t$operatore $\n$\t$\t$operatore $\n#$\t#} $\n cond::=>|<|>=|<>|==|!=|!<=> valore::=n|q|u|T|L|$prefisso$valore insulti::=$\n$\n "$intervento$" $\n$\n "$risposta$" intervento::=Scusi prof, ma $operatore non dovrebbe essere $operatore$?|Scusi, ma perché $nomearg non è $nomearg$?|Scusi prof, non capisco perché $operatore $nomearg è così invece di $nomearg $operatore$. risposta::=No, pischello. |NO. Ma ragioni o cosa?|NO! |Ma ti sembra?# (*smorfia*) #$operatore è $nomearg |$operatore accetta solo $nomearg come parametro.|Entri in un ciclo infinito, bestia!|Il ciclo non termina in un tempo polinomialmente accettabile, incompetente!# (*smorfia*)