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

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Πρακτική Άσκηση ΤΗΜΜΥ 201...
by asemas
[Today at 16:20:27]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[Today at 14:25:00]

Αντικατάστασης πυκνωτή σε...
by george14
[Today at 13:58:20]

Πότε θα βγει το μάθημα; -...
by tzortzis
[Today at 13:19:53]

Αποτελέσματα Εξεταστικής ...
by george14
[Today at 12:08:25]

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

Ισραήλ - Ιράν: Πόλεμος στ...
by okan
[Today at 02:33: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]

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

[Σ.Π.Η.Ε.] Παλιά θέματα -...
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]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[June 14, 2025, 09:58:14 am]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426690
Total Topics: 31710
Online Today: 218
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 88
Guests: 113
Total: 201
Giorgosap
Reidemption
arswagdapro
asimomyti
serafeim
kash_stp
kourkou
ioathemar
Vangelan
kutsukellis
thanaf_231
uesli
Jordann
jkara
Gray139
Fraser
Patroklis
tsaliki
johnmax
thalia fokianou
nikitask
Mr Watson
cheefler
arisap
pave
Pakapis5
Saint_GR
smoul
estoimea
Vasilikikr
Γιώργος Τσανακτσιίης
vaggelis.ntokas
kimxnas
Deviate
abiki
chaniotism
tzesi
nasos
Conriz
ntinara
AlexKyr
sisi
mdimitrig
sotkara
noimaginationforthis
Papalamprous humor
johnnypap
glavdakis
meliou
Lemonia
difis
freedom
et7gr
nikolihss
Louisa
Fotis Roukoutakis
marilita
Yamal
AngelosAthanasiou
aimgk
athena_apo
ekyriakos
tpt
dkoukn
nikpapoutsi
geoarg
kostaspap
iJasonOP
tsakalokagkouras
cpapast
chrysa.tsilika
ELEF
Athinaaz
Konstantina Karamani
antontsiorvas
miltan8
jimalexoud
vasiliki_m
george14
κοτζακ
George_RT
kriton
fpapat
Εμφάνιση

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

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) > [Δομημένος Πρ.] Εργασία G
0 Members and 1 Guest are viewing this topic.
Pages: 1 2 3 [4] 5 Go Down Print
Author Topic: [Δομημένος Πρ.] Εργασία G  (Read 7041 times)
Mr K
Guest
Re: [Δομημένος Πρ.] Εργασία G
« Reply #45 on: June 03, 2012, 10:41:01 am »

Quote from: Carnot on June 03, 2012, 00:18:23 am
Πώς διαβάζουμε από το αρχείο strings ή integers???

με την fread. Πας τον δεικτη στην αρχη του string που θελεις και γραφεις
fread([εδω το ονομα του string(μεταβλητη) στο οποιο θα αποθηκευσεις το string που θα φερεις απο το αρχειο, ΠΡΟΣΟΧΗ να εχει το συμβολο & μπροστα], [εδω το μεγεθος του string με τον τελεστη sizeof μπροστα],[εδω ποσες φορες θελεις να αρχισει να διαβασει και να φερει απο το καναλι ο δεικτης το μεγεθος που εγραψες πριν],[εδω το ονομα του δεικτη])

Συνολο 4 ορισματα..
Logged
thanospr
Καταξιωμένος/Καταξιωμένη
***
Posts: 115


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #46 on: June 03, 2012, 11:16:29 am »

Quote from: Jim D. Ace on June 02, 2012, 17:54:36 pm
να ρωτησω κατι οταν περναμε το string στο αρχειο πρεπει να περναμε και την τιμη null που ειναι στο τελος ή οχι;

Αν το κανεις με fputs αυτη η συνάρτηση στέλνει το string στο αρχείο χωρις το \0.Μετα ομως θα πρεπει στην fgets να βαλεις ως δευτερο ορισμα τα bytes που θελεις να περασεις +1 για να βαλει μονο του το \0.Δηλαδή στην συγκεκριμενη περιπτωση θα εχεις εναν char num[8]; και θα στειλει η fputs τα 7 bytes ενω στην fgets θα βαλεις σαν ορισμα να διαβασει 8 bytes και αυτην θα διαβασει 7 και στο τελευταιο θα βαλει \0.Οπως θελεις το κανεις αρκει να ξερεις εσυ και να προχωρας την βελονα αναλογα.
« Last Edit: June 03, 2012, 11:25:44 am by thanospr » Logged
Jim D. Ace
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3672


Τρελός παπάς με βάφτισε!!!


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #47 on: June 03, 2012, 15:03:25 pm »

