
ertyiopos
Members-
ΜΗΝΥΜΑΤΑ FORUM
16 -
ΜΕΛΟΣ
-
ΤΕΛ. ΕΠΙΣΚΕΨΗ
Οτιδήποτε δημοσιεύεται από ertyiopos
-
λοιπόν έκανα το εξής: void Ball::hit() { if( hidden == true ) //Elenxei an i mpala einai idi eksafanismeni { cout << "You cannot hit a hidden ball." << endl; return; } srand(time(NULL)); int i = 1 + rand()%5; //Dialegei tixaia ena ari8mo gia tin pi8anotita i mpala //Na eksafanistei.Dialegei apo to 1-5 gia na min simvenei polli sixna if( i == 5 ) //an dialextike to 5 tote i mpala eksafanizete allios paremenei faneri! { hidden = true; cout << "Ball disappeared!" << endl; return; } cout << "Tsaf!" << endl; //Xtipima tis mpalas(simvenei gia ka8e mpala pou xtipiete) ...
-
Τελικά αυτό που πόσταρα μπορώ να το κάνω??
-
Άμα βάλω τον κώδικα που είναι ίδιος στην virtual συνάρτηση που είναι δηλωμένη στηn κλάση ball και στις άλλες απλώς να βάλω αυτό που αλλάζει τότε όταν καλώ την hit για την basket θα καλείται και η hit της κλάσης ball?? βασικά παρατήρησα οτι μπορώ να κάνω αυτό: #include <iostream> #include <cstdlib> using namespace std; class Ball { public: virtual void hit() { cout << "Program "; } }; class Basket:public Ball { public: void hit() { Ball b; b.hit(); cout << "Worked!" << endl; } }; int main(int argc, char *argv[]) { Basket b; Tennis t; Ping_pong p; Ball...
-
Καλησπέρα έχω μια εργάσια στην c++ η οποία θέλει να εφαρμόσουμε ένα απλό προγραμματάκι απλώς θέλει να δείξουμε οτι μπορούμε να χειριστόυμε καλά τις virtual συναρτήσεις! Το πρόβλημα είναι το εξής: έχω κάνει το πρόγραμμα το οποίο είναι να φτιάξεις 3 μπάλες basket,tennis,ping-pong και ο παίχτης να επιλέγει μια μπάλα τυχαία κάθε φόρα και σε κάθε χτύπημα η μπάλα να χάνει αντοχή ή να εξαφανίζεται (μαλλον αυτό συμβαίνει αν αυτός που την χτυπάει είναι άμπαλος! ) οι υπόλυπες να κάνουν rest και αύτο να γίνεται για Κ κύκλους που δίνονται...
-
ωραιιιιος!! Αυτό που θέλω να κάνω είναι οι μουσικές καρέκλες. Με την ht αύτο που θέλω είναι π.χ μπένουν μέσα οι αριθμοί 1,2,3,4 και μέτα απο ένα hit να γίνει 2,3,4,1 δηλαδή να μεταφερθούν όλα μια φορά προς τα αρίστερα φαινότανε να δουλεύει πάντως η συνάρτηση hit του bluezy. Γιατί αυτές τις 2 γραμμές κώδικα τις λές υπόπτες? Σε εύχαριστω πολύ για την βοήθεια βέβεα την τετάρτη επρεπε να παραδώσω την εργασία όποτε την έδωσα με ότι είχα κάνει ελπίζω απλώς να είμαι τυχερός και να μου δουλέψει για να δούν οτι δεν τρέχει κάτι :D!!
-
είναι λιγο μεγάλο...λοιπόν αυτή είναι η main2.cpp: #include <iostream> #include <cstdlib> #include <ctime> #include "class2.h" using namespace std; int main( int argc, char* argv[] ) { int K,i,times=0,N; N = atoi(argv[1]); node players; srand(time(0)); for( i = 0; i < N; i++ ) players.create_chain(); cout << "The game begins!!" << endl; while( 1 ) { if( players.size == 1 ) break; K = 1 + rand()%10; while( times < K ) { cout << "Drum hit!" << endl; players.hit(); times++; } times = 0; cout << "Drum stoped!" << endl; players.stop_tune(); cout << "The...
-
έχω βρεί οτι γίνετε στην παρακάω συναρτηση γιατί όταν δεν την χρησιμοποώστο πρόγραμμα δεν ου εμφάνιζει αυτο το μύνημα: void node::resume() { node *h = head; int number = head->id; head->id = head->next->id; node *current = head->next; while(current!=tail){ current->id = current->next->id; current = current->next; } current->id = number; } δε βρήσκω καποιό λάθος όμως για κοιτάξτε την και εσείς! εντωμεταξύ την πόσταρε ο bluezy
-
Νομίζω οτι κατάλαβα. Μηπώς μπόρεις να μου απαντήσεις τι είναι αυτό που πέρνω απο τον compiler σαν λάθος? *** glibc detected *** a.out: double free or corruption (fasttop): 0x09206008 *** ======= Backtrace: ========= /lib/i386-linux-gnu/libc.so.6(+0x75ee2)[0xac9ee2] /usr/lib/i386-linux-gnu/libstdc++.so.6(_ZdlPv+0x1f)[0x8ee51f] a.out[0x8048d0a] a.out[0x804897c] /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0xa6d4d3] a.out[0x8048801] ======= Memory map: ======== 0059b000-005b7000 r-xp 00000000 08:01...
-
έτσι των δήλωσα τον constructor class node { public: node(int); ~node(); } και στο .cpp αρχείο είναι node::node(int x):size(x) { head = 0; tail = 0; }
-
όχι τον κράτησα. Πρέπει μέσα στα άγκιστρα να μην υπάρχει τπτ?
-
Καλησπέρα και πάλι μου δημιουργήθηκε το ακόλουθο πρόβλημα θέλω να φτίαξω τον δημιουργό της κλάσεις μου να παιρνει μια μεταβλητή π.χ: node::node( int x ): size(x) { } αυτό είναι στην main: N = atoi(argv[1]); node players(N): νομίζω σωστά τα έχω αλλά ο compiler μου βγάζει πρόβλημα στην συνάρτηση insert και λέει no matching function call to node::node() η insert είναι αυτή: void node::insert() { node *temp = new node; cout << "Give the player id: "; cin >> temp -> id; temp -> next = 0; if ( head != NULL && tail != NULL ) { tail->next = temp; tail =...
-
ευχαριστώ πολύ!!
-
Ναι το έκανα έτσι και δούλεψε ευχαριστώ πολύ!! Όσο για το αλλό που λέγαμε δηλαδή να φτιαξω μια συνάρτηση που να μεταφέρει όλα κατα 1 πίσω δήλαδη να βάζω 1,2,3,4 και να μου βγάζει 2,3,4,1 σκέφτηκα το εξής πρόγραμμα void node::resume() { node *h = head, *current = head, *temp = NULL; while ( current != NULL ) { h = h->next; next = h->next; prev = temp; temp = current; current = current->next; } } το h το έχω βάλει να είναι ίσο με τον επομενό του γιατί σκέφτηκα ότι θα πρεπεί το next να είναι ίσο με τον επόμενο του επόμενου του αφόυ...
-
Προσπάθησα να την κάνω διπλά συνδεδεμένη και έκανα class node { private: int id; node *next; node *prev; node *head; node *tail; public: node(); void insert(); void print(); }; και επείδη δεν ξέρω πώς ακριβώς είναι η διπλά συνδεδεμένη υπέθεσα οτι το insert θα είναι κάπως έτσι: void node::insert() { node * temp = new node; cout << "Value: " ; cin >> temp->id; temp -> next = 0; temp -> prev = 0; if( head!= NULL && tail!= NULL ) { tail -> next = temp; tail -> prev = tail; tail = temp; } else { head = temp; tail = temp; } } το temp θα μπεί στον επόμενο του ήδη...
-
δηλαδή να φτιάξω μια κλάση που να έχει μια struct μέσα? Έτσι όπως το έχω φτιάξει (χωρι struct) το ίδιο δεν είναι? αφου κάνει οτι κάνει και μια λίστα..
-
Καλησπέρα σας! Έχω φτιάξει το ακόλουθο πρόγραμμα (λίστα) σε c++ #include <iostream> using namespace std; class node{ public: node(); void insert(); void print(); private: int value; int size=0; node *next; node *head; node *tail; }; node::node(){ head = 0, tail = 0; } int main(){ node ll; while (1){ cout << "1. Insert\n2. Print All "; int opt; cin >> opt; switch(opt){ case 1: ll.insert(); break; case 2: ll.print(); break; }//end switch }//end while return 0; }//end main void node::insert(){ node *temp = new node; cout << "Value: "; cin >> temp->value; temp -> next...