Θα ήθελα αν μπορεί κανείς να με βοηθήσει σε μια άσκηση...ευχαριστώ πολύ

Ξεκίνησε από petroszoul, 07 Μαΐου 2009, 02:13:54 ΜΜ

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

Wizard

Παράθεση από: Τσιωτάκης Παναγιώτης στις 09 Μαΐου 2009, 07:50:03 ΠΜ
Μάλλον η λύση με την ταξινόμηση είναι πιο κομψή
(ή η εκφώνηση το παρακάνει ζητώντας τα max για όλες τις κατηγορίες παικτών  :D

Μου φαίνεται δύσκολη η λύση με ταξινόμηση. Θα πρέπει να ταξινομηθούν τα δεδομένα ως προς τις θέσεις και δευτερευόντως ως προς τα λεπτά, μετά να σαρωθεί ο πίνακας των θέσεων, όσο βρίσκουμε ίδια λεπτά να τυπώνουμε, μετά να προσπεράσουμε τους υπόλοιπους της ίδιας θέσης για να πάμε στους άλλους (όλα αυτά βέβαια με την προϋπόθεση ότι μπορούν να υπάρχουν παίκτες με τα ίδια λεπτά...)

jgalano

και για πολλούς στην ίδια θέση,που θέλει ο φίλος Νίκος,
Αλγόριθμος ΟΜΑΔΑ
Δεδομένα //Ο,Θ,Λ //
max1<-0
max2<-0
max3<-0
max4<-0
Για i από 1 μέχρι 22 
	Aν Λ[i]>max1 KAI Θ[i]=’Ε’ τότε
		max1<- Λ[i]
	Αλλιώς_Aν Λ[i]>max2 KAI Θ[i]=’Α’ τότε
		max2<- Λ[i]
	Αλλιώς_Aν Λ[i]>max3 KAI Θ[i]=’Κ’ τότε
		max3<- Λ[i]
	Αλλιώς_Aν Λ[i]>max4 KAI Θ[i]=’Τ’ τότε
		max4<- Λ[i]
	Τέλος_Αν
Τέλος_Επανάληψης
Για i από 1 μέχρι 22 
	Aν Λ[i]=max1 KAI Θ[i]=’Ε’ τότε
		Εκτύπωσε Ο[i], ’E’	
        Αλλιώς_Aν Λ[i]=max2 KAI Θ[i]=’Α’ τότε
		Εκτύπωσε Ο[i],’Α’
	Αλλιώς_Aν Λ[i]=max3 KAI Θ[i]=’Κ’ τότε
		Εκτύπωσε Ο[i],’K’
	Αλλιώς_Aν Λ[i]=max4 KAI Θ[i]=’Τ’ τότε
		Εκτύπωσε Ο[i],’T’
	Τέλος_Αν
Τέλος_Επανάληψης
Τέλος ΟΜΑΔΑ


Αλγόριθμος ΟΜΑΔΑ
Δεδομένα //Ο,Θ,Λ //
ΘΕΣΗ[1]<-‘Ε’
ΘΕΣΗ[2]<-’Α’
ΘΕΣΗ[3]<-’Κ’
ΘΕΣΗ[4]<-’Τ’
Για i από 1 μέχρι 4 
	max<-0
	Για j από 1 μέχρι 22
		Aν Λ[j]>max ΚΑΙ Θ[j]=ΘΕΣΗ[i]τότε
		       max<- Λ[j]
	        Τέλος_Αν
	Τέλος_Επανάληψης
     Εκτύπωσε ΘΕΣΗ[i]
	Για j από 1 μέχρι 22
		Aν Λ[j]=max ΚΑΙ Θ[j]=ΘΕΣΗ[i]τότε
			Εκτύπωσε Ο[j]
		Τέλος_Αν
    Τέλος_Επανάληψης
Τέλος_Επανάληψης
Τέλος ΟΜΑΔΑ


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

Παράθεση από: jgalano στις 09 Μαΐου 2009, 10:54:10 ΠΜ
και για πολλούς στην ίδια θέση,που θέλει ο φίλος Νίκος,
Αλγόριθμος ΟΜΑΔΑ
Δεδομένα //Ο,Θ,Λ //
max1<-0
max2<-0
max3<-0
max4<-0
Για i από 1 μέχρι 22 
	Aν Λ[i]>max1 KAI Θ[i]=’Ε’ τότε
		max1<- Λ[i]
	Αλλιώς_Aν Λ[i]>max2 KAI Θ[i]=’Α’ τότε
		max2<- Λ[i]
	Αλλιώς_Aν Λ[i]>max3 KAI Θ[i]=’Κ’ τότε
		max3<- Λ[i]
	Αλλιώς_Aν Λ[i]>max4 KAI Θ[i]=’Τ’ τότε
		max4<- Λ[i]
	Τέλος_Αν
Τέλος_Επανάληψης
Για i από 1 μέχρι 22 
	Aν Λ[i]=max1 KAI Θ[i]=’Ε’ τότε
		Εκτύπωσε Ο[i], ’E’	
        Αλλιώς_Aν Λ[i]=max2 KAI Θ[i]=’Α’ τότε
		Εκτύπωσε Ο[i],’Α’
	Αλλιώς_Aν Λ[i]=max3 KAI Θ[i]=’Κ’ τότε
		Εκτύπωσε Ο[i],’K’
	Αλλιώς_Aν Λ[i]=max4 KAI Θ[i]=’Τ’ τότε
		Εκτύπωσε Ο[i],’T’
	Τέλος_Αν
Τέλος_Επανάληψης
Τέλος ΟΜΑΔΑ


Αλγόριθμος ΟΜΑΔΑ
Δεδομένα //Ο,Θ,Λ //
ΘΕΣΗ[1]<-‘Ε’
ΘΕΣΗ[2]<-’Α’
ΘΕΣΗ[3]<-’Κ’
ΘΕΣΗ[4]<-’Τ’
Για i από 1 μέχρι 4 
	max<-0
	Για j από 1 μέχρι 22
		Aν Λ[j]>max ΚΑΙ Θ[j]=ΘΕΣΗ[i]τότε
		max<- Λ[j]
	Τέλος_Αν
	Εκτύπωσε ΘΕΣΗ[i]
	Για j από 1 μέχρι 22
		Aν Λ[j]=max ΚΑΙ Θ[j]=ΘΕΣΗ[i]τότε
			Εκτύπωσε Ο[j]
		Τέλος_Αν
Τέλος_Επανάληψης
Τέλος ΟΜΑΔΑ


Βέβαια τώρα στην πρώτη λύση οι παίχτες εμφανίζονται λίγο ανακατωτά σε σχέση με τη θέση, όχι ότι είναι λάθος όμως αφού εμφανίζεται κάθε φορά και η θέση στην οποία παίζουν...

Στη δεύτερη λύση (όπως και στη δεύτερη λύση της αρχικής εκδοχής) παρατήρησα ότι δεν βάζεις Τέλος_επανάληψης στις εντολές Για... που έχουν μόνο μία Αν...Τελος_αν. Το έχεις ξεχάσει; Ή δεν το βάζεις επειδή θεωρείς ότι δεν χρειάζεται αφού η Για... περιέχει μόνο μία εντολή (και για αυτό βάζεις το Τέλος_αν αριστερότερα); Αν ισχύει το δεύτερο τότε δεν νομίζω ότι είναι σωστό, ασχέτως αν γίνεται σε κάποιες γλώσσες...

jgalano


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

Παράθεση από: jgalano στις 11 Μαΐου 2009, 05:12:32 ΜΜ
Κεκτημένη ταχύτητα Νίκο, διορθώθηκε !

Αυτό το θέμα αποδείχθηκε στοιχειωμένο! Ελπίζω να μη μου βγάλετε τη φήμη του γκαντέμη  :)