ρε παιδια οταν περναω την ωρα στο αρχειο και μετα παω να δω αν οντως εχει περαστει, το ανοιγω και μου βγαζει κατι κινεζικα Undecided Huh

ο κωδικας μου (που εχει σχεση με την εισαγωγη των στοιχειων  του αυτοκινητου)
Code:
char licence_plate[8],*buffer;

    time_t seconds;
    FILE *fp;
    fp=fopen("C:\\Temp\\cars.txt","w+b");
    if(fp==NULL){
        printf("Error opening the file\n");
        return 1;
    }
 
            fgets(licence_plate,8,stdin);
            fwrite(licence_plate,sizeof(licence_plate),1,fp);
            seconds=time(NULL);
            buffer=ctime(&seconds);
            fwrite(buffer,sizeof(buffer),1,fp);



εδω παραθετω αλλο κωδικα που σκεφτηκα για να αντικαταστησω τη ctime αλλα και παλι βγαζω σκατα αποτελεσματα Angry

Code:
char licence_plate[8],buffer[24];

    time_t seconds;
    struct tm *local;
    FILE *fp;
    fp=fopen("C:\\Temp\\cars.txt","w+b");
    if(fp==NULL){
        printf("Error opening the file\n");
        return 1;
    }
 
            fgets(licence_plate,8,stdin);
            fwrite(licence_plate,sizeof(licence_plate),1,fp);
            seconds=time(NULL);
            local=localtime(&seconds);
            strftime(buffer,sizeof(buffer),"%a %b %d %T %Y",local);
            fwrite(buffer,sizeof(buffer),1,fp);

μπορειτε να μου πειτε τη μαλακια κανω;

υγ το αρχειο πρεπει να ειναι .bin ή .txt; 
Logged

People think that I must be a very strange person. This is not correct. I have the heart of a small boy.
It is in a glass jar on my desk.
thanospr
Καταξιωμένος/Καταξιωμένη
***
Posts: 115


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #48 on: June 03, 2012, 15:19:49 pm »

Βαλε fp=fopen("C:/Temp/cars.bin","w+b"); και πες αν εγινε κατι.Ουτε τις πινακιδες δεν σου δείχνει?Τα δευτερολεπτα για να τα δεις πρέπει να τα ανοιξεις με καποιο binary viewer για να δεις ολα πως αποθηκευτηκαν byte byte.Ο Κορτεσης μας ειπε οτι αν τα αποθηκευσεις ως txt επειδη θα αποθηκευει κι αλλα και δεν θα ξερεις που βρισκονται τα δεδομενα σου για να τα ξαναδιαβασεις.
« Last Edit: June 03, 2012, 15:21:54 pm by thanospr » Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #49 on: June 03, 2012, 15:55:07 pm »

Quote from: Jim D. Ace on June 03, 2012, 15:03:25 pm
ρε παιδια οταν περναω την ωρα στο αρχειο και μετα παω να δω αν οντως εχει περαστει, το ανοιγω και μου βγαζει κατι κινεζικα Undecided Huh

μπορειτε να μου πειτε τη μαλακια κανω;

υγ το αρχειο πρεπει να ειναι .bin ή .txt; 

Όταν χειρίζεσαι ένα αρχείο ως δυαδικό(binary) τότε, αν πας να το ανοίξεις ως αρχείο κειμένου (πχ με το notepad), μόνο οι χαρακτήρες θα φαίνονται "κανονικά". Τα νούμερα θα στα δείχνει "κινέζικα". Όταν ένα αρχείο είναι δυαδικό τότε ο μόνος τρόπος για να δεις "ατόφιο" το περιεχόμενο του είναι πχ με την εντολή hexdump (για UNIX περιβάλλοντα) ή με κάποιο πρόγραμμα(που είναι φτιαγμένο ειδικά και για αυτόν τον σκοπό) σε Windows (μπορεί να υπάρχει και στα Windows κάποια εντολή για το cmd που να κάνει την ίδια δουλειά, και να μου διαφεύγει)...

Επίσης, το μόνο πράμα που επηρεάζει η κατάληξη του αρχείου είναι με ποιό πρόγραμμα θα ανοίγουν (by default) τα αρχεία. Αν, για παράδειγμα, αλλάξεις την κατάληξη ενός αρχείου .txt σε .mp3, το μόνο πρόβλημα που θα έχεις είναι ότι αν επιχειρήσεις να ανοίξεις το αρχείο θα ανοίξει (by default πάντα) με τον Windows Media Player. Αν όμως διαλέξεις να ανοίξεις το .mp3 συγκεκριμένα με το notepad, τότε θα σου δείξει κανονικά το περιεχόμενο του...

