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

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
[Αρχές Οικονομίας] Να επι...
by _Trob
[Today at 13:28:21]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[Today at 12:13:45]

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

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by George_RT
[Today at 10:22:18]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[Today at 01:56:37]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by nmpampal
[Today at 00:16:23]

Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[June 15, 2025, 20:08:49 pm]

Αντικατάστασης πυκνωτή σε...
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]

Αλέξης Τσίπρας, η επιστρο...
by Yamal
[June 14, 2025, 04:42:23 am]

Έναρξη Δηλώσεων Συμμετοχή...
by IEEE SB
[June 14, 2025, 00:10:19 am]

[Δυναμική Συμπεριφορά ΣΗΕ...
by soko_freta
[June 13, 2025, 01:05:36 am]

[Εφ.Θερμοδυναμική]Παλιά θ...
by Giannis Masterio
[June 12, 2025, 22:30:38 pm]

Paid Internships in a Eur...
by okan
[June 12, 2025, 22:30:02 pm]
Στατιστικά
Members
Total Members: 9959
Latest: valco08
Stats
Total Posts: 1426669
Total Topics: 31711
Online Today: 201
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 56
Guests: 125
Total: 181
JoHn!
georsoti
mpournaz
kraxtopoulos
glavdakis
ioannisdamantis
Nikos_313
billaraspap7
george14
valentini
gkg
ggalamat
johncow
zille
ddantono
genethalsss74
ioannisfa
gp6
iliaspapam
jh13
mariaxalk
manolitsis
Domnious
EiriniGeo
et7gr
kouf
faidonchatz
anna.ts
cpapadd
mikrosdia
vasilis saitis
nikolakys
Antigoni
vaggelisx
Antreas17
Vasilis Koudounis
Konstantinoy
George_RT
DimStyl
adamchatz
AcDimitri
tinidou
chatzisot
apapathe
Mr Watson
panagiwt1s
mmikelo
trelogauros7
Dimosthenis
geo66
Bill g
theodorevic
Εμφάνιση

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

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) > [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
0 Members and 1 Guest are viewing this topic.
Pages: [1] Go Down Print
Author Topic: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)  (Read 1899 times)
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


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


