Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

come costruisco caso ricorsivo in es hw4 bis?

Light (5130 points)
55 181 229
in Es2 by (5.1k points)
sto con carta e penna cercando di trovare un buon metodo di costruire il caso ricorsivo ma come dovrei fare? dovrei semplicemente seguire quello che ha scritto sul testo pari passo...no vero?
583 views

2 Answers

S
Stefano Urani (1940 points)
2 19 34
by (1.9k points)
parli dell'esercizio 2? non penso sia difficile a livello ricorsivo ma ho difficoltà con il testo. Mi sembra chiaro fino al punto 'a'. Però qui mi blocco:

b) sia h il numero massimo di righe per le t stringhe di testo dei t sottoalberi. Ad ognuna delle t stringhe vanno  aggiunte righe di soli spazi in modo che tutte le stringhe risultino avere h righe.

Lo vorrei fare come esercizio ma proprio non riesco a capire questo h cosa sia. Metti che l'albero abbia in totale 10 sottoalberi. Da ogni sottoalbero ricavo una stringa di due righe, una con | e l'altra con il suo valore. Quindi h sarebbe 20? non ne capisco il senso. Le righe dovrebbero stare a indicare l'altezza dell'albero che andiamo a disegnare con la stringa T1, no? queste vengono concatenate riga a riga in modo da ottenere un'unica rappresentazione.
Light (5130 points)
55 181 229
by (5.1k points)
la b penso intenda che l'albero completo che alla fine risulta avere altezza h e che dato che sicuramente come vedi in figura non tutti le foglie deil' albero finiscono nell'ultima riga e percio sotto a questi ci deve essere spazi vuoti fino alla fine e non per esempio altri nodi o trattini...spero di essere stato chiaro fammi sapere se hai altri dubbi e se poi mi potresti aiutare dandomi un input
S
Stefano Urani (1940 points)
2 19 34
by (1.9k points)
allora, in effetti penso tu abbia ragione, ma ancora lo leggo e non capisco :)

Comunque io per la ricorsione farei che visto che è un oggetto albero che ha come attributo una lista con i suoi figli, rilancerei la ricorsione per ogni figlio fino ad arrivare alle foglie e da lì inizierei a creare le stringhe, cioè dalla fine verso l'inizio
Light (5130 points)
55 181 229
by (5.1k points)
mi ci sto mettendo ma non riesco a capire come fare per far formare/creare questa stringa...cioe come posso una volta trovato il numero anche solo mettere un | sopra quel numero?
S
Stefano Urani (1940 points)
2 19 34
by (1.9k points)
io ho abbandonato l'impresa per ora, quindi ti posso dare solo un suggerimento che mi pare plausibile ma non garantisco che sia corretto. Tu devi creare una stringa giusto? se tu aggiungi all'inizio di una stringa un'altra stringa seguita dal carattere per andare a capo \n quello che ottieni è una stringa di due righe. Dovrai quindi creare una stringa con un numero adeguato di spazi e il carattere | in posizione c.

Oggi per esercizio ho fatto l'es8 del'esame del 12-7-18, il problema mi sembra simile, magari ti può far comodo dargli un occhio
c
ciagliangelo (480 points)
3 5 8
by (480 points)
Ehm anch'io non sto capendo la traccia che dovrebbe spiegare come fare l'esercizio, per caso l'hai capita ora e hai voglia di disperdere le tue conoscenze?