Όλοι ξέρουμε (ελπίζω :P) πως να λύνουμε δευτεροβάθμιες εξισώσεις. Οι δύο λύσεις προκύπτουν από την επίλυση της εξίσωσης:
(http://daknob.info/images/answers.png)
Το να γίνει ένας αλγόριθμος που θα εμφανίζει τις λύσεις (εφ όσων υπάρχουν) είναι εύκολος. Το λίγο πιο δύσκολο είναι να γίνει ως εξής:
Αν η τετραγωνική ρίζα δεν υπολογίζεται ακριβώς (π.χ. έχουμε √7 και όχι √9) θα εμφανίζει το κλάσμα κανονικά.
Πχ αντί για 2.548583770354863530167205251213086808570086394360816726 θα εμφανίζει:
5 + √7
---------
3
Επίσης, αν το κλάσμα δεν είναι τέλεια διαίρεση, αντί για 3.333333333333333333333 θα εμφανίζει:
10
----------
3
Υ.Γ.: Ξέρω ότι φαίνεται αρκετά απλό, απλά το έβαλα σήμερα σε συμμαθητές στην τάξη και δεν μπόρεσε κανείς να το λύσει. :P
Ενδιαφέρον θέμα για συζήτηση. Να κάνω 2 διευκρινιστικές ερωτήσεις:
1) Το θα πρέπει να εμφανιστεί αν στην υπόριζη ποσότητα έχεις 2.25; (δηλαδή αριθμό που η ρίζα του δεν είναι ακέραιος αλλά η ρίζα του "βγαίνει ακριβώς")
2) Τι θα πρέπει να εμφανιστεί αν έχεις δεκαδικό με περιοδικό μέρος πχ 5 ψηφία; Για παράδειγμα 34,012340123401234...
Το ερώτημα δηλαδή είναι η διάκριση μεταξύ ρητών και άρρητων