View Profile WWW
[Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« on: April 13, 2016, 19:32:57 pm »

Άσκηση 7


Σημείωση για την παράδοση
Στο elearning θα ανεβάσετε σε ένα αρχείο τις απαντήσεις σας
Η ονομασία του αρχείου θα έχει ως εξής:
Α7-Αριθμος Μητρώου π.χ Α7-9000


Γράψτε ένα πρόγραμμα το οποίο διαβάζει χαρακτήρες από την είσοδό του μέχρι o χρήστης να δώσει το χαρακτήρα θαυμαστικό. Στη συνέχεια να τυπώνει ένα ραβδόγραμμα με αστεράκια για κάθε έναν από τους εμφανιζόμενους χαρακτήρες. Επιπλέον για τους χαρακτήρες που εμφανίζονται στην είσοδο του προγράμματος τις μέγιστες και τις ελάχιστες φορές εμφανίζει τον αντίστοιχο χαρακτήρα καθώς και τον αριθμό των φορών που εμφανίστηκε.

Παράδειγμα εξόδου:

a ********

b ****

e ************

z *

Most frequent: e; 12 time(s).

Least frequent: z; 1 time(s).


Λήξη υποβολής εμπρόθεσμων εργασιών: Τρίτη, 19 Απρίλιος 2016, 12:00 πμ

« Last Edit: May 15, 2016, 18:31:39 pm by Apostolof » Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
potirikolonato
Καταξιωμένος/Καταξιωμένη
***
Posts: 278



View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #1 on: April 15, 2016, 16:36:12 pm »

Παραθέτω μέρος του προγράμματος που αντιμετωπίζω πρόβλημα.
Code:
int main() {
char letter;
int table[26]={0};
int i,j,v_min,v_max,f_min,f_max;



do {
printf("Give me a letter. If you want to stop give me (!)\n");
scanf ("%c",&letter);
//Μετατροπή κεφαλαίου σε μικρού.
if (letter>= 'A' || letter<= 'Z'){
letter=tolower(letter);

}

/*Το πρόγραμμα μας θέλούμε να κάνει καταμέτρηση μόνο για τα γράμματα απο a εως z για
και να ανεβάζει την τιμή της αντίστοιχης θέσης στον πίνακα. Το letter-97 προκύπτει
γιατί η μεταβλητη letter αν και δηλώνεται ως char στην ουσία είναι ένας int με τίμη
την τίμη ASCII του αντιστοιχου γράμματος.Επίσης a-z αντιστοιχει στους αριθμους 97-122*/
 
if(letter>='a'|| letter<='z'){
table[letter-97]++;

}


}
return 0;
}
Καθως ζητάω γράμματα απο τον χρήστη μου εμφανίζει για κάθε επόμενο γράμμα 2 φορες αυτην την printf("Give me a letter. If you want to stop give me (!)\n");. Ξέρετε τι παίζει;;
Logged
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


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


View Profile WWW
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #2 on: April 15, 2016, 17:05:02 pm »

Η εύκολη λύση είναι να αφήσεις ένα κενό πριν το % μέσα στο scanf, δλδ να κάνεις:
Code:
scanf (" %c",&letter);

Αλλιώς θες να κάνεις flush (καθαρίσεις) το input buffer σου χρησιμοποιώντας το:
Code:
fflush(stdin);
ακριβώς κάτω από το scanf.
Περισσότερα εδώ: http://stackoverflow.com/questions/7898215/how-to-clear-input-buffer-in-c
*όπως θα δεις και στο link το fflush(stdin); δε λειτουργεί πάντα. Πάντως στο κωδικά σου θα λειτουργήσει.
« Last Edit: April 15, 2016, 17:45:59 pm by Apostolof » Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
potirikolonato
Καταξιωμένος/Καταξιωμένη
***
Posts: 278



View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #3 on: April 15, 2016, 17:28:54 pm »

Γιατί συμβαίνει αυτό; Θενκς btw
Logged
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


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


View Profile WWW
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #4 on: April 15, 2016, 17:42:58 pm »

Από το link που πόσταρα:
Quote
...when the user presses Enter, it will leave in the input buffer 2 character: Enter key (ASCII code 13) and \n (ASCII code 10). Therefore, at Line 2 (σε εσένα στο line 13 στο scanf), it will read the \n and will not wait for the user to enter a character.

Πχ. γίνετε η πρώτη επανάληψη και δίνεις είσοδο a. Στο input buffer πάνε το a, το "enter key" και το "\n". Εκτελούνται όλες οι άλλες εντολές και ξαναφτάνει το πρόγραμμα στη γραμμή 12 (printf) σου ζητάει είσοδο και στη 13 στο scanf (δεύτερη επανάληψη) περιμένει μια είσοδο. Από τη προηγούμενη επανάληψη θα έχει μείνει μέσα το "\n" το οποίο στο πρόγραμμά σου θα θεωρηθεί είσοδος. Αν εμφανίσεις και όλα τα "\n" στο τέλος θα δεις ότι είναι ίσα με το συνολικό αριθμό γραμμάτων που έδωσες**.

**στον αρχικό κώδικα που πόσταρες, όχι εφόσον βάλεις το fflush(stdin);
« Last Edit: April 15, 2016, 17:47:23 pm by Apostolof » Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
yorgos_78
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 681


Fear, Emptiness, Despair... (Napalm Death, 1994)


View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #5 on: April 15, 2016, 17:57:54 pm »

Βασικά έπεσες με τη μία στην περίπτωση. Το πρόβλημα αυτό εμφανίζεται όταν πραγματοποιείς scanf με char (δλδ "%c") μέσα σε κάποιου είδους loop. Χοντρικά, η scanf όταν πάει να διαβάσει characters διαβάζει ο,τι υπάρχει σε ένα free-text buffer. Το new line όμως - σε ο,τι αφορά την scanf - είναι ΚΑΙ αυτό ένας χαρακτήρας! Υποθέτωντας FIFO-buffer λοιπόν, δλδ οτι ο,τι μπει πρώτο θα βγει και πρώτο, η ΕΠΟΜΕΝΗ scanf του loop θα βρει σαν ΠΡΩΤΟ χαρακτήρα μέσα στο buffer το new line του προηγούμενου loop (για το λόγο αυτό το πρόβλημα εμφανίζεται αφότου έχει τρέξει πρώτη φορά το loop. Καλό είναι λοιπόν σε κάθε κύκλο να γίνεται flush το buffer. Εναλλακτικά βάζεις ένα white space - όπως είπε ο φίλος πιο πάνω - πριν το %c για να κάνει consume αυτόν ακριβώς το χαρακτήρα (αν το buffer δεν έχει τίποτα τότε δεν θα υπάρχει και τίποτα για να γίνει consume οπότε κανένα πρόβλημα).
Logged

We were somewhere around Barstow on the edge of the desert, when the drugs began to take hold...
potirikolonato
Καταξιωμένος/Καταξιωμένη
***
Posts: 278



View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #6 on: April 15, 2016, 19:01:06 pm »

Ευχαριστώ πολύ παιδιά, πολύ ψιλά γράμματα αλλά σημαντικά!!
Logged
leukosaraphs!
Veteran
Καταστραμμένος
******
Gender: Male
Posts: 9596


εφακ


View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #7 on: April 15, 2016, 21:31:34 pm »

Ειχα το ιδιο προβλημα με την εμφανιση της printf κι ετσι απλα εβγαλα την printf εξω απο την do..while

Ωστοσο ,δν μου εμφανιζοταν μονο η printf , αλλα μπροστα απο αυτην 2 φορες το γραμμα που πληκτρολογουσα
Καπως ετσι:

c

cc Type a character or exclamation mark to finish
cc Type a character or exclamation mark to finish

d

dd Type a character or exclamation mark to finish
dd Type a character or exclamation mark to finish

κοκ.
βεβαια μολις εβγαλα την printf απο εξω ολα διορθωθηκαν, αλλα ξερεις κανεις τον λογο που εμφανιζονταν τα 2 γραμματα?
Logged


-What  do you get  when you cross  an insomniac, an agnostic and a dyslexic?
-Someone who stays up all night wondering if there is a Dog.

You can't spell fart without art

Quote from: Xplicit on June 17, 2018, 20:03:39 pm
Συνεχίστηκε η παράδοση που θέλει τους Γερμανούς να φεύγουν ηττημένοι από τη Μόσχα  Grin
Apostolof
WebSlave
Αbsolute ΤΗΜΜΥ.gr
***
Gender: Male
Posts: 2660


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


View Profile WWW
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #8 on: April 15, 2016, 23:34:17 pm »

Χωρίς κώδικα δύσκολο.
Logged

All these moments will be lost in time, like tears in rain.
In the meanwhile, life goal.
leukosaraphs!
Veteran
Καταστραμμένος
******
Gender: Male
Posts: 9596


εφακ


View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #9 on: April 15, 2016, 23:38:22 pm »

Quote from: Apostolof on April 15, 2016, 23:34:17 pm
Χωρίς κώδικα δύσκολο.

Απλα ολοκληρωσα την ασκηση , κι ετσι δεν μου βρισκεται ευκαιρο   Undecided Undecided
Logged


-What  do you get  when you cross  an insomniac, an agnostic and a dyslexic?
-Someone who stays up all night wondering if there is a Dog.

You can't spell fart without art

Quote from: Xplicit on June 17, 2018, 20:03:39 pm
Συνεχίστηκε η παράδοση που θέλει τους Γερμανούς να φεύγουν ηττημένοι από τη Μόσχα  Grin
potirikolonato
Καταξιωμένος/Καταξιωμένη
***
Posts: 278



View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #10 on: April 16, 2016, 01:07:11 am »

Quote from: leukosaraphs! on April 15, 2016, 23:38:22 pm
Απλα ολοκληρωσα την ασκηση , κι ετσι δεν μου βρισκεται ευκαιρο   Undecided Undecided

μπορείς απλά να μπεις στο elearning στην ασκηση 7 που κατεθεσες και να κατεβασεις το αρχειο για να βρεις τον κωδικα  Wink
Logged
leukosaraphs!
Veteran
Καταστραμμένος
******
Gender: Male
Posts: 9596


εφακ


View Profile
Re: [Δομημένος Προγραμματισμός] Άσκηση 7 (Hμ/νία λήξης: 19/4/2016)
« Reply #11 on: April 16, 2016, 12:08:42 pm »

Quote from: Assassin on April 16, 2016, 01:07:11 am

μπορείς απλά να μπεις στο elearning στην ασκηση 7 που κατεθεσες και να κατεβασεις το αρχειο για να βρεις τον κωδικα  Wink

Δικο μου λαθος , εννοουσα οτι επειδη βρηκα πως διορθωνεται , αλλαξα το προγραμμα μου και ετσι δν μπορω να παραθεσω τον ιδιο ακριβως κωδικα ετσι ωστε να σασ βοηθησω (Λογικα ηταν καποια λεπτομερεια , καποιας περιπτωσης)
Logged


-What  do you get  when you cross  an insomniac, an agnostic and a dyslexic?
-Someone who stays up all night wondering if there is a Dog.

You can't spell fart without art

Quote from: Xplicit on June 17, 2018, 20:03:39 pm
Συνεχίστηκε η παράδοση που θέλει τους Γερμανούς να φεύγουν ηττημένοι από τη Μόσχα  Grin
Pages: [1] Go Up Print
Jump to:  

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