Paola Magillo, Univestita' di Genova, Corso di Programmazione II per SMID, a.a. 2004-2005.

Laboratorio 07:

ALTRE APPLICAZIONI DELLA PILA

Partiamo dal programma che controlla se una stringa ha le parentesi bilanciate, realizzato nel laboratorio 5.

I seguenti due esercizi sono indipendenti fra loro.

Esercizio 1

Modificare la funzione
boolean parentesiBilanciate(String s)
in modo tale che, invece di restituire semplicemente true se le parentesi sono bilanciate e false altrimenti, restituisca un numero intero:

E modificare il programma in modo tale che, se le parentesi non sono bilanciate, stampi le due parti della stringa:

SUGGERIMENTO:
La funzione parentesiBilanciate lavora scorrendo le posizioni della stringa con il contatore i.
I "return false" nella funzione avvengono proprio in corrispondenza della prima posizione i dove si riscontra uno sbilanciamento.
Il "return true" avviene alla fine del ciclo, cioe' quando ormai risulta i==s.length().
Quindi che valore e' sufficiente restituire?

Esercizio 2

Costruire un'interfaccia grafica per il controllo del bilanciamento delle parentesi, che contenga:

SUGGERIMENTI:
L'unico componente che necessita un event listener e' il bottone (ActionListener).
Il primo text field non ha bisogno di event listener: semplicemente quando viene azionato il bottone si andra' a leggere la stringa contenuta.
Per l'interfaccia grafica si puo' usare semplicemente una finestra Frame divisa in tre parti mediante un layout a griglia 1 riga e 3 colonne (ma altre soluzioni vanno ugualmente bene).
Non preoccupatevi di gestire la chiusura della finestra!