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

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Άδεια ασκήσεως επαγγέλματ...
by The Web
[Today at 13:25:49]

[Τομέας Ηλεκτρονικής] Μαθ...
by Nikos_313
[Today at 09:51:26]

[Τομέας Ενέργειας] Μαθήμα...
by Nikos_313
[Today at 01:40:22]

Οι μπράβοι του πρύτανη
by Διάλεξις
[Today at 01:30:18]

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

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by Διάλεξις
[Today at 00:59:05]

Ηλεκτρομηχανολογικές Μελέ...
by inverter
[August 01, 2025, 20:35:12 pm]

Νέα Δημοκρατία (and Co. I...
by Katarameno
[August 01, 2025, 15:13:09 pm]

Πρόγραμμα Σπουδών Ακαδημα...
by PolarBear
[August 01, 2025, 15:03:05 pm]

Aναζωπύρωση των εχθροπραξ...
by Katarameno
[July 31, 2025, 21:15:48 pm]

Καμμένα...!!
by Godat
[July 31, 2025, 21:07:58 pm]

[ΑΝΤΙΣΤΑΣΗ] Ανακοίνωση γι...
by Katarameno
[July 31, 2025, 20:31:30 pm]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[July 31, 2025, 15:33:28 pm]

ΤΗΜΜΥ-Σκάκι
by L
[July 31, 2025, 13:24:56 pm]

Τι ακούτε αυτήν τη στιγμή...
by Giopan
[July 30, 2025, 17:07:32 pm]

Αποτελέσματα Εξεταστικής ...
by Mr Watson
[July 30, 2025, 14:19:11 pm]

Τα παράσιτα ανάμεσά μας
by Katarameno
[July 30, 2025, 13:47:28 pm]

Ρώτα κάτι τον επόμενο
by Giopan
[July 29, 2025, 16:04:23 pm]

Πότε θα βγει το μάθημα; -...
by chatzikys
[July 29, 2025, 13:52:51 pm]

[ΣΗΕ ΙΙ] Γενικές απορίες ...
by Διάλεξις
[July 29, 2025, 01:00:00 am]
Στατιστικά
Members
Total Members: 9988
Latest: kyrlef
Stats
Total Posts: 1427640
Total Topics: 31739
Online Today: 142
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 20
Guests: 97
Total: 117
elio
George_RT
Pakapis5
Captain
stefanos hios
Kwtininatheod
Thanasiscon1
nmpampal
gpr000
nikol michalou
mprizakias
Xxanth
abunchofcells
makato
ioannisfa
JTS
Εμφάνιση

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

Νέα!
Πληροφορίες Καθηγητών
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 1ο Εξάμηνο > Δομημένος Προγραμματισμός (Moderators: Tasos Bot, tzortzis, Nekt) > [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
0 Members and 1 Guest are viewing this topic.
Pages: 1 ... 44 45 [46] 47 48 Go Down Print
Author Topic: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα  (Read 75999 times)
duffy
Ανερχόμενος/Ανερχόμενη
**
Gender: Male
Posts: 54


πού πάμε ρε, πού πάμε;;


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #675 on: September 22, 2010, 00:43:14 am »

Οταν πηγα να δω το γραπτο μου μου εδειξε αυτην σαν σωστη απαντηση, αρα για κορτεσιανη λογικη αυτή είναι...
(στο δικο μου compiler βγαζει αλλο)
Logged

"Too bad that all the people who know how to run this country are busy driving taxis and cutting hair."
George Burns
cyb3rb0ss
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3348


0 ΜΗΔΕΝ ZERO NULL CERO


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #676 on: September 22, 2010, 00:51:43 am »

Quote from: duffy on September 22, 2010, 00:43:14 am
Οταν πηγα να δω το γραπτο μου μου εδειξε αυτην σαν σωστη απαντηση, αρα για κορτεσιανη λογικη αυτή είναι...
(στο δικο μου compiler βγαζει αλλο)

Eγώ βασικά ήμουν στην άλλη ομάδα... και είχε ένα παρόμοιο παράδειγμα ας πούμε... και παρόλο που ακολούθησα μια τέτοια λογική κατι μου πηρε λάθος... anyway τετοια ωρα τετοια λόγια...
Logged

Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher. ~Albert Einstein

Never argue with stupid people,
the will drag you down to their level
and then beat you with experience.
~Mark Twain

Απλά 0! Fuck Yeah!

LinkedIn
Yuri
Νεούλης/Νεούλα
*
Posts: 34


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #677 on: September 22, 2010, 00:55:04 am »

Οι τιμες του n-z είναι σωστές (1=>2=>3=>0). Το θέμα είναι η δήλωση p="ABCDE"; και η διαχείριση της από τον εξαιρετικό αυτο αλγόριθμο ανάλογα με τον compiler. Βεβαίως, ισχύει πάντα το αξίωμα: (κορτεσιανός τρόπος σκέψης != κοινή λογική).
Logged
afroditeschild
Καταξιωμένος/Καταξιωμένη
***
Posts: 255



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #678 on: September 22, 2010, 15:58:55 pm »

θεμα A τα νουμερα στο τελευταιο 1 4     ε?ε?ε?
                                                 6 15
Logged
cyb3rb0ss
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3348


0 ΜΗΔΕΝ ZERO NULL CERO


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/&#
« Reply #679 on: September 22, 2010, 16:01:50 pm »

Αν και μυρίζομαι ότι θα έχουμε διάφορες απαντήσεις... και αυτός που θα έχει την λιγότερη κοινή απάντηση θα είναι πάλι σωστός...  Grin Grin Grin , ας πω τι εκτύπωσα εγώ απο την ομάδα Β στο θέμα 3.

1
3
5
8

Η if(!n) ουσιαστικά ισχύει μόνο στην πρώτη περίπτωση οπου n=0.
Έτσι δίνω και μια τιμή στην m (=0) για να ξεκινήσω το prog. Στη συνέχεια στην switch πήγα στο default αφού δεν ίσχυε κανένα από τα cases... και είχα m=1 απο το m++ αφού το m%5 μού έβγαζε 0.

Μετά για ι=n=1,2,3 έβγαινε κάποιο απο τα cases της switch και πουθενά δεν ίσχυε η if.
Εκεί που ήταν (κ>3) με k=3 απλά εβγαινε false αν κατάλαβα καλά και έπαιρνες =0. Άρα m=(k>3) + 3 => m=3.

Eκεί βέβαια που είχε ενα break παρακάτω στα cases... με μπερδεψε... αλλά το αμέλησα και έκανα return m απλά...

Για αυτό έβγαλα και τις τιμές που έχω παραπάνω...
Για πείτε εσεις... μπορεί να το έχω και όλο λάθος... με κάθε επιφύλαξη...
« Last Edit: September 22, 2010, 16:09:35 pm by cyb3rb0ss » Logged

Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher. ~Albert Einstein

Never argue with stupid people,
the will drag you down to their level
and then beat you with experience.
~Mark Twain

Απλά 0! Fuck Yeah!

LinkedIn
afroditeschild
Καταξιωμένος/Καταξιωμένη
***
Posts: 255



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #680 on: September 22, 2010, 16:06:50 pm »

ελα καποιος απο την ομαδα α Grin
Logged
afroditeschild
Καταξιωμένος/Καταξιωμένη
***
Posts: 255



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #681 on: September 22, 2010, 16:08:20 pm »

ρωταω ακομη f(!n)shmainei oti gia na mpei sthn if tha prepei na einai to n-=0?????
Logged
pepe
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 596



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/&#
« Reply #682 on: September 22, 2010, 16:14:13 pm »

Quote from: cyb3rb0ss on September 22, 2010, 16:01:50 pm
Αν και μυρίζομαι ότι θα έχουμε διάφορες απαντήσεις... και αυτός που θα έχει την λιγότερη κοινή απάντηση θα είναι πάλι σωστός...  Grin Grin Grin , ας πω τι εκτύπωσα εγώ απο την ομάδα Β στο θέμα 3.

1
3
5
8

Η if(!n) ουσιαστικά ισχύει μόνο στην πρώτη περίπτωση οπου n=0.
Έτσι δίνω και μια τιμή στην m (=0) για να ξεκινήσω το prog. Στη συνέχεια στην switch πήγα στο default αφού δεν ίσχυε κανένα από τα cases... και είχα m=1 απο το m++ αφού το m%5 μού έβγαζε 0.

Μετά για ι=n=1,2,3 έβγαινε κάποιο απο τα cases της switch και πουθενά δεν ίσχυε η if.
Εκεί που ήταν (κ>3) με k=3 απλά εβγαινε false αν κατάλαβα καλά και έπαιρνες =0. Άρα m=(k>3) + 3 => m=3.

Eκεί βέβαια που είχε ενα break παρακάτω στα cases... με μπερδεψε... αλλά το αμέλησα και έκανα return m απλά...

Για αυτό έβγαλα και τις τιμές που έχω παραπάνω...
Για πείτε εσεις... μπορεί να το έχω και όλο λάθος... με κάθε επιφύλαξη...
Κι εγώ έτσι το έκανα. Μακάρι να 'ναι αυτό...

Quote from: afroditeschild on September 22, 2010, 16:08:20 pm
ρωταω ακομη f(!n)shmainei oti gia na mpei sthn if tha prepei na einai to n-=0?????
Το (!n) για να είναι true και να μπαίνει πρέπει το n να είναι 0. Σε κάθε άλλη περίπτωση είναι false, οπότε δεν μπαίνει.
Logged

"Τι νόημα έχει τ' όνειρο χωρίς μικρές νοθείες..."
Yuri
Νεούλης/Νεούλα
*
Posts: 34


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #683 on: September 22, 2010, 16:55:27 pm »

Νομίζω ότι το 3 στην ομάδα Β είναι:
1
3
5
10

Εφόσον δεν υπήρχε το break προχωράει στο επόμενο και γίνεται m+=2 => 8+2=10. Μετά επιστρέφει το 10 και το τυπώνει.
Από σημειώσεις στο ethmmy (σελίδα 22): Η εντολή default είναι προαιρετική και θα εκτελεστεί, εάν η τιμή της έκφρασης δεν είναι ίση με καμία από τις σταθερές που περιέχονται στη λίστα της switch. Αν παραληφθεί η εντολή break (η εντολή break θα εξετασθεί στη συνέχεια), θα εκτελεστούν όλες οι ομάδες εντολών που ακολουθούν την περίπτωση της σταθεράς η οποία είναι ίση με την τιμή της έκφρασης έως ότου βρεθεί μία εντολή break ή ο έλεγχος φτάσει στο τέλος της switch.
Logged
pepe
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 596



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #684 on: September 22, 2010, 17:00:31 pm »

Quote from: Yuri on September 22, 2010, 16:55:27 pm
Νομίζω ότι το 3 στην ομάδα Β είναι:
1
3
5
10

Εφόσον δεν υπήρχε το break προχωράει στο επόμενο και γίνεται m+=2 => 8+2=10. Μετά επιστρέφει το 10 και το τυπώνει.
Από σημειώσεις στο ethmmy (σελίδα 22): Η εντολή default είναι προαιρετική και θα εκτελεστεί, εάν η τιμή της έκφρασης δεν είναι ίση με καμία από τις σταθερές που περιέχονται στη λίστα της switch. Αν παραληφθεί η εντολή break (η εντολή break θα εξετασθεί στη συνέχεια), θα εκτελεστούν όλες οι ομάδες εντολών που ακολουθούν την περίπτωση της σταθεράς η οποία είναι ίση με την τιμή της έκφρασης έως ότου βρεθεί μία εντολή break ή ο έλεγχος φτάσει στο τέλος της switch.
Φτου γμτ και το σκέφτηκα να το συνεχίσω...Ναι, μάλλον όπως λέει ο Yuri θα είναι.
Τον έχω ικανό να κόψει και τις 2 μονάδες...
Logged

"Τι νόημα έχει τ' όνειρο χωρίς μικρές νοθείες..."
cyb3rb0ss
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3348


0 ΜΗΔΕΝ ZERO NULL CERO


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #685 on: September 22, 2010, 17:04:58 pm »

όχι ρε π#$@#η...
Με έβαλε σε υποψίες αυτή η κωλοbreak... αλλά πραγματικά είπα απλά να κάνω το προφανές... για να μην εκπλαγώ δυσάρεστα μετά...

Θέλω να πιστευω οτι ΔΕΝ θα κοπούν και οι 2 μονάδες. Θα είναι τρομερά άδικο. Κανονικά πρέπει να κοπεί το 0,5.
Logged

Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher. ~Albert Einstein

Never argue with stupid people,
the will drag you down to their level
and then beat you with experience.
~Mark Twain

Απλά 0! Fuck Yeah!

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



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #686 on: September 22, 2010, 17:14:01 pm »

Quote from: afroditeschild on September 22, 2010, 16:06:50 pm
ελα καποιος απο την ομαδα α Grin
αν σου πω πως και γω τόσο το βρήκα θα με πιστέψεις...??? Cheesy Cheesy Grin Grin Grin Tongue Tongue
Logged

Math gives me every reason to hope that  every problem  has a  solution .

https://www.youtube.com/playlist?list=PLnYpEZe1uPblSaPDVAUgxbmdT214WlRTq
cyb3rb0ss
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3348


0 ΜΗΔΕΝ ZERO NULL CERO


View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #687 on: September 22, 2010, 17:22:21 pm »

Quote from: Yuri on September 22, 2010, 16:55:27 pm
Νομίζω ότι το 3 στην ομάδα Β είναι:
1
3
5
10

Εφόσον δεν υπήρχε το break προχωράει στο επόμενο και γίνεται m+=2 => 8+2=10. Μετά επιστρέφει το 10 και το τυπώνει.
Από σημειώσεις στο ethmmy (σελίδα 22): Η εντολή default είναι προαιρετική και θα εκτελεστεί, εάν η τιμή της έκφρασης δεν είναι ίση με καμία από τις σταθερές που περιέχονται στη λίστα της switch. Αν παραληφθεί η εντολή break (η εντολή break θα εξετασθεί στη συνέχεια), θα εκτελεστούν όλες οι ομάδες εντολών που ακολουθούν την περίπτωση της σταθεράς η οποία είναι ίση με την τιμή της έκφρασης έως ότου βρεθεί μία εντολή break ή ο έλεγχος φτάσει στο τέλος της switch.

Για να είμαι ειλικρινής... διάβασα τώρα τη θεωρία... και πάλι δεν κατάλαβα τίποτα...

Code:
3.2  Η εντολή switch
Η δο¬μή if-else-if σε ο¬ρι¬σμέ¬νες πε¬ρι¬πτώ¬σεις πολ¬λα¬πλών ε¬λέγ¬χων μπο¬ρεί να εί-ναι αρ¬κε¬τά πο¬λύ¬πλο¬κη και δύ¬σχρη¬στη. Γι' αυ¬τούς τους λό¬γους η C δί¬νει μια ε¬ναλ¬λα-κτι¬κή δυ¬να¬τό¬τη¬τα πολ¬λα¬πλών ε¬λέγ¬χων με τη χρή¬ση της εντο¬λής switch. Στην πε¬ρί-πτω¬ση αυ¬τή η τι¬μή μιας έκ¬φρα¬σης συ¬γκρί¬νε¬ται διαδο¬χι¬κά με μί¬α λί¬στα α¬πό στα¬θε¬ρές τύ¬που int ή char. Ε¬άν η τι¬μή αυτή βρε¬θεί ί¬ση με κά¬ποια τι¬μή της λί¬στας, τό¬τε ε¬κτε¬λεί-ται μια συ¬γκε¬κρι¬μένη ο¬μά¬δα ε¬ντο¬λών. Η γε¬νι¬κή μορ¬φή της ε¬ντο¬λής switch εί¬ναι:
switch(έκ¬φρα¬ση) {
    case στα¬θε¬ρά1:
         ο¬μά¬δα ε¬ντο¬λών
         break;
    case στα¬θε¬ρά2:
         ο¬μά¬δα ε¬ντο¬λών
         break;
    .
    .
    .
    default:
         ο¬μά¬δα ε¬ντο¬λών
}

Η ε¬ντο¬λή default εί¬ναι προ¬αι¬ρε¬τι¬κή και θα ε¬κτε¬λε¬στεί, ε¬άν η τι¬μή της έκ¬φρα¬σης δεν εί¬ναι ί¬ση με κα¬μί¬α α¬πό τις στα¬θε¬ρές που πε¬ριέχο¬νται στη λί¬στα της switch. Αν πα¬ρα¬λη¬φθεί η ε¬ντο¬λή break (η ε¬ντο¬λή break θα ε¬ξε¬τα¬σθεί στη συ¬νέ¬χεια), θα ε¬κτε¬λε-στούν ό¬λες οι ο¬μά¬δες ε¬ντο¬λών που ακο¬λου¬θούν την πε¬ρί¬πτω¬ση της στα¬θε¬ράς η ο-ποί¬α εί¬ναι ί¬ση με την τι¬μή της έκφρα¬σης έ¬ως ό¬του βρε¬θεί μί¬α ε¬ντο¬λή break ή ο έ¬λεγ-χος φτά¬σει στο τέ¬λος της switch. Στο πα¬ρά¬δειγ¬μα που α¬κο¬λου¬θεί το πρό¬γραμ¬μα θα ε¬κτυ¬πώ¬σει τα μηνύ¬μα¬τα
case 1 k = 1
case 2 k = 1
αν  k = 1. Το μή¬νυ¬μα
case 2 k = 2
αν k = 2. Το μή¬νυ¬μα
case 3 k = 3
αν k = 3. Και το μή¬νυ¬μα
default k = 4
αν k = 4. 
Πα¬ρά¬δειγ¬μα
void main()
{  int k;
   scanf("%d",&k);
   switch(k) {
       case 1:
           printf("case 1 k = %d\n",k);
       case 2:
           printf("case 2 k = %d\n",k);
           break;
       case 3:
           printf("case 3 k = %d\n",k);
           break;
       default:
           printf("default k = %d\n",k);
   }
}
Logged

Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher. ~Albert Einstein

Never argue with stupid people,
the will drag you down to their level
and then beat you with experience.
~Mark Twain

Απλά 0! Fuck Yeah!

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



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/&#
« Reply #688 on: September 22, 2010, 17:29:38 pm »

Quote from: cyb3rb0ss on September 22, 2010, 17:22:21 pm
Για να είμαι ειλικρινής... διάβασα τώρα τη θεωρία... και πάλι δεν κατάλαβα τίποτα...

Code:
3.2  Η εντολή switch
Η δο¬μή if-else-if σε ο¬ρι¬σμέ¬νες πε¬ρι¬πτώ¬σεις πολ¬λα¬πλών ε¬λέγ¬χων μπο¬ρεί να εί-ναι αρ¬κε¬τά πο¬λύ¬πλο¬κη και δύ¬σχρη¬στη. Γι' αυ¬τούς τους λό¬γους η C δί¬νει μια ε¬ναλ¬λα-κτι¬κή δυ¬να¬τό¬τη¬τα πολ¬λα¬πλών ε¬λέγ¬χων με τη χρή¬ση της εντο¬λής switch. Στην πε¬ρί-πτω¬ση αυ¬τή η τι¬μή μιας έκ¬φρα¬σης συ¬γκρί¬νε¬ται διαδο¬χι¬κά με μί¬α λί¬στα α¬πό στα¬θε¬ρές τύ¬που int ή char. Ε¬άν η τι¬μή αυτή βρε¬θεί ί¬ση με κά¬ποια τι¬μή της λί¬στας, τό¬τε ε¬κτε¬λεί-ται μια συ¬γκε¬κρι¬μένη ο¬μά¬δα ε¬ντο¬λών. Η γε¬νι¬κή μορ¬φή της ε¬ντο¬λής switch εί¬ναι:
switch(έκ¬φρα¬ση) {
    case στα¬θε¬ρά1:
         ο¬μά¬δα ε¬ντο¬λών
         break;
    case στα¬θε¬ρά2:
         ο¬μά¬δα ε¬ντο¬λών
         break;
    .
    .
    .
    default:
         ο¬μά¬δα ε¬ντο¬λών
}

Η ε¬ντο¬λή default εί¬ναι προ¬αι¬ρε¬τι¬κή και θα ε¬κτε¬λε¬στεί, ε¬άν η τι¬μή της έκ¬φρα¬σης δεν εί¬ναι ί¬ση με κα¬μί¬α α¬πό τις στα¬θε¬ρές που πε¬ριέχο¬νται στη λί¬στα της switch. Αν πα¬ρα¬λη¬φθεί η ε¬ντο¬λή break (η ε¬ντο¬λή break θα ε¬ξε¬τα¬σθεί στη συ¬νέ¬χεια), θα ε¬κτε¬λε-στούν ό¬λες οι ο¬μά¬δες ε¬ντο¬λών που ακο¬λου¬θούν την πε¬ρί¬πτω¬ση της στα¬θε¬ράς η ο-ποί¬α εί¬ναι ί¬ση με την τι¬μή της έκφρα¬σης έ¬ως ό¬του βρε¬θεί μί¬α ε¬ντο¬λή break ή ο έ¬λεγ-χος φτά¬σει στο τέ¬λος της switch. Στο πα¬ρά¬δειγ¬μα που α¬κο¬λου¬θεί το πρό¬γραμ¬μα θα ε¬κτυ¬πώ¬σει τα μηνύ¬μα¬τα
case 1 k = 1
case 2 k = 1
αν  k = 1. Το μή¬νυ¬μα
case 2 k = 2
αν k = 2. Το μή¬νυ¬μα
case 3 k = 3
αν k = 3. Και το μή¬νυ¬μα
default k = 4
αν k = 4. 
Πα¬ρά¬δειγ¬μα
void main()
{  int k;
   scanf("%d",&k);
   switch(k) {
       case 1:
           printf("case 1 k = %d\n",k);
       case 2:
           printf("case 2 k = %d\n",k);
           break;
       case 3:
           printf("case 3 k = %d\n",k);
           break;
       default:
           printf("default k = %d\n",k);
   }
}
Το k έχει την τιμή 1. Μπαίνει στη switch και συγκεκριμένα στην case 1. Εκτυπώνει case 1 k = 1 όπως ορίζει η case 1 αλλά επειδή δεν έχει break το πρόγραμμα συνεχίζει και πηγαίνει στην επόμενη case. Το k όμως δεν έχει αλλάξει. Οπότε εκτυπώνει case 2 k=1. Μετά έχει break, άρα τερματίζει.
Για τις περιπτώσεις που k=2,3,4 μπαίνει στις αντίστοιχες cases 2,3,default και εκτυπώνει μια φορά το μήνυμα.
Logged

"Τι νόημα έχει τ' όνειρο χωρίς μικρές νοθείες..."
nikitas350
Καταξιωμένος/Καταξιωμένη
***
Posts: 201



View Profile
Re: [Δομημένος Πρ.] Γενικές απορίες και ανακοινώσεις/επικαιρότητα
« Reply #689 on: September 22, 2010, 18:26:57 pm »

1,3,5,10 FTW  Smiley
Logged
Pages: 1 ... 44 45 [46] 47 48 Go Up Print
Jump to:  

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