ntafiduck Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 Γεια σας παιδιά έχω ένα θέμα με μια άσκηση δεν μπορώ να της απαντήσεις έχω διαβάσει τις σημειώσεις που έχω και δεν μπορώ να βγάλω άκρη..Αν μπορείτε μια βοήθεια..Ευχαριστώ.! Θεωρείστε την ακόλουθη γραμματική: Ν = {expr, term, factor}, T = {+, -, *, /, NUM, ID} Goal = expr expr = expr “+“ term | expr “–“ term | term term = term “*“ factor | term “/“ factor | factor factor = NUM | ID Γιατί η παραπάνω γραμματική θεωρείται αναδρομική; Αναφέρετε τους κανόνες στους οποίους παρουσιάζεται αναδρομικότητα. Η αναδρομικότητα των κανόνων του προηγούμενου ερωτήματος είναι αριστερή ή δεξιά; Μετατρέψτε την γραμματική έτσι ώστε να απαλοίψετε την αναδρομικότητα που παρουσιαζει.
ChRis6 Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 Αναδρομη ξερεις τι ειναι ; Η γραμματικη σου στον κανονα exr -> .... | ..... | παρουσιαζει αναδρομη,γιατι ενα expr μπορει να σου δωσει ακομα ενα expr οταν αναλυεις το αριστερο μελος.Υπαρχει και αλλος τετοιος κανονας.... Αριστερη αναδρομη ( τα κεφαλαια συμβολα ειναι μη τερματικα και τα μικρα τερματικα ): S-> A A -> Ax | b Λυνεται με παραγοντοποιηση Δεξια αναδρομη: S-> A A-> xA Σε ποιο σημειο δυσκολευεσαι ;
ntafiduck Δημοσ. 14 Σεπτεμβρίου 2012 Μέλος Δημοσ. 14 Σεπτεμβρίου 2012 Απλά δεν έχω καμία ιδέα με το μάθημα δυσκολεύομαι σχετικά παντού....
mtsouk Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 Το μάθημα είναι δύσκολο και, αν δεν έχεις ιδέα, καλύτερα να διαβάσεις. "Κατά λάθος" δεν μπορείς να τα φέρεις βόλτα με το εν λόγω μάθημα. φιλικά, 1
IHateLove Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 Καραμάνου ? Αναδρομική γραμματική > //Αυτή η γραμαμτική είναι αναδρομική γιατί είναι και αριστερά και δεξιά! Χ = Χ "+" Χ //Αυτή η γραμαμτική είναι αριστερά αναδρομική Χ = Χ "+" //Αυτή η γραμαμτική είναι δεξιά αναδρομική Χ = "+" Χ Απαλοιφή γραμματικής έστω ότι έχεις > Χ = Χ "+" Χ // This gonna be X = X' "+" X X' = X //επειδή μπερεύει το X' ας το βαφτίσουμε Υπ_Ορος και το Χ όρος //έχεις αυτό όρος = όρος "+" όρος //θα γίνει όρος = Υπ_όρος "+" όρος Υπ_Όρος = όρος Αν έχεις και εσύ καραμάνου τότε απάντα όπως πιο πάνω που σου έγραψα, αυτή είναι η όλη απάντηση, δεν θέλει 10 γραμμές, με την απαλοιφή θα δυσκολευτείς γιατί δεν δίνει 2 γραμμές... απλά σου έδειξα πως γίνεται. Καραμάνου ? τι ρωτάω, αφού το θέμα πάνω είναι ολόιδιο με αυτό που έγραψα (Ατσα!!! συμφοιτά )
ChRis6 Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 Καλα δυσκολο το μαθημα δεν ειναι.Μονο προσοχη θελει για να καταλαβεις τους ορισμους και ποια προβληματα λυνεις.Προφανως αμα δεν ξερεις προγραμματισμο,θα σου φανουν παλουκια... Η ασκηση ειναι πολυ απλη( στα πλαισια των μεταγλωττιστων ),αλλα αν πας ξυπολυτος στα αγκαθια λογικο ειναι να σου φαινεται δυσκολο.Δεν σου ζηταει να κανεις δημιουργια αφηρημενου ενδιαμεσου κωδικα ή παραγωγη τελικου κωδικα... Με μια μικρη αναζητηση στο google "compilers left recursion" λυνεις το προβλημα σου.Γενικα μη περιμενεις να τα βρεις ΟΛΑ μεσα στις σημειωσεις και στις διαλεξεις του καθηγητη σου.Ψαξε πρωτα μονος/μονη σου σε βιβλια,στο internet( ειδικα για τους compilers υπαρχει ΑΠΕΙΡΟ υλικο ) και αν δεν τα καταφερεις,ρωτας τον καθηγητη ή σε κανενα forum... BTW, ihatelove το εχεις λαθος. Δεν εχεις κανει απαλοιφη αριστερης αναδρομης
IHateLove Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 μιλάμε για απαλοιφή αναδρομής και όχι αριστερής ή δεξιάς, βασικά την ιδέα έδωσα, δεν θα ασχοληθώ τώρα με... @Chriss Με μια μικρη αναζητηση στο google "compilers left recursion" λυνεις το προβλημα σου. εξαρτάται, εγώ όλο βλακείες άλλα νταλα βρίσκω...
ChRis6 Δημοσ. 14 Σεπτεμβρίου 2012 Δημοσ. 14 Σεπτεμβρίου 2012 Παλι εχεις αναδρομη ομως.Εκτος αν εννοεις οτι δεν εχεις πια αμεση...
drakoage Δημοσ. 7 Μαρτίου 2015 Δημοσ. 7 Μαρτίου 2015 Μια ματιά μπορείς να ρίξεις και εδώ eaphelp.blogspot.gr Νομίζω είναι καινούριο, αλλά αξίζει!
Moderators Kercyn Δημοσ. 7 Μαρτίου 2015 Moderators Δημοσ. 7 Μαρτίου 2015 Πιστεύω μετά από 2 χρόνια είτε θα έχει λύσει την άσκηση είτε θα τα έχει παρατήσει και θα έχει γίνει αγρότης. 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα