• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
September 17, 2025, 22:48:48 pm

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
September 17, 2025, 22:48:48 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Aναζωπύρωση των εχθροπραξ...
by Katarameno
[Today at 22:43:28]

best username in THMMY.gr
by Katarameno
[Today at 20:35:29]

Αποτελέσματα Εξεταστικής ...
by ilazarit
[Today at 19:59:41]

Ποιον πάροχο να επιλέξω?
by Katarameno
[Today at 19:16:50]

Ποιο τραγούδι ακούσατε 5+...
by Katarameno
[Today at 17:16:08]

[Τηλεπικοινωνιακά Συστήμα...
by chatzikys
[Today at 16:07:13]

Πρόγραμμα Σπουδών Ακαδημα...
by sg31a
[Today at 11:35:11]

Εργασία στην METLEN, Γνώμ...
by ChrisKaloy-Kakou
[Today at 00:51:50]

Συμβάσεις και εταιρείες
by Nikos_313
[September 16, 2025, 23:02:05 pm]

[Στοχαστικά Σήματα και Δι...
by Nikos_313
[September 16, 2025, 22:54:08 pm]

Μέλος του μήνα - Ιούλιος ...
by Katarameno
[September 16, 2025, 19:37:40 pm]

Ευρωμπάσκετ 2025
by Katarameno
[September 16, 2025, 02:46:49 am]

Πότε θα βγει το μάθημα; -...
by Katarameno
[September 16, 2025, 01:08:33 am]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[September 15, 2025, 22:10:40 pm]

Users <=22 OR >=222
by Mr Watson
[September 14, 2025, 19:36:18 pm]

[ΑΡΑΓΕ Attack] ΝΑ ΕΠΙΣΤΡΕ...
by Aris★
[September 14, 2025, 14:31:33 pm]

[Τομέας Ηλεκτρονικής] Μαθ...
by Nikos_313
[September 14, 2025, 13:29:36 pm]

Των συνειρμών το παίγνιο....
by chatzikys
[September 14, 2025, 13:20:18 pm]

Καλός βαθμός στην σχολή
by Σουλης
[September 14, 2025, 13:00:41 pm]

Τα παράσιτα ανάμεσά μας
by okan
[September 14, 2025, 03:20:17 am]
Στατιστικά
Members
Total Members: 10013
Latest: nataliaef
Stats
Total Posts: 1428141
Total Topics: 31767
Online Today: 440
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 31
Guests: 350
Total: 381
Tasos Bot
nikosterpos
kchatziae
Oracle
Napoleontas
0restis
tasos potsakis
Nikos_313
George_RT
AcDimitri
antrikos
tzortzis
Katarameno
RivenT
thomasdt
odkoutrolikos
Επίδοξος
kokkinosgior
chriskazakos
giorgosss03
akoil
Aglosdoum
evgeniaz
tasos gourd
hoo2
PurpleWitch
TahmKench
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads
με προσοχή στα ονόματα των αρχείων!
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 2ο Εξάμηνο > Αντικειμενοστραφής Προγραμματισμός (Moderators: chatzikys, tzortzis) > [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
0 Members and 1 Guest are viewing this topic.
Pages: 1 [2] 3 Go Down Print
Author Topic: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ  (Read 4624 times)
pentium4
Veteran
Καταστραμμένος
******
Posts: 7940


εφακ


View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #15 on: December 07, 2015, 21:28:19 pm »

οκ θενξ !!

μάλλον γιατί καιγόμαστε να τελειώνουμε Tongue και εγώ στην ηλικία τους την είχα παρατήσει τη c++ Tongue

Quote from: Firkraag on December 07, 2015, 21:28:19 pm
Quote from: Tolis _tmo_ on December 07, 2015, 21:26:10 pm
ΥΓ2: γτ γράφουμε μόνο εμείς οι 4 που είμαστε όλοι >5 εξ. οεο;

Οι μικροί είναι πολύ ντροπαλοί για να ποστάρουν,διαβάζουν τα topics μόνο.

το facebook είναι πιο φιλικό για τους ντροπαλούς..

 Cheesy Cheesy Grin Grin Grin
« Last Edit: December 07, 2015, 21:36:42 pm by pentium4 » Logged

https://www.youtube.com/watch?v=doMu-YNc4wM&feature=emb_title

Schro
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 2797


if cats could talk, they wouldn't.


View Profile
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #16 on: December 08, 2015, 00:31:09 am »

Quote from: Tolis _tmo_ on December 07, 2015, 21:26:10 pm
. . .
ΥΓ2: γτ γράφουμε μόνο εμείς οι 4 που είμαστε όλοι >5 εξ. οεο;

τρομάζουμε τους μικρούς.  Grin
καλά δουλεύει το team work μέχρι στιγμής πάντως υπάρχει μια συνεννόηση!  Wink
άσε που η pentium κοροιδεύει τα καινούργια μέλη του φόρουμ για τα username τους.  

ps : ψηθείτε να χρωστάτε και αρχ. υπολογιστών για το επόμενο εξάμηνο  Grin
« Last Edit: December 08, 2015, 00:35:13 am by Schro » Logged

------------------------------------TIPS FOR SUCCESS------------------------------
If you run out of handsoap, simply boil water and dip your hands into it. Heat kills bacteria.

When a zombie tells you that they want brains, what they mean is they want an education. Don't be afraid to help them.

Don't study until the night before a big exam. This will ensure that all the information is fresh in your mind.
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


Κεραυνοί, φωτιές, ece


View Profile WWW
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #17 on: December 08, 2015, 01:22:53 am »

Quote from: Schro on December 08, 2015, 00:31:09 am
ps : ψηθείτε να χρωστάτε και αρχ. υπολογιστών για το επόμενο εξάμηνο  Grin

Είναι ανάμεσα στα 7 μαθήματα που χρωστάω από το 4ο εξάμηνο  Embarrassed Sad
Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
Schro
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 2797


if cats could talk, they wouldn't.


View Profile
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #18 on: December 08, 2015, 01:38:25 am »

Quote from: Tolis _tmo_ on December 08, 2015, 01:22:53 am
. . .

good! μια απ΄ τα ίδια και εδώ!  Wink
Logged

------------------------------------TIPS FOR SUCCESS------------------------------
If you run out of handsoap, simply boil water and dip your hands into it. Heat kills bacteria.

When a zombie tells you that they want brains, what they mean is they want an education. Don't be afraid to help them.

Don't study until the night before a big exam. This will ensure that all the information is fresh in your mind.
pentium4
Veteran
Καταστραμμένος
******
Posts: 7940


εφακ


View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #19 on: December 08, 2015, 02:33:43 am »

στην τελική, αν είναι σωστή η εργασία μου, μέχρι που το διασκέδασα κιόλας όταν έβαλα για παράμετρο char και έβγαλε ιερογλυφικά

(όσο περνάνε τα χρόνια στη σχολή καίγεσαι)
Logged

https://www.youtube.com/watch?v=doMu-YNc4wM&feature=emb_title

zwitsa
Θαμώνας
****
Posts: 332



View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #20 on: December 09, 2015, 00:35:12 am »

την data στην κλάση τι την δηλώνουμε;  Undecided
Logged

Σήμερα είμαστε, αύριο δεν είμαστε. Φάτε.
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


Κεραυνοί, φωτιές, ece


View Profile WWW
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #21 on: December 09, 2015, 00:52:26 am »

Quote from: zwitsa on December 09, 2015, 00:35:12 am
την data στην κλάση τι την δηλώνουμε;  Undecided

Πρέπει να κάνεις template κλάση για να υποστηρίζει διαφορετικούς τύπους. Τα δεδομένα data θα είναι οποιουδήποτε τύπου, δηλαδή αν έχεις δηλώσει template <typename T> θα είναι T.
Εμένα είναι έτσι η κλάση:
Code:
template <typename T>
class Node{
    private:
        T data;
        ...
    public:
        ...
};
Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
ilektrik
Ανερχόμενος/Ανερχόμενη
**
Posts: 74


"Pika-pi"


View Profile
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #22 on: December 09, 2015, 12:43:20 pm »

Quote from: Tolis _tmo_ on December 03, 2015, 11:51:40 am
EDIT: λειτουργεί ο τρόπος με το cast. Επίσης αν θες μπορείς να περιορίσεις το εύρος των τυχαίων αριθμών σε [48,123] που αντιστοιχεί στα
0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz
ώστε αν ο τύπος είναι string ή char να μη περιέχουν πολύ περίεργα σύμβολα.

Αυτό με το type casting το καταλαβαίνω... ο τύπος T όμως πως θα καθορίζεται και αυτός τυχαία; Θα πρέπει να αποτελεί είσοδο στον constructor και θα δίνεται από τον χρήστη κάθε φορά που δημιουργείται αντικείμενο;  Huh
Logged
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


Κεραυνοί, φωτιές, ece


View Profile WWW
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #23 on: December 09, 2015, 12:59:23 pm »

Quote from: ilektrik on December 09, 2015, 12:43:20 pm
Quote from: Tolis _tmo_ on December 03, 2015, 11:51:40 am
...
Αυτό με το type casting το καταλαβαίνω... ο τύπος T όμως πως θα καθορίζεται και αυτός τυχαία; Θα πρέπει να αποτελεί είσοδο στον constructor και θα δίνεται από τον χρήστη κάθε φορά που δημιουργείται αντικείμενο;  Huh

Ο τύπος καθορίζεται τη στιγμή που δημιουργείς ένα αντικείμενο της κλάσης. Δηλαδή στη main σου μόλις δημιουργήσεις ένα αντικείμενο έτσι: Node<int> myNode1 το Τ θα είναι τύπου int για αυτό το αντικείμενο, ενώ αν λίγο παρακάτω κάνεις Node<char> myNode2 το T θα είναι τύπου char για το αντικείμενο myNode2. Σε αυτή την άσκηση δε χρησιμοποίησα καθόλου είσοδο από τον χρήστη.
Αν θες διάβασε και αυτό (προς το τέλος) για να καταλάβεις καλύτερα τα templates: http://www.cplusplus.com/doc/tutorial/templates/
έχει και παράδειγμα.

Επίσης κάτι που διάβασα, δε γίνεται να γράψεις στο στυλ: main.cpp + kati.h + kati.cpp όταν δουλεύεις με templates, πρέπει όλος ο κώδικάς σου να είναι στο .h άρα θα έχεις τα αρχεία main.cpp + kati.h
Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
ilektrik
Ανερχόμενος/Ανερχόμενη
**
Posts: 74


"Pika-pi"


View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #24 on: December 09, 2015, 13:06:44 pm »

Ευχαριστώ!   Grin
Logged
zwitsa
Θαμώνας
****
Posts: 332



View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #25 on: December 09, 2015, 17:23:03 pm »

Quote from: Tolis _tmo_ on December 09, 2015, 00:52:26 am
Quote from: zwitsa on December 09, 2015, 00:35:12 am
την data στην κλάση τι την δηλώνουμε;  Undecided

Πρέπει να κάνεις template κλάση για να υποστηρίζει διαφορετικούς τύπους. Τα δεδομένα data θα είναι οποιουδήποτε τύπου, δηλαδή αν έχεις δηλώσει template <typename T> θα είναι T.
Εμένα είναι έτσι η κλάση:
Code:
template <typename T>
class Node{
    private:
        T data;
        ...
    public:
        ...
};

α είσαι προ εσύ... θενκ γιουυυυ Smiley
Logged

Σήμερα είμαστε, αύριο δεν είμαστε. Φάτε.
zwitsa
Θαμώνας
****
Posts: 332



View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #26 on: December 09, 2015, 17:55:02 pm »

δεν κατάλαβα πως θα κάνουμε 1 λίστα αλλά ουσιαστικά 1 λίστα για κάθε τύπο; ουσιαστικά το next τι θα δείχνει; :/
Logged

Σήμερα είμαστε, αύριο δεν είμαστε. Φάτε.
elektra
Ανερχόμενος/Ανερχόμενη
**
Gender: Female
Posts: 88


View Profile
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #27 on: December 09, 2015, 19:04:29 pm »

Quote
Πρώτα θα πάρεις ένα τυχαίο αριθμό από μία από αυτές τις συναρτήσεις που σου δίνει η c++ έτοιμες:
http://en.cppreference.com/w/cpp/numeric/random
μετά θα κάνεις type casting ως εξής:
Code:
static_cast<T>(to_tyxaio_noymero)
νομίζω θα λειτουργήσει... δε το έχω δοκιμάσει ακόμα.

EDIT: λειτουργεί ο τρόπος με το cast. Επίσης αν θες μπορείς να περιορίσεις το εύρος των τυχαίων αριθμών σε [48,123] που αντιστοιχεί στα
0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz
ώστε αν ο τύπος είναι string ή char να μη περιέχουν πολύ περίεργα σύμβολα.

Δημιουργώ εναν τυχαιο αριθμό με τη rand() στο διαστημα που προτείνεις κ εσυ, αλλα δυστυχως στο vs2013 μου χτυπάει στην static_cast<T> (randNum) το εξής λάθος...

error C2440: 'static_cast' : cannot convert from 'int' to 'std::string'

Γενικα λογικο λαθος για την static_cast αλλα ειπες οτι δούλεψε σε εσενα.Τι κάνω τόσο διαφορετικά;  Embarrassed
Logged
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


Κεραυνοί, φωτιές, ece


View Profile WWW
Re: [C++] Άσκηση H - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #28 on: December 09, 2015, 20:08:42 pm »

Quote from: elektra on December 09, 2015, 19:04:29 pm
Quote
...

Δημιουργώ εναν τυχαιο αριθμό με τη rand() στο διαστημα που προτείνεις κ εσυ, αλλα δυστυχως στο vs2013 μου χτυπάει στην static_cast<T> (randNum) το εξής λάθος...

error C2440: 'static_cast' : cannot convert from 'int' to 'std::string'

Γενικα λογικο λαθος για την static_cast αλλα ειπες οτι δούλεψε σε εσενα.Τι κάνω τόσο διαφορετικά;  Embarrassed

Δε μπορείς να κάνεις έτσι απλά cast από οτιδήποτε σε string!

Αν θες το πρόγραμμά σου να υποστηρίζει και string lists θα πρέπει να κάνεις template specialization για τον τύπο string και επειδή το μόνο κομμάτι που σε ενοχλεί είναι το cast (που λογικά το έχεις στον constructor) χρειάζεται να κάνεις specialization μόνο στη μέθοδο του constructor.

Για το cast μπορείς να δεις εδώ:
http://stackoverflow.com/questions/5590381/easiest-way-to-convert-int-to-string-in-c
Η rand συγκεκριμένα επιστρέφει int (αν θυμάμαι καλά)

Αυτό που θα έκανα εγώ είναι:
Code:
//Default class constructor
template <typename T>
Node<T>::Node(){
    data = static_cast<T> rand();
    next = nullptr;
}

//Specialized constructor for string values
template <>
Node<string>::Node(){
    stringstream ss;
    ss << (char)(rand());
    data = ss.str();
    next = nullptr;
}

ΕΔΙΤ: μη ξεχάσεις να κάνεις #include <sstream> και #include <string> !!
« Last Edit: December 09, 2015, 20:14:17 pm by Tolis _tmo_ » Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
elektra
Ανερχόμενος/Ανερχόμενη
**
Gender: Female
Posts: 88


View Profile
Re: [C++] Άσκηση 8 - 2015/2016 Προθεσμία 10/12/2015 12:00 πμ
« Reply #29 on: December 09, 2015, 21:02:30 pm »

Αψογος! Σε ευχαριστω  Smiley

Ναι ήθελα και string λίστα γι αυτό χτυπούσε. Παω να δοκιμάσω την specialization τώρα

Ευχαριστώ κ πάλι!
Logged
Pages: 1 [2] 3 Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...