• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 17, 2025, 13:06:40 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.
June 17, 2025, 13:06:40 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Αποτελέσματα Εξεταστικής ...
by george14
[Today at 12:08:25]

[ΨEE] Γενικές απορίες και...
by Juror8
[Today at 12:06:57]

Ισραήλ - Ιράν: Πόλεμος στ...
by okan
[Today at 02:33:21]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[Today at 02:29:21]

[Οργάνωση Υπολογιστών] Γε...
by RAFI
[June 16, 2025, 22:46:54 pm]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[June 16, 2025, 19:49:00 pm]

[ΘΤΠΑ] Γενικές απορίες κα...
by Nikos_313
[June 16, 2025, 16:56:56 pm]

[Εφ.Θερμοδυναμική] Γενικέ...
by Λαμπτήρας
[June 16, 2025, 15:55:08 pm]

[Αρχές Οικονομίας] Να επι...
by _Trob
[June 16, 2025, 13:28:21 pm]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[June 16, 2025, 12:13:45 pm]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by George_RT
[June 16, 2025, 10:22:18 am]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[June 16, 2025, 01:56:37 am]

Αντικατάστασης πυκνωτή σε...
by nmpampal
[June 15, 2025, 16:25:56 pm]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by nmpampal
[June 15, 2025, 06:43:15 am]

Το thmmy.gr στο instagram...
by Mr Watson
[June 15, 2025, 00:50:23 am]

[Λογισμός ΙΙ] Απορίες σε...
by el mariachi
[June 14, 2025, 20:47:07 pm]

ΠΡΟΣΟΧΗ στο ανέβασμα θεμά...
by tzortzis
[June 14, 2025, 16:54:08 pm]

Ρυθμίσεις Θεμάτων της Ανώ...
by el mariachi
[June 14, 2025, 11:56:45 am]

