Πρόγραμμα: hearts.c (25 μονάδες)
Γράψτε ένα πρόγραμμα που για κάθε όρισμα από την γραμμή εντολών ελέγχει αν η συμβολοακολουθία του ορίσματος περιέχει μόνο ταιριαστές καρδιές. Οι ταιριαστές καρδιές ορίζονται ως εξής:
Παράδειγμα εκτέλεσης:
$ gcc -o hearts hearts.c
$ ./hearts '<3' '<.3>' '<<33' '<<<3' '<333' '<<33<3<<<<3<<33333'
<3: yes
<.3>: no
<<33: yes
<<<3: no
<333: no
<<33<3<<<<3<<33333: yes
Είναι το κλασικό πρόβλημα των ισορροπημένων παρενθέσεων: αρκεί ένας μετρητής «ανοιχτών» καρδιών που ανεβαίνει με '<' και κατεβαίνει με '3'. Ποιες δύο συνθήκες πρέπει να ελέγξετε, μία κατά τη διάρκεια της σάρωσης και μία στο τέλος; Μην ξεχάσετε τους άκυρους χαρακτήρες.
Αριθμός στον οδηγό: Α14.13
(στο κεφάλαιο) ·
Μόνιμο αναγνωριστικό: exam-2023-fall-ex0-q2 ·
Σύνδεσμος: https://progintro.github.io/study/questions/exams/exam-2023-fall-ex0-q2.html ·
Markdown (GitHub)