φιλικη συμβουλη
Συντονιστής: konnn

Qdata έγραψε:
[snip]
Εγώ θέλω να πω:
- Κώδικας: Επιλογή όλων
ΑΝ(η fill ΔΕΝ είναι ίση με 0 ή 1) ΤΌΤΕ τύπωσε "Η τιμή του γεμίσματος πρέπει να είναι μια επιλογή μεταξύ 0 και 1!" και κλείσε το πρόγραμμα.
if ( fill != 0 && fill != 1) {
puts("Η τιμή του γεμίσματος πρέπει να είναι μια επιλογή μεταξύ 0 και 1!");
exit(1);
}

Star_Light έγραψε:Μην βάζεις πολύπλοκες εκφράσεις μέσα στην for σταματίου αν δεν εισαι εξοικιωμένος πρωτα με αλλα πραγματα...
φιλικη συμβουλη

migf1 έγραψε:Qdata έγραψε:
[snip]
Εγώ θέλω να πω:
- Κώδικας: Επιλογή όλων
ΑΝ(η fill ΔΕΝ είναι ίση με 0 ή 1) ΤΌΤΕ τύπωσε "Η τιμή του γεμίσματος πρέπει να είναι μια επιλογή μεταξύ 0 και 1!" και κλείσε το πρόγραμμα.
Δεν διάβασα τον κώδικα, αλλά αν απλά χρειάζεσαι το παραπάνω, ο κώδικας είναι ως εξής:
- Κώδικας: Επιλογή όλων
if ( fill != 0 && fill != 1) {
puts("Η τιμή του γεμίσματος πρέπει να είναι μια επιλογή μεταξύ 0 και 1!");
exit(1);
}

Qdata έγραψε:migf1 έγραψε:Qdata έγραψε:
[snip]
Εγώ θέλω να πω:
- Κώδικας: Επιλογή όλων
ΑΝ(η fill ΔΕΝ είναι ίση με 0 ή 1) ΤΌΤΕ τύπωσε "Η τιμή του γεμίσματος πρέπει να είναι μια επιλογή μεταξύ 0 και 1!" και κλείσε το πρόγραμμα.
Δεν διάβασα τον κώδικα, αλλά αν απλά χρειάζεσαι το παραπάνω, ο κώδικας είναι ως εξής:
- Κώδικας: Επιλογή όλων
if ( fill != 0 && fill != 1) {
puts("Η τιμή του γεμίσματος πρέπει να είναι μια επιλογή μεταξύ 0 και 1!");
exit(1);
}
Ευχαριστώ πολύ!Πρέπει να είμαι πιο προσεκτικός!

stamatiou έγραψε:Star_Light έγραψε:Μην βάζεις πολύπλοκες εκφράσεις μέσα στην for σταματίου αν δεν εισαι εξοικιωμένος πρωτα με αλλα πραγματα...
φιλικη συμβουλη
Δεν τις βάζω εγώ, οι K&R τις βάζουν!
Πάντως το συγκεκυμένο βιβλίο δεν θα το πρότεινα σε κανένα. Σου πετά πράγματα από το 2ο κεφάλαιο τα οποία αναφέρονται και αναλύονται σε περεταίρο κεφάλαια!
#include<stdio.h>
static int arr[] = { 1, 10, 4, 5, 6, 7 };
static int sum;
static const int n = sizeof(arr) / sizeof(arr[0]);
int main()
{
int i;
for (i = 0; i < n; i++)
sum += arr[i];
return 0;
}

Star_Light έγραψε:stamatiou έγραψε:Star_Light έγραψε:Μην βάζεις πολύπλοκες εκφράσεις μέσα στην for σταματίου αν δεν εισαι εξοικιωμένος πρωτα με αλλα πραγματα...
φιλικη συμβουλη
Δεν τις βάζω εγώ, οι K&R τις βάζουν!
Πάντως το συγκεκυμένο βιβλίο δεν θα το πρότεινα σε κανένα. Σου πετά πράγματα από το 2ο κεφάλαιο τα οποία αναφέρονται και αναλύονται σε περεταίρο κεφάλαια!
Πριν κοιταξεις τις περιπλοκες εκφρασεις με την for θα χρησιμοποιησουμε τον κωδικα του παραδειγματος για το memory layout που μου εδωσε ο migf1 στο νημα με τα ασυγχρονα μαθηματα και τα προγραμματα περι C/C++ (ΤΟΥς ΚΩΔικες δηλαδη που βαζει οποιος θελει.)
λοιπον ο κωδικας ειναι ο εξης :
- Κώδικας: Επιλογή όλων
#include<stdio.h>
static int arr[] = { 1, 10, 4, 5, 6, 7 };
static int sum;
static const int n = sizeof(arr) / sizeof(arr[0]);
int main()
{
int i;
for (i = 0; i < n; i++)
sum += arr[i];
return 0;
}
1. Ποια η έξοδος?
2. Παραμετροποιησε τον κωδικα καταλληλα (κανοντας χρηση εμφολιασμενης for) ωστε η εξοδος πλεον να ειναι
(αν Ο η αρχική) τοτε η νέα Ο'= 3 * Ο


Star_Light έγραψε:Nαι ειναι μια ασκησουλα.... σχετικα απλη και ωραια.
Οχι μην μπερδευεις το Ο με το συμβολο της πολυπλοκοτητας.
Το Ο εδω δηλωνει εξοδο. I/O <=> Input/Output
Απλα βρες αρχικα την εισοδο και μετα φτιαξε ενα εμφωλιασμενο loop στον ηδη δοθεντα κωδικα που θα
τριπλασιαζει την αρχικη εξοδο (πριν τον εμφωλιασμο δηλαδη.