Ελπίζω να μην σε μπέρδεψα παρπάνω. Αν κάποιο από αυτά που λέω είναι λάθος, ας με διορθώσει κάποιος...
Logged

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


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #50 on: June 03, 2012, 16:16:01 pm »

char pinakida[7]; 
int k=0;
char p[7];   
FILE *fp;
fp=fopen("aytokinhta","w+b");
 
char c;
while (1){
     printf("Pieste to plhktro c gia eisodo neoy aytokinhtoy sto parking\n");
     printf("Pieste to plhktro d gia eksodo aytokinhtoy apo to parking\n");
     printf("Pieste allo plhktro  gia na termatistei h eisodos kai h eksodos aytokinhtwn\n");
     c=getch();
     if (c=='C' || c=='c'){
               
         printf("Dwse pinakida\n");       
         scanf("%s",&pinakida);
         fwrite(pinakida,sizeof pinakida,1,fp);
         k++;
         } 
     else {       
          break;
          }
    } 
fread(p,7,1,fp);
 
printf(" %s\n",p);

Θέλω να περασω την πρώτη πινακίδα στον πίνακα p και να την εκτυπωσω.Εδώ το p το βγάζει κενό ξέρει κανείς γιατί?
Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #51 on: June 03, 2012, 16:34:00 pm »

Quote from: manos on June 03, 2012, 16:16:01 pm
Θέλω να περασω την πρώτη πινακίδα στον πίνακα p και να την εκτυπωσω.Εδώ το p το βγάζει κενό ξέρει κανείς γιατί?

Μία διόρθωση που θα έκανα είναι να βγάλω το & στην scanf. Δηλαδή:
Code:
scanf("%s",pinakida);
Δοκίμασε το. Δε ξέρω κατά πόσο αυτό θα διορθώσει το πρόβλημα που έχεις Wink

ΥΣ: Μπορείς να χρησιμοποιείς τα κατάλληλα tags όταν θέλεις να γράψεις κώδικα, για να είναι ο κώδικας πιο ευανάγνωστος και copy-friendly...
Logged

Sub-Zero
Guest
Re: [Δομημένος Πρ.] Εργασία G
« Reply #52 on: June 03, 2012, 16:41:34 pm »

Μια ερώτηση παιδιά σχετικά με την έξοδο του αυτοκινήτου...Υποτίθεται ότι με την fread και strcmp θα βρούμε και θα αντικαταστήσουμε τη πινακίδα που έδωσε ο χρήστης, αλλά επειδή και οι χρόνοι είναι καταχωρημένοι δίπλα απ την πιναικίδα πως λέμε στο πρόγραμμα να τους προσπεράσει;
Logged
Niobe
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1853



View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #53 on: June 03, 2012, 18:04:48 pm »

η ctime επιστρεφει τον χρονο ως στρινγκ η ως ιντ?? κοιταξα στο cplusplus αλλα δεν καταλαβαινω σαν τι πρεπει να το δηλωσω..

Υ.Γ. τα στοιχεια καθε αμαξιου τα εχω σε δομη που την περναω στο αρχειο.
Logged

Jim D. Ace
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3672


Τρελός παπάς με βάφτισε!!!


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #54 on: June 03, 2012, 18:35:52 pm »

να ρωτησω κατι πανω στη ctime
αφου μετατρεπει την ωρα στη μορφη Www Mmm dd hh:mm:ss yyyy
πως θα βρω μετα ποσες ωρες εμεινε το αμαξι στο γκαραζ;
πως γινεται να περασω κατευθειαν το αποτελεσμα της time που ειναι αριθμος;
 
επισης μεσα στο αρχειο τα δεδομενα τα θεωρουμε ως ενα 2x2 πινακα
πχ ασδ1234 ωρα
     ηγε5678 ωρα
    ...
ή ως ενα "κατεβατο" απο string;
πχ ασδ1234
     ωρα
     ηγε5678
     ωρα
     ...
« Last Edit: June 03, 2012, 18:44:43 pm by Jim D. Ace » Logged

People think that I must be a very strange person. This is not correct. I have the heart of a small boy.
It is in a glass jar on my desk.
thanospr
Καταξιωμένος/Καταξιωμένη
***
Posts: 115


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #55 on: June 03, 2012, 20:07:51 pm »

Quote from: Jim D. Ace on June 03, 2012, 18:35:52 pm
να ρωτησω κατι πανω στη ctime
αφου μετατρεπει την ωρα στη μορφη Www Mmm dd hh:mm:ss yyyy
πως θα βρω μετα ποσες ωρες εμεινε το αμαξι στο γκαραζ;
πως γινεται να περασω κατευθειαν το αποτελεσμα της time που ειναι αριθμος;
 
