virxen75 Δημοσ. 13 Δεκεμβρίου 2010 Δημοσ. 13 Δεκεμβρίου 2010 δεν εχω ξεκηνησει καν > #include <stdio.h> struct address{ char odos[16]; int noumero; }; struct foititis{ char am[7]; char onoma[11]; char epitheto[16]; struct address dieuthunsi; float mo; int fail; }; struct mathima{ char onoma[16]; char am_foithth[7]; float vathmos; }; void eisagogi(); void ektiposi(); void diorthosi(); void diagrafi(); void taksinomisi(); void enimerosi(); void statistika(); int main(){ int epilogi=0; while (epilogi!=8){ while(epilogi<1 || epilogi>8){ printf("\n1. eisagogi"); printf("\n2. ektiposi"); printf("\n3. diorthosi"); printf("\n4. diagrafi"); printf("\n5. taksinomisi"); printf("\n6. enimerosi"); printf("\n7. statistika stoixeia"); printf("\n8. eksodos"); printf("\ndwse epilogi(1-8):"); scanf("%d",&epilogi);getchar(); } switch(epilogi){ case 1: eisagogi(); epilogi=-1; break; case 2: ektiposi(); epilogi=-1; break; case 3: diorthosi(); epilogi=-1; break; case 4: diagrafi(); epilogi=-1; break; case 5: taksinomisi(); epilogi=-1; break; case 6: enimerosi(); epilogi=-1; break; case 7: statistika(); epilogi=-1; break; } } getchar(); return 0; } void eisagogi(){}; void ektiposi(){}; void diorthosi(){}; void diagrafi(){}; void taksinomisi(){}; void enimerosi(){}; void statistika(){}; τώρα ξεκίνησες , καλή συνέχεια
gtroza Δημοσ. 13 Δεκεμβρίου 2010 Δημοσ. 13 Δεκεμβρίου 2010 φαγώθηκες, δε πιστεύουμε σε θεούς και δαίμονες... (να δω τι θα σου απαντήσει ο V.I.S):-p εσύ υιοθέτησες την '.' εγώ... † δλδ το σύμβολο † είναι σαν υπογραφή "αγράμματου" ; πιστεύω ότι μπορεί να εξηγηθεί η άσκηση χωρίς να δωθεί ο κώδικας κάτι τέτοιο θα βοηθήσει κάποιον που ενδιαφέρεται, να φτάσει "σώος στην στεριά", "κουνώντας λίγο τα χέρια του" αλλιώς συμφωνώ με την "αυστηρή" κριτική και τις "νουθεσίες" και παρακολουθώ με την ελπίδα να μάθω οV.I.S πρέπει να ασχοληθεί με πιό προχωρημένους συγκριτικά ο νεαρός είναι "χειρώνακτας" σαν κι εμένα .
gtroza Δημοσ. 13 Δεκεμβρίου 2010 Δημοσ. 13 Δεκεμβρίου 2010 παλιά που οι άνθρωποι πίστευαν σε θεούς και δαίμονες τα τσιράκια μάθαιναν την τέχνη, εφ'όσον ο μάστορας, τους άφηνε να δούν μετά ήρθε ο Δαρβίνος και η επιστήμη τα τσιράκια ονομάσθηκαν μαθητές και οι μάστορες δάσκαλοι στην νέα τάξη πραγμάτων ο λόγος και η γραφή είχαν καθοριστική σημασία πιό μετά ήρθε η εικόνα και οι μαθητές ανακάλυψαν την xerox ! και τέλος ήρθε το copyleft και το Linux κι ζήσαμε όλοι καλά κι αυτοί καλύτερα ! ξέχασα το insomnia αλλά φοβάμαι το bigban ! .
V.I.Smirnov Δημοσ. 13 Δεκεμβρίου 2010 Δημοσ. 13 Δεκεμβρίου 2010 @ natural_sgf, gtroza H ιστορία : Mια γυναίκα όταν έβαζε ψητό στο φούρνο έκοβε πάντα ένα μικρό τμήμα από το κρέας. Την ρωτά η κόρη της "γιατί ; " και απαντά "διότι το έκανε η μητέρα μου". Ρωτά λοιπόν την γιαγιά της κι εκείνη απαντά πάλι "διότι το έκανε η μητέρα μου". Και τελικά ρωτά την μεγάλη γιαγιά και της απαντά : "έκοβα συνήθως ένα μικρό κομμάτι από το κρέας διότι το ταψί ήταν μικρό και δεν το χωρούσε !!". To νόημα : Η παύλα που χρησιμοποιώ έχει (ή είχε) πρωταρχικά λειτουργικό σκοπό. Συνήθως τη θέτω για να υπάρχει επαρκές κενό ανάμεσα στο κείμενο του μηνύματος και στο πέρας του χώρου του μηνύματος. Έτσι το κείμενο δίνει την εντύπωση ότι δεν στριμώχνεται και είναι λιγότερο κουραστικό για το μάτι. Εσείς γιατί βάζετε τα αντίστοιχα δικά σας ; -
gtroza Δημοσ. 13 Δεκεμβρίου 2010 Δημοσ. 13 Δεκεμβρίου 2010 @ natural_sgf, gtroza H ιστορία : Mια γυναίκα όταν έβαζε ψητό στο φούρνο έκοβε πάντα ένα μικρό τμήμα από το κρέας. Την ρωτά η κόρη της "γιατί ; " και απαντά "διότι το έκανε η μητέρα μου". Ρωτά λοιπόν την μητέρα της κι εκείνη απαντά πάλι "διότι το έκανε η μητέρα μου". Και τελικά ρωτά την μεγάλη γιαγιά και της απαντά : "έκοβα συνήθως ένα μικρό κομμάτι από το κρέας διότι το ταψί ήταν μικρό και δεν το χωρούσε !!". To νόημα : Η παύλα που χρησιμοποιώ έχει (ή είχε) πρωταρχικά λειτουργικό σκοπό. Συνήθως τη θέτω για να υπάρχει επαρκές κενό ανάμεσα στο κείμενο του μηνύματος και στο πέρας του χώρου του μηνύματος. Έτσι το κείμενο δίνει την εντύπωση ότι δεν στριμώχνεται και είναι λιγότερο κουραστικό για το μάτι. Εσείς γιατί βάζετε τα αντίστοιχα δικά σας ; - επειδή στο θέμα τις παύλας, είμαι η προγιαγιά της ιστορίας θα αναφερθώ στο πρώτο μέρος είναι η εξήγηση που πρέπει να πάρει ως "λύση" ο Δημήτρης για να μάθει να "μαγειρεύει" τα ψάρια που θα μάθει να "ψαρεύει" ! άν η προγιαγιά εκτός που άφηνε την κόρη της να βλέπει τον "κώδικα" μαγειρικής, εξηγούσε τότε καί τις "διαδικασίες" δεν θα είχαν απορίες αργότερα μπορούσε αυτή την επαναλαμβανόμενη κίνηση να την βάλει σε ένα include pote_koboume_komataki.h για να μην κολλάει κάποιο link που παραθέτω με την υπογραφή μου λίγο πρωτόγονο βέβαια, αλλά είμαι και των σπηλαίων και του interpreter από ανάγκη
MeTaXaS4 Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 λοιπόν, επειδή είπες ότι θες βοήθεια και είσαι 1ο εξάμηνο είπα να βοηθήσω file1 > #include "sxolh.h" int main() { afkson_arithmos=1; f = (char*)"Foitites.dat"; m = (char*)"Mathimata.dat"; int epilogi = menu(); checkchoise(epilogi); } sholh.h > #include <iostream> #include <fstream> #include <stdio.h> #include <stdlib.h> using namespace std; struct address { char odos[16]; int noumero; }; struct foititis { char am[7]; char onoma[11]; char epitheto[16]; struct address dieuthunsi; float mo; int fail; }; struct mathima { char onoma[16]; char am_foithth[7]; float vathmos; }; //revmata eksodou gia ta arxeia ofstream oFoitites; ofstream oMathimata; //revmata eisodou gia ta arxeia ifstream iFoitites; ifstream iMathimata; //ta arxeia char * f ; char * m ; int afkson_arithmos; int menu() { int epilogi; do { cout<<"dwse epilogi "<<endl; cout<<"1. eisagogi"<<endl; cout<<"2. ektuposi"<<endl; cout<<"3. diorthosi"<<endl; cout<<"4. diagrafi"<<endl; cout<<"5. taksinomisi"<<endl; cout<<"6. enimerosi"<<endl; cout<<"7. statistika stoixeia"<<endl; cin>>epilogi; }while(epilogi<1 || epilogi>7); return epilogi; } ostream& operator<<(ofstream& ofs,foititis f) { return ofs<<f.am<<" "<<f.epitheto<<" "<<f.onoma<<" "<<f.dieuthunsi.odos<<" "<<f.dieuthunsi.noumero<<" "<<f.mo<<" "<<f.fail; } void operator>>(foititis f,ifstream& ifs) { ifs>>f.am>>f.epitheto>>f.onoma>>f.dieuthunsi.odos>>f.dieuthunsi.noumero>>f.mo>>f.fail; } void eisagogi() { int epilogi; do{ cout<<"se poio arxeio thes na kaneis eisagogi?"<<endl; cout<<"1=>Foitites.dat \t 2=>Mathimata.dat"<<endl; cin>> epilogi; }while(epilogi<1 || epilogi>2); if(epilogi == 1) { foititis input; input.am[0]='T'; input.am[1]='O'; if(afkson_arithmos<10) input.am[2]=afkson_arithmos; else if(afkson_arithmos<100) { char s[2]; itoa(afkson_arithmos,s,10); input.am[2]=s[0]; input.am[3]=s[1]; } else if(afkson_arithmos<1000) { char s[3]; itoa(afkson_arithmos,s,10); input.am[2]=s[0]; input.am[3]=s[1]; input.am[4]=s[2]; } //telos to aem input.mo=0;//mesos oros 0 input.fail=0;//apotixies 0 cout<<"dwse onoma ";cin>>input.onoma; cout<<"dwse epitheto ";cin>>input.epitheto; cout<<"dwse dietfthinsi ";cin>>input.dieuthunsi.odos; cout<<"dwse arithmo ";cin>>input.dieuthunsi.noumero; foititis backup[afkson_arithmos]; iFoitites.open(f); for(int i=0;i<afkson_arithmos;i++) backup[i]>>iFoitites; iFoitites.close(); oFoitites.open(f);//dimiourgia revmatos for(int i=0;i<afkson_arithmos;i++) oFoitites<<backup[i]; oFoitites<<input;//eggrafi sto arxeio oFoitites.close();//kleisimo revmatos afkson_arithmos++; } else//epilogi==2 { } } void ektuposi() { } void diorthosi() { } void diagrafi() { } void taksinomisi() { } void enimerosi() { } void statistika_stoixeia() { } void checkchoise(int epilogi) { switch (epilogi) { case (1) : eisagogi(); break; case (2) : ektuposi(); break; case (3) : diorthosi(); break; case (4) : diagrafi(); break; case (5) : taksinomisi(); break; case (6) : enimerosi(); break; case (7) : statistika_stoixeia(); break; } } ότι άλλο θες το ζητάς, αλλά προτιμώ να το λύσεις μόνος σου πιστεύω ότι σου έδωσα αρκετά βήματα
Επισκέπτης Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 @gtroza α, εγώ νόμιζα ότι ο χαρακτήρας στο τέλος ήταν κάτι σαν ανεπίσημη υπογραφή... Οπότε, όντας θρήσκο παιδί(!), διάλεξα το σύμβολο που χρησιμοποιεί ο δεσπότης... (αλλά μπορείς να το ερμηνεύσεις και σαν το Χ του αγράμματου-σκλάβου (εξαρτάται αν έχεις καταλάβει τι βαθμό σκοταδισμού έχει παιχτεί...πρόσφατο: ο μηχανισμός των Αντικυθήρων υλοποιημένο σε lego)) και για να μην αφήσω τον Δημήτρη παραπονεμένο: του δίνω ένα "αγκίστρι": > read_from_file(char *filename) { // FILE pointer FILE *input_file; //allocate memory for lines to be read from file - LINE_MAX is a constant (use #define) char *string = (char *)malloc(sizeof(char)*LINE_MAX); // open file in read mode input_file = fopen(filename, "r"); if(input_file == NULL) perror("Error opening file"); else { //start importing data while(!feof(input_file)){ // until the end of file fgets(string, LINE_MAX, input_file); // read line printf("%s", string); //print line } } fclose(input_file); } έτσι διαβάζεις από αρχείο... Υ.Γ. και επειδή το αρχείο είναι .dat, πολύ πιθανό να εννοεί binary file, οπότε θα πρέπει να το ψάξεις πως να το ανοίξεις ( ενδεικτική πηγή: http://www.cprogramming.com/tutorial/cfileio.html ) edit: typo
gtroza Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 @gtrozaα, εγώ νόμιζα ότι ο χαρακτήρας στο τέλος ήταν κάτι σαν ανεπίσημη υπογραφή... Οπότε, όντας θρήσκο παιδί(!), διάλεξα το σύμβολο που χρησιμοποιεί ο δεσπότης... (αλλά μπορείς να το ερμηνεύσεις και σαν το Χ του αγράμματου-σκλάβου (εξαρτάται αν έχεις καταλάβει για τι βαθμό σκοταδισμού έχει παιχτεί...πρόσφατο: ο μηχανισμός των Αντικυθήρων υλοποιημένο σε lego*)) και για να μην αφήσω τον Δημήτρη παραπονεμένο: του δίνω ένα "αγκίστρι": τώρα είστε στο δρόμο του θεού ! αν εξηγήσεις και γιατί δένουμε κατάλληλα το αγκίστρι, ώστε να μή σου πεί, ρε μάστορα λύθηκε γμτ ! μόλις έβγαλα κάτι "ευαγγέλια" αλλά είναι στα αραμαϊκά και δεν γνωρίζω! θα έκανα "κατήχηση" αλλά με σώσατε *έτσι προγραμματίζω εγώ με tcl/tk
Επισκέπτης Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 μου αρέσει το minimal DIY laptop stand! τα βιβλία δεν τα πρόσεξα καν ( )
gtroza Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 για να μην ζεσταίνει το τραπέζι (καπλαμάς) 16mm novopan+περιοδικό+ξυλάκι πίσω για κλίση και εξαερισμό-αισθητή διαφορά θα τα προσέξει ο V.I.S. MeTaXaS4 26-10 28-10 και 4-8 έδωσαν τη λύση ! :mrgreen: .
gtroza Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 είχα ρωτήσει αν η εγγραφή διορθωμένης γραμμής γίνεται μέσω πίνακα δλδ εγγραφή μόνο της γραμμής ή όλου του αρχείου ; .
MeTaXaS4 Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 είχα ρωτήσει αν η εγγραφή διορθωμένης γραμμής γίνεται μέσω πίνακα δλδ εγγραφή μόνο της γραμμής ή όλου του αρχείου ; . τι εννοείς;;
Επισκέπτης Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 και για να μην αφήσω τον Δημήτρη παραπονεμένο: του δίνω ένα "αγκίστρι": > read_from_file(char *filename) { // FILE pointer FILE *input_file; //allocate memory for lines to be read from file - LINE_MAX is a constant (use #define) char *string = (char *)malloc(sizeof(char)*LINE_MAX); // open file in read mode input_file = fopen(filename, "r"); if(input_file == NULL) perror("Error opening file"); else { //start importing data while(!feof(input_file)){ // until the end of file fgets(string, LINE_MAX, input_file); // read line printf("%s", string); //print line } } fclose(input_file); } έτσι διαβάζεις από αρχείο... Αυτός ο τρόπος ανάγνωσης του αρχείου είναι λανθασμένος: δες εδώ
Επισκέπτης Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 δεν είναι απίθανο να είναι λάθος το συγκεκριμένο... (written from memory)
karabouzouk... Δημοσ. 14 Δεκεμβρίου 2010 Δημοσ. 14 Δεκεμβρίου 2010 είχα ρωτήσει αν η εγγραφή διορθωμένης γραμμής γίνεται μέσω πίνακα δλδ εγγραφή μόνο της γραμμής ή όλου του αρχείου ; . Εννοείς σε αρχείο .dat ε..? Διορθώνεται και μόνο μια εγγραφη χωρίς να είναι απαραίτητη η χρήση πίνακα.. (αν κατάλαβα τι εννοείς.!)
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.