Δημοσιεύτηκε: 13 Ιουν 2011, 20:23
από clepto
M.Jackson έγραψε:Σε ένα διαγωνισμό του Ubuntu-gr.org εξετάζονται 1500 μέλη. Ως εξεταστικό website χρησιμοποιείται ένα εικονικό κτήριο με αίθουσες διαφορετικής χωρητικότητας. Ο αριθμός των επιτηρητών που απαιτούνται ανά αίθουσα καθορίζεται αποκλειστικά με βάση τη χωρητικότητα της αίθουσας ως εξής:

Μέχρι και 15 θέσεις => 1 Επιτηρητής
Από 16 μέχρι και 23 θέσεις => 2 Επιτηρητές
Πάνω από 23 θέσεις => 3 Επιτηρητές

Να γίνει πρόγραμμα που:
α) για κάθε αίθουσα θα διαβάζει τη χωρητικότητα της, θα υπολογίζει και θα εμφανίζει τον αριθμό των επιτηρητών που χρειάζεται. Ο υπολογισμός του αριθμού των επιτηρητών να γίνεται από συνάρτηση
β) θα σταματάει όταν εξασφαλισθεί ο απαιτούμενος συνολικός αριθμός θέσεων.


προσπαθώ να κάνω αυτήν την άσκηση, μέχρι τώρα έχω γράψει αυτά αλλά αν το τρέξετε βγαίνουν κάτι νούμερα στην αρχή...που είναι τα return που έχω βάλει αλλιώς δεν δούλευε κανονικά, επίσης στο δεύτερο if δεν ξέρω αν το if (16<=x<=23); είναι σωστό...


Κώδικας: Επιλογή όλων
#include <stdio.h>
#include <string.h>
#include <math.h>
int x; //χωρητικοτητα
int y; //επιτηρητες
int sum, num = 0;


aith(x) {

if (x<15) {
y=1;
printf(" %d ", y);
return 1;
}

if (16<=x<=23); {
y=2;
printf(" %d ", y);
return 2;
}

if (x>23) {
y=3;
printf(" %d ", y);
return 3;
}
}


main(void){

while( num<1500 ) {
printf("Xwritikotita ta3hs: ");
scanf("%d", &sum);
printf("Xreiazestai %d epiririth/es", aith(sum));

}
}