Πότε θα βγει το μάθημα; -...
by Nikos_313
[June 14, 2025, 10:00:55 am]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[June 14, 2025, 09:58:14 am]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426686
Total Topics: 31710
Online Today: 169
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 65
Guests: 77
Total: 142
Vasilikikr
kzmekos
kmargaritis
Nikos_313
Roidos
gmpatsol
MrGreekArrow
ellimoschou
Saint_GR
gdiakonikolhs
Raphael
melisste22
elenak
gp6
meliou
Billyskotsikas
nikitask
Διάλεξις
glavdakis
Denisivo
antontsiorvas
kvas
pkoko
Kass
AcademicWeapon!
mimaki
xeniam
stavros0201
Fotis Roukoutakis
mike_x
bit11
jimalexoud
athena_apo
cchristodoulou
menelaras
dkoui
dmoral
paristetos
Carot1456
aggp
ZontanosThrylos
freakyy
Mardouk75
Ntinomanolo123
tasos gourd
NickSpan
mariaxalk
Limpolits
salonis
Farmakis Aggelos
tmpadasn
gkougeor
dimivage
dim13
pavlaras
kkon
panagiot
pipitsenko
Εμφάνιση

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

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 2ο Εξάμηνο > Αντικειμενοστραφής Προγραμματισμός (Moderators: chatzikys, tzortzis) > [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
0 Members and 1 Guest are viewing this topic.
Pages: 1 2 3 [4] 5 6 ... 8 Go Down Print
Author Topic: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11  (Read 10614 times)
Falergon
Καταξιωμένος/Καταξιωμένη
***
Posts: 116


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #45 on: November 18, 2012, 14:05:52 pm »

Μπορείς να ορίσεις int* ως return type για συνάρτηση?
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #46 on: November 18, 2012, 14:32:20 pm »

Quote from: Falergon on November 18, 2012, 14:05:52 pm
Μπορείς να ορίσεις int* ως return type για συνάρτηση?

Ναι, σημαίνει πως η συνάρτηση θα επιστρέφει έναν pointer σε int...
Logged

manos
Νεούλης/Νεούλα
*
Posts: 44


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #47 on: November 18, 2012, 14:59:20 pm »

Γράφω τον εξής κώδικα:
Code:
class prospective{
      char prospect_name[30];
      int prospect_code,prospect_points;
public:
       void vote(prospective *a,int N);
       void fill(void);
       void out(void);
};
 
Και παρακάτω ορίζω την vote
Code:
void prospective::vote(prospective *a,int N)
{
     int i;
     for (i=0;i<N;i++){
          a[i].out();
         }
}

Χρησιμοποιώ την vote στη συνάρτηση main με την εξής εντολή 
Code:
vote(prospect_list,prospect_number);  

και βγάζει σφάλμα στη συνάρτηση main ότι η vote συνάρτηση δεν έχει δηλωθεί.Μπορεί κάποιος να μου εξηγήσει γιατί συμβαίνει αυτό;
(O κώδικας για την vote είναι απλά δοκιμαστικός )
« Last Edit: November 18, 2012, 15:10:12 pm by Exomag » Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #48 on: November 18, 2012, 15:08:46 pm »

Quote from: manos on November 18, 2012, 14:59:20 pm
Γράφω τον εξής κώδικα:
Code:
class prospective{
      char prospect_name[30];
      int prospect_code,prospect_points;
public:
       void vote(prospective *a,int N);
       void fill(void);
       void out(void);
};
 
Και παρακάτω ορίζω την vote
Code:
void prospective::vote(prospective *a,int N)
{
     int i;
     for (i=0;i<N;i++){
          a[i].out();
         }
}

Χρησιμοποιώ την vote στη συνάρτηση main με την εξής εντολή  
Code:
vote(prospect_list,prospect_number);  

και βγάζει σφάλμα στη συνάρτηση main ότι η vote συνάρτηση δεν έχει δηλωθεί.Μπορεί κάποιος να μου εξηγήσει γιατί συμβαίνει αυτό;
(O κώδικας για την vote είναι απλά δοκιμαστικός )

Όρισες τη συνάρτηση vote ως συνάρτηση-μέλος της κλάσης prospective. Επομένως, θα πρέπει να την καλέσεις μέσω ενός αντικειμένου που ανήκει στην κλάση prospective.

Για παράδειγμα:
Code:
object_example prospective;
object_example.vote(prospect_list,prospect_number);
« Last Edit: November 18, 2012, 15:11:51 pm by Exomag » Logged

manos
Νεούλης/Νεούλα
*
Posts: 44


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #49 on: November 18, 2012, 15:22:14 pm »

πρέπει να είναι απαραίτητα αντικείμενο prospective ή μπορεί να την καλέσει ένας πίνακας με αντικείμενα  τύπου prospective;
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #50 on: November 18, 2012, 15:30:45 pm »

Quote from: manos on November 18, 2012, 15:22:14 pm
πρέπει να είναι απαραίτητα αντικείμενο prospective ή μπορεί να την καλέσει ένας πίνακας με αντικείμενα  τύπου prospective;

Εφόσον έχεις ένα πίνακα με αντικείμενα τύπου prospective (έστω πχ prospect_list), τότε μπορείς να καλέσεις τη vote μέσω του κάθε ένα απο τα στοιχεία του πίνακα.

Για παράδειγμα:
Code:
prospective prospect_list[10]; //μπορείς να γράψεις και "prospective *prospect_list;" και έπειτα να κάνεις malloc
for (i=0;i<10;i++) {
      prospect_list[i].vote(prospect_list,prospect_number);
}

Logged

Neal
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 910



View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #51 on: November 18, 2012, 15:35:50 pm »

Γιατί μπερδεύεσαι με αυτόν τον τρόπο; Βάλε τη συνάρτηση vote στο πρόγραμμα σου, όχι στην κλάση. Όπως είναι η main.
Logged

like.no.other™
manos
Νεούλης/Νεούλα
*
Posts: 44


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #52 on: November 18, 2012, 15:45:06 pm »

Εxomag ευχαριστώ γίνεται με τον τρόπο που είπες.

Neal απλά σκέφτηκα  ότι αφού η συνάρτηση vote δέχεται όρισμα πίνακα με αντικείμενα τύπου prospective πρέπει να ανήκει στην κλάση.
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #53 on: November 18, 2012, 15:52:33 pm »

Quote from: manos on November 18, 2012, 15:45:06 pm
απλά σκέφτηκα  ότι αφού η συνάρτηση vote δέχεται όρισμα πίνακα με αντικείμενα τύπου prospective πρέπει να ανήκει στην κλάση.

Μπορείς να το υλοποιήσεις όπως θέλεις. Απλά, μια συνάρτηση τη βάζεις μέσα σε μια κλάση (και την κάνεις, δηλαδή, συνάρτηση-μέλος) εφόσον θα εκτελεί κάποια λειτουργία που θα αφορά τη συγκεκριμένη κλάση.
Σε αυτήν την περίπτωση, η συνάρτηση vote δεν εκτελεί κάποια λειτουργία που να αφορά συγκεκριμένα τη κλάση prospective, οπότε δεν εξυπηρετεί κάποιο σκοπό να την ορίσεις ως συνάρτηση-μέλος της κλάσης prospective.
Αυτό βέβαια είναι ανάλογα με τον τρόπο που το σκέφτεται ο καθένας, οπότε οι διάφορες λύσεις-υλοποιήσεις μπορεί να διαφέρουν Wink
Logged

manos
Νεούλης/Νεούλα
*
Posts: 44


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #54 on: November 18, 2012, 16:11:27 pm »

Συγγνώμη αν γίνομαι κουραστικός αλλά  η vote δεν θα πρέπει να αλλάζει τη βαθμολογία των υποψηφίων?Αν είναι έτσι θα πρέπει να διαχειρίζεται τα δεδομένα αντικειμένων τύπου prospective και άρα θα πρέπει να είναι στην κλάση.
Logged
johnnykost
Καταξιωμένος/Καταξιωμένη
***
Posts: 282


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #55 on: November 18, 2012, 16:21:40 pm »

Μπορείς να δημιουργήσεις μια setx() συνάρτηση που είναι public για να το κάνεις αυτό. Οπότε θα μπορεί να τη διαχειριστεί η vote.
Logged
Halfpenny
Ανερχόμενος/Ανερχόμενη
**
Posts: 51


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #56 on: November 18, 2012, 16:33:31 pm »

Έχω ένα πρόβλημα με την συνάρτηση vote(). Δεν ξέρω πως να κάνω αυτό που λέει, να βάζει Ν,Ν-1,,..... κλπ ψήφους σε κάθε υποψήφιο ανάλογα με την σειρά των κωδικών που έχει βάλει ο χρήστης. Μπορεί κάποιος που το έχει κάνει να γράψει κανα γενικό μπούσουλα για την συνάρτηση αυτή?
Logged
johnnykost
Καταξιωμένος/Καταξιωμένη
***
Posts: 282


View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #57 on: November 18, 2012, 16:43:25 pm »

Κάνε μια do-while σου για να σου δίνει  κάθε κωδικό υποψηφίου μέχρι να σου δώσει πχ 0 για να σταματήσει και κάνε με if αναζήτηση στην οποία να βάζει στον υποψήφιο Ν βαθμούς και στο τέλος αυτής κάνε το Ν Ν-1.

εδιτ: Την αναζήτηση μέσα σε for εννοείται
« Last Edit: November 18, 2012, 16:47:20 pm by johnnykost » Logged
Neal
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 910



View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #58 on: November 18, 2012, 17:22:37 pm »

Κάνεις ένα for για i από 0 μέχρι τον αριθμό των υποψηφίων (N) και στον πρώτο που ψηφίζει δίνεις N-i ψήφους.
Logged

like.no.other™
anchelon
Θαμώνας
****
Posts: 492



View Profile
Re: [C++] Άσκηση Α - 2012/2013 - Προθεσμία 18/11
« Reply #59 on: November 18, 2012, 17:22:46 pm »

Έχω κάτι τέτοιο:
main
{
  vote(PRO,N);//opou PRO είναι ο πίνακας των αντικειμένων που ορίσαμε με malloc
}

void vote(prospective *A,float k)

{
    float choice[k];
    for(int i=0;i<k;i++){
       cin >>choice;
  
    και κατι τετοιο:
     A.getcodeP.....εδώ έχω κ τις αγκύλες του πίνακα Α αλλά δν το βγάζει στο ποστ!!
      
  }
και μου βγάζει τα εξής ηλίθια λάθη:k undeclared first use..., A undeclared....,choice undeclared...τι παίζει να φταίει??
Logged
Pages: 1 2 3 [4] 5 6 ... 8 Go Up Print
Jump to:  

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