Εντολές εισόδου - εξόδου Εισαγωγή στη C++
Το πρώτο πρόγραμμα //my first program #include <iostream> using namespace std; int main(){ cout << "C++ is easy!"; return 0; }
//my first program Κείμενο το οποίο ακολουθεί δύο κάθετες γραμμές // ή συμπεριλαμβάνεται μεταξύ των /* και */ θεωρείται σχόλιο και δεν λαμβάνεται υπόψη στην μεταγλώττιση. int main(){ return 0; } //κύρια συνάρτηση // τέλος προγράμματος /* Name: John Adams Project: Constructors/ Destructors Date: 23/11/2015 */
#include <iostream> Οδηγία για να συμπεριληφθεί η βιβλιοθήκη iostream στο πρόγραμμα. Η iostream μας επιτρέπει να χρησιμοποιήσουμε το πληκτρολόγιο και την οθόνη για είσοδο δεδομένων και έξοδο πληροφοριών. H δήλωση #include <filename> επιτρέπει τη χρήση των ενσωματωμένων συναρτήσεων/εντολών βρίσκονται στη βιβλιοθήκη που καλούμε. Άλλα παραδείγματα βιβλιοθηκών: cmath, string κλπ.
using namespace std; Όλες οι βασικές βιβλιοθήκες της C++ είναι δηλωμένες μέσα στο namespace std. Μη συμπερίληψη του σημαίνει ότι πρέπει να το καλούμε με κάθε εντολή: #include <iostream> int main(){ std:: cout << "C++ is easy!"; std:: cout << "C++ is simple!"; return 0; }
int main() Η κύρια συνάρτηση του προγράμματος. Όλες οι εντολές της συνάρτησης πρέπει να συμπεριληφθούν ανάμεσα σε άγκιστρα { }. Κάθε πρόγραμμα στην C++ αποτελείται από μία βασική συνάρτηση ακέραιου τύπου (int).
cout << "C++ is easy!"; Η εντολή cout (standard output) χρησιμοποιείται για εμφάνιση πληροφοριών. Συμπεριλαμβάνεται στη βιβλιοθήκη iostream Μεταξύ των διπλών εισαγωγικών μπορούμε να συμπεριλάβουμε οποιαδήποτε ακολουθία λατινικών χαρακτήρων, συμβόλων κλπ. Το ερωτηματικό σηματοδοτεί το τέλος της εντολής.
return 0; Η εκτέλεση του προγράμματος ξεκινά με την κλήση της κύριας συνάρτησης (main) και καταλήγει με την επιστροφή μιας τιμής σε αυτό. Η επιστροφή της τιμής 0 υποδηλώνει την επιτυχή εκτέλεσή της. Process returned 0 (0x0) Press any key to continue. execution time : 0.061 s
Μορφοποίηση εξόδου - Αλλαγή γραμμής Η λέξη endl είναι ένας χειριστής ο οποίος εισάγει μία αλλαγή γραμμής (end line). cout << "C++ is easy!" << endl; cout << "C++ is my choice!"; ή cout << "C++ is easy!" << endl << "C++ is my choice!";
Καθορισμός μεγέθους διαστήματος εκτύπωσης (setw) Ορίζουμε το μέγεθος με τη χρήση της εντολής setw από τη βιβλιοθήκη iomanip. #include<iostream> #include<iomanip> //input/output manipulation using namespace std; int main(){ cout<<"keep"<<setw(5)<<"calm"<<setw(6)<<"and"<<endl; cout<<"learn"<<setw(4)<<"to"<<setw(8)<<"code"; return 0; } Output Keep_calm _and learn to code
Μεταβλητές και Σταθερές Τύπος Διάκριση Bytes Εμβέλεια char χαρακτήρας 1-128 έως 127 int ακέραιος αριθμός 4-32,768 έως 32,767 short ακέραιος αριθμός 2-32,768 έως 32,767 long ακέραιος αριθμός 4-2,147,483,648 έως 2,147,483,647 float πραγματικός αριθμός 4 1.2E-38 έως 3.4E+38 double πραγματικός αριθμός 8 long double πραγματικός αριθμός 16 2.2E-308 έως 1.8E+308 3.4E-4932 έως 1.2E+4932 bool λογικές τιμές 1 true ή false
Δήλωση μεταβλητών Η δήλωση μεταβλητών γίνεται οπουδήποτε μέσα στην κύρια συνάρτηση του προγράμματος. int a; int x,y,z; int num = 10; int add2 = 10 + 20; int kpak = 4, jpak = kpak + 2; double ratio = 25.56; bool check = false; char alpha='a', beta='b';
Δήλωση σταθερών #include<iostream> using namespace std; // Δήλωση σταθεράς με define #define FPA_PERCENT 0.23 int main(){ // Δήλωση σταθεράς με const const float fpa_percent = 0.23; return 0; }
Εντολές εισόδου Η εντολή για εισαγωγή δεδομένων από το πληκτρολόγιο είναι η cin (standard input) που συμπεριλαμβάνεται στην iostream: int num1; cin >> num1; cout << num1;
Εντολές εισόδου Με μια εντολή cin μπορούμε να διαβάσουμε πολλαπλές μεταβλητές διαφορετικού τύπου: int n; double pi; char let; cin >> n >> pi >> let; Η εισαγωγή των δεδομένων για τον πιο κώδικα μπορεί να γίνει σε μια γραμμή: 100 5.67 Α ή σε κάθε γραμμή ξεχωριστά: 100 5.67 Α
Αριθμητικοί τελεστές + πρόσθεση - αφαίρεση * πολλαπλασιασμός / διαίρεση % υπόλοιπο ακέραιας διαίρεσης
Τελεστές προσαρμογής τύπου Οι τελεστές προσαρμογής τύπου (type casting) μας επιτρέπουν να μετατρέψουμε ένα δεδομένο ενός τύπου σε ενός άλλου διαφορετικού. int n; float pi = 3.14; n = (int) pi; // n = 3 char ch = 'A'; int num = (int) ch; // num = 65 (ASCII)
Τελεστές αύξησης/μείωσης Tα παρακάτω είναι ισοδύναμα: a++ ; a += 1; a = a + 1; // b *= a -> b = b * a Θα πρέπει να δοθεί προσοχή αν ο τελεστής αύξησης ή μείωσης χρησιμοποιείται ως πρόθεμα (++a) ή ως επίθεμα (a++). a = 4; a = 4; b = ++a; // b=5, a=5 c = a++; // c=4, a=5
Παράδειγμα 1: Μέσος όρος 3 αριθμών #include<iostream> #include<iomanip> // για δεκαδικά ψηφία using namespace std; int main(){ int a,b,c; float avg; cin >> a >> b >>c ; avg = (float)(a + b + c)/3; // εμφάνιση με δύο δεκαδικά ψηφία cout<<fixed<<setprecision(2)<<avg; return 0; }
Παράδειγμα 2: Ρέστα Το πρόγραμμα υπολογίζει τον ελάχιστο αριθμό χαρτονομισμάτων (αξίας 50, 10, 5 ), που πρέπει να δοθούν σαν ρέστα: #include<iostream> using namespace std; int main(){ int poso; cin >> poso; int d50 = poso/50; // χαρτονομίσματα των 50 int d10 = poso%50/10; // χαρτονομίσματα των 10 int d5 = poso%10/5; // χαρτονομίσματα των 5 cout << d50+d10+d5 << endl; return 0; }