Una seqüència de parèntesis és sintàcticament correcta, si i només si
per a cada parèntesi obert ((
) n’hi ha un altre de tancat ()
).
Aquesta definició correspon a la idea que tots tenim d’una seqüència
de parèntesis ben formada.
Per exemple, aquesta seqüència és sintàcticament correcta:
( ) ( ) ( ( ) ( ) )
En canvi, aquesta no ho és:
( ) ( ) ) ( ( ) ( ) )
perquè el tercer parèntesi tancat no té cap parèntesi obert aparionat.
Feu un programa tal que, donada una seqüència de parèntesis pel canal
d’entrada estàndard, escrigui TRUE
a la sortida estàndard,
si i només si la seqüència de parèntesis d’entrada és sintàcticament
correcta.
Observació
Per a poder llegir caràcters (en general, cadenes de caràcters) del canal d’entrada, cal que feu:
scan (f,n=1,quiet=TRUE,what=character())
on f
és el canal d’entrada estàndard.
Entrada
Una seqüència de parèntesis acabada amb el símbol *
.
Sortida
TRUE
si i només si la seqüència de parèntesis
d’entrada és sintàcticament correcta.
Input
( ( ( ) ( ) ) ( ) ) *
Output
TRUE
Input
( ( ( ) ( ) ) ) ) ( ) ) *
Output
FALSE