Γενικό Λύκειο > Ψευδογλώσσα

Ενσωμάτωση pseudoglossa.gr σε άλλους δικτυακούς τόπους

<< < (2/2)

tom:
Στάθη στείλε και σε μένα info με email.

sstergou:
Για την πλήρη ενσωμάτωση του pseudoglossa.gr σε μία ιστοσελίδα είναι απαραίτητα τα παρακάτω :

1) Η ιστοσελίδα πρέπει να έχει κωδικοποίηση utf-8. Αυτό πρέπει να δηλωθεί στο header με


--- Κώδικας: ---<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
--- Τέλος κώδικα ---

επίσης το αρχείο κειμένου της ιστοσελίδας πρέπει να έχει αποθηκευτεί με την συγκεκριμένη κωδικοποίηση.

2) Στο header της σελίδας πρέπει να φορτωθεί ένα javascript από το pseudoglossa.gr


--- Κώδικας: ---<script type="text/javascript" src="http://www.pseudoglossa.gr/js/pseudoglossa.js"></script>
--- Τέλος κώδικα ---

3) Στο body και μέσα σε script tags μπαίνουν τα :


--- Κώδικας: ---<script type="text/javascript">
//Φορτώνει τον διερμηνευτή σε κάθε textarea της σελίδας που έχει class="pseudocode" βλ. παρακάτω για παράδειγμα. Οι διαστάσεις 550x350 είναι ενδεικτικές.
function loadInterpreter() {
var elements = ps.getElementsByClassName('pseudocode');
var parent,res, code, input;
elements.each(function(el) {
var algorithm = ps.parseElement(el);
ps.embedSwf({url:'http://www.pseudoglossa.gr/embed.php', id : el.id, width:'550', height:'350', flashvars : {fontSize:14, code:algorithm.code, input:algorithm.input}, parent:parent});
});
}


//Αλλάζει τον αλγόριθμο και το αρχείο εισόδου που έχει ο διερμηνευτής παίρνοντας στοιχεία από ένα dom element (όπως παρακάτω το <pre id="algorithm1">.
// Εάν έχετε πολλούς αλγορίθμους σε μία σελίδα μπορείτε να έχετε πολλά pre elements το καθένα με διαφορετικό id και style="visibility:hidden" (ώστε να μην φαίνονται)
//και χρησιμοποιώντας την παρακάτω συνάρτηση να φορτώνετε το περιεχόμενό τους στον διερμηνευτή.

function loadAlgorithm(el) {
var algorithm = ps.parseElement(document.getElementById(el));
ps.loadAlgorithm(algorithm.code, algorithm.input);
}

ps.onLoad(loadInterpreter);

</script>
--- Τέλος κώδικα ---

Παρεχόμενες λειτουργίες :
1. Ο διερμηνευτής αντικαθιστά αυτόματα όλα τα elements με class="pseudocode" μετά την φόρτωση της ιστοσελίδας.
Για παράδειγμα ο παρακάτω κώδικας φορτώνει τον διερμηνευτή με έτοιμο κώδικα και αρχείο εισόδου.


--- Κώδικας: ---<textarea name="area" id="p1"  rows="24" cols="50" class="pseudocode">
Αλγόριθμος διχοτόμηση
Δεδομένα //α, δ, όριο//
βρέθηκε ← Ψευδής
Όσο όχι βρέθηκε επανάλαβε
μ ← (α + δ)/ 2
ψ ← Ε(μ) - 2*μ - 1
Αν Α_Τ(ψ) <= όριο τότε
βρέθηκε ← Αληθής
αλλιώς
Αν ψ < 0 τότε
α ← μ
αλλιώς
δ ←  μ
Τέλος_αν
Τέλος_αν
Τέλος_επανάληψης
Αποτελέσματα //μ, ψ//
Τέλος διχοτόμηση
#Input#
1
2
3
4</textarea>
--- Τέλος κώδικα ---

2. Χρησιμοποιώντας την loadAlgorithm μπορείτε να αλλάξετε τον αλγόριθμο και το αρχείο εισόδου.  Στο παρακάτω παράδειγμα φορτώνεται αλγόριθμος από ένα κρυφό pre dom element αλλά εσείς μπορείτε να φορτώσετε από οπουδήποτε.
3. Το αρχείο εισόδου όπως και ο έτοιμος αλγόριθμος δεν είναι απαραίτητα. Σε περίπτωση που δεν επιθυμείτε την φόρτωση αλγορίθμου μπορείτε να χρησιμοποιήσετε ένα κενό textarea. Μετά τον αλγόριθμο ο διερμηνευτής ψάχνει να βρει αν υπάρχει αρχείο εισόδου το οποίο σηματοδοτείται από το κείμενο "#Input#". Παραλείποντας το συγκεκριμένο κείμενο δεν φορτώνεται αρχείο εισόδου.


--- Κώδικας: ---<pre id="algorithm1" style="visibility:hidden" >
Αλγόριθμος δοκιμή_φόρτωσης
Διάβασε α
Εμφάνισε α + 1
Τέλος δοκιμή_φόρτωσης
#Input#
6</pre>
--- Τέλος κώδικα ---

Λάμπρος Μπουκουβάλας:
Στάθη, είσαι μέγας!

sstergou:
χεχε, ευχαριστώ Λάμπρο αλλά τα παραλές, 1,72 είμαι...

Για οποιαδήποτε απορία ή πρόβλημα ενημερώστε το παρόν νήμα.

Λάμπρος Μπουκουβάλας:
δηλαδή, δεν είσαι τιτανομεγιστοτεράστιος;;;;;
πληγώθηκα...  ;D ;D

Πλοήγηση

[0] Λίστα μηνυμάτων

[*] Προηγούμενη σελίδα

Μετάβαση στην πλήρη έκδοση