Συναρτήσεις Παραδείγματα
Παρακάτω παρουσιάζονται απλά παραδείγματα από συναρτήσειες για εξάσκηση.
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει τον αντίθετο ενός ακεραίου αριθμού.
int getOpposite(int x) { int opp = -x; return opp; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει την απόλυτη τιμή ενός αριθμού.
int getAbsolute(int x) { if(x >= 0) { return x; } else { return -x; } }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true ή false αν ένας αριθμός είναι ζυγός(άρτιος) ή όχι.
bool isEven(int x) { if(x%2 == 0) { return true; } else { return false; } }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει τον μεγαλύτερο αριθμό ανάμεσα σε δύο.
double getMax(double a, double b) { if(a>b) { return a; } else { return b; } }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει τον μικρότερο αριθμό ανάμεσα σε δύο.
todo ...
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true αν δύο αριθμοί είναι το ίδιο ζυγοί ή μονοί και false αν είναι διαφορετικοί (δηλαδή ένας μονός και ένας ζυγός).
todo ...
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true ή false αν ένας χαρακτήρας είναι πεζός (μικρός) ή όχι.
bool isSmallLetter(char c) { if(c >= 97 && c <= 122) { return true; } else { return false; } }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true ή false αν ένα σύμβολο είναι χαρακτήρας ή όχι.
bool isCharacter(char c) { if((c >= 65 && c <= 90) || (c >= 97 && c <= 122)) { return true; } else { return false; } }
Εναλλακτικά (ή πιο αναλυτικά)
bool isCharacter(char c) { bool p1 = (c >= 65 && c <= 90); bool p2 = (c >= 97 && c <= 122); if(p1 || p2) { return true; } else { return false; } }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true ή false αν μια συμβολοσειρά είναι αλφαβητική (περιέχει μόνο αλφαβητικούς χαρακτήρες).
bool isAlphabetical(string str) { for(int i=0; i < str.length(); i++) { if(!((str[i] >= 65 && str[i] <= 90) || (str[i] >= 97 && str[i] <= 122))) return false; } return true; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true ή false αν μια συμβολοσειρά είναι αλφαβητική (περιέχει μόνο αλφαβητικούς χαρακτήρες) με τη βοήθεια της συνάρτησης isCharacter() που φτιάχτηκε παραπάνω.
todo ...
Παράδειγμα
Να βρεθεί αν ένας αριθμός είναι μονοψήφιος, διψήφιος, τριψήφιος ή πολυψήφιος (4 ψηφία ή περισσότερα).
unsigned int getDigits(unsigned int number) { if(number < 10) { return 1; } if(number < 100) { return 2; } if(number < 1000) { return 3; } return 4; // many digits, 4 or more }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει το κεφαλαίο γράμμα ενός χαρακτήρα (αν είναι κεφαλαίο θα επιτρέφει τον ιδιο).
char getBigLetter(char letter) { char bigLetter = letter - 32; return bigLetter; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει το πεζό (μικρό) γράμμα ενός χαρακτήρα.
todo ...
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει ένα string με κεφαλαία γράμματα.
string getBigString(string str) { for(int i = 0; i < str.length(); i++) { if(str[i] >= 97) { str[i] = str[i] - 32; } } return str; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει το εμβαδόν ενός κύκλου.
double getCircleArea(double r) { return 3.14*r*r; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει το εμβαδόν ενός ορθογωνίου.
double getRecArea(double width, double height) { return width*height; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει το εμβαδόν ενός τριγώνου.
double getTriArea(double base, double height) { return base*height/2; }
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα επιστρέφει true ή false αν ένα ορθογώνιο είναι τετράγωνο.
todo ...
Παράδειγμα
Να φτιαχτεί συνάρτηση που θα κάνει ανταλλαγή (swap) τις τιμές δύο μεταβλητών. Οι παράμετροι καλούνται με αναφορά (by reference).
void swapNums(int &x, int &y) { int temp; temp = x; x = y; y = temp; }