επισης μεσα στο αρχειο τα δεδομενα τα θεωρουμε ως ενα 2x2 πινακα
πχ ασδ1234 ωρα
     ηγε5678 ωρα
    ...
ή ως ενα "κατεβατο" απο string;
πχ ασδ1234
     ωρα
     ηγε5678
     ωρα
     ...

FILE *fp;
int seconds;
seconds=time(NULL);
fwrite(&seconds,sizeof seconds,1,fp);
Και μετα την ωρα που ειναι να βγει καλεις ξανα την time με ορισμα NULL την καταχωρεις σε μια αλλη μεταβλητη και τα αφαιρεις.
Logged
Jim D. Ace
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3672


Τρελός παπάς με βάφτισε!!!


View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #56 on: June 03, 2012, 20:09:14 pm »

Quote from: thanospr on June 03, 2012, 20:07:51 pm
Quote from: Jim D. Ace on June 03, 2012, 18:35:52 pm
να ρωτησω κατι πανω στη ctime
αφου μετατρεπει την ωρα στη μορφη Www Mmm dd hh:mm:ss yyyy
πως θα βρω μετα ποσες ωρες εμεινε το αμαξι στο γκαραζ;
πως γινεται να περασω κατευθειαν το αποτελεσμα της time που ειναι αριθμος;
 
επισης μεσα στο αρχειο τα δεδομενα τα θεωρουμε ως ενα 2x2 πινακα
πχ ασδ1234 ωρα
     ηγε5678 ωρα
    ...
ή ως ενα "κατεβατο" απο string;
πχ ασδ1234
     ωρα
     ηγε5678
     ωρα
     ...

FILE *fp;
int seconds;
seconds=time(NULL);
fwrite(&seconds,sizeof seconds,1,fp);
Και μετα την ωρα που ειναι να βγει καλεις ξανα την time με ορισμα NULL την καταχωρεις σε μια αλλη μεταβλητη και τα αφαιρεις.

thanks  Smiley την καταχωρουσα σαν time_t και μετα δεν μπορουσα να την περασω...
Logged

People think that I must be a very strange person. This is not correct. I have the heart of a small boy.
It is in a glass jar on my desk.
Thunderjohn
Νεούλης/Νεούλα
*
Posts: 15



View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #57 on: June 03, 2012, 21:05:45 pm »

Μια ερώτηση για την τελευταία περίπτωση στην έξοδο από την επανάληψη, όταν θα τυπώνουμε τους αριθμούς κυκλοφορίας πειράζει αν θα εμφανίζετε πάνω από 1 φορές ο αριθμός του τελευταίου αυτοκινήτου(εφόσον έχει αντικαταστήσει τις τιμές των αυτοκινήτων που έχουν φύγει)?

Edit: Άκυρο το έφτιαξα ώστε να μην τις εμφανίζει πάνω από 1 φορές. Άν θέλει κανείς λεπτομέριες ας ρωτήσει  Cool
« Last Edit: June 03, 2012, 21:30:08 pm by Thunderjohn » Logged
Locke
Ανερχόμενος/Ανερχόμενη
**
Posts: 77



View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #58 on: June 03, 2012, 22:27:05 pm »

Πώς γίνεται να συγκρίνω την πινακίδα ενός αυτοκινήτου με αυτά που έχω ήδη στο αρχέιο με την strncmp; Πρέπει να μεταφέρω μία μία τις πινακίδες από το αρχείο σε έναν πίνακα και να χρησιμοποιήσω αυτόν για τη σύγκριση; Δεν γίνεται αμέσως από το αρχείο;
Logged
Thunderjohn
Νεούλης/Νεούλα
*
Posts: 15



View Profile
Re: [Δομημένος Πρ.] Εργασία G
« Reply #59 on: June 03, 2012, 22:34:15 pm »

Quote from: Locke on June 03, 2012, 22:27:05 pm
Πώς γίνεται να συγκρίνω την πινακίδα ενός αυτοκινήτου με αυτά που έχω ήδη στο αρχέιο με την strncmp; Πρέπει να μεταφέρω μία μία τις πινακίδες από το αρχείο σε έναν πίνακα και να χρησιμοποιήσω αυτόν για τη σύγκριση; Δεν γίνεται αμέσως από το αρχείο;
Έτσι όπως το είπες, αν και η διαδικασία γίνεται πιο εύκολη με τη χρήση δόμων.
Logged
Pages: 1 2 3 [4] 5 Go Up Print
Jump to:  

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