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

Ξεκίνησε από sstergou, 30 Μαρ 2010, 01:02:48 ΠΜ

« προηγούμενο - επόμενο »

sstergou

Πρόσφατα δημιουργήθηκε διεπαφή για ολοκλήρωση του pseudoglossa.gr με άλλους δικτυακούς τόπους :

1) Μπορείτε να ενσωματώσετε τον διερμηνευτή μαζί με οποιοδήποτε αλγόριθμο και αρχείο εισόδου απλά βάζοντας ένα textarea με class="pseudocode" στην σελίδα σας. Δείγμα : http://www.pseudoglossa.gr/embedded.html

2) Μπορείτε να ελέξγετε την εκτέλεση του αλγορίθμου και να πάρετε τα αποτελέσματά του (απευθύνεται στους δημιουργούς άλλων εφαρμογών που θέλουν να χρησιμοποιήσουν τον διερμηνευτή). Δείγμα : http://www.pseudoglossa.gr/external.html

Νίκος Αδαμόπουλος

Παράθεση από: sstergou στις 30 Μαρ 2010, 01:02:48 ΠΜ
Προστέθηκε η δυνατότητα χρήσης αρχείου εισόδου.
Η επιλογή αυτή καθορίζεται από το παράθυρο των ρυθμίσεων.

Ακόμη δημιουργήθηκε διεπαφή για ολοκλήρωση με άλλους δικτυακούς τόπους :
1) Μπορείτε να ενσωματώσετε τον διερμηνευτή μαζί με οποιοδήποτε αλγόριθμο και αρχείο εισόδου απλά βάζοντας ένα textarea με class="pseudocode" στην σελίδα σας. Δείγμα : http://www.pseudoglossa.gr/embedded.html

2) Μπορείτε να ελέξγετε την εκτέλεση του αλγορίθμου και να πάρετε τα αποτελέσματά του (απευθύνεται στους δημιουργούς άλλων εφαρμογών που θέλουν να χρησιμοποιήσουν τον διερμηνευτή). Δείγμα : http://www.pseudoglossa.gr/external.html

Μπράβο Στάθη, πολύ καλές οι δυνατότητες αυτές!

tom

Θωμάς Σκυλογιάννης

- Ζήσε σα να' ταν να πεθάνεις αύριο. Μάθε σα να' ταν να ζεις για πάντα.
                                                                                     Μαχάτμα Γκάντι

sstergou

Ευχαριστώ!

Όποιος ενδιαφέρεται να το ενσωματώσει στην σελίδα του ας μου στείλει μήνυμα για τις λεπτομέρειες.

Laertis

Πολύ καλό Στάθη.
Ενδιαφέρομαι για την ενσωμάτωση στην ιστοσελίδα μου. Σου στέλνω pm.
Νικολακάκης Γιώργος
Μηχανικός Η/Υ Συστημάτων
Καθηγητής Πληροφορικής
http://users.sch.gr/gnikola

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>

Λάμπρος Μπουκουβάλας

Λάμπρος Μπουκουβάλας
MSc - MRes

http://blogs.sch.gr/lambrosbouk

Ο Θουκυδίδης  (που τον διαβάζουν οι ξένοι, αλλά όχι εμείς)  έγραφε: «Αταλαίπωρος τοις πολλοίς η ζήτησις της αληθείας, και επί τα ετοίμα μάλλον τρέπονται» (Ι, 20, 3). Οι περισσότεροι δηλαδή αναζητούν αβασάνιστα την αλήθεια και στρέφονται σε ό,τι βρίσκουν έτοιμο. Δεν προβληματίζονται...

sstergou

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

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

Λάμπρος Μπουκουβάλας

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

http://blogs.sch.gr/lambrosbouk

Ο Θουκυδίδης  (που τον διαβάζουν οι ξένοι, αλλά όχι εμείς)  έγραφε: «Αταλαίπωρος τοις πολλοίς η ζήτησις της αληθείας, και επί τα ετοίμα μάλλον τρέπονται» (Ι, 20, 3). Οι περισσότεροι δηλαδή αναζητούν αβασάνιστα την αλήθεια και στρέφονται σε ό,τι βρίσκουν έτοιμο. Δεν προβληματίζονται...