Tips & Tricks presented by Marin Cristea

 

#include <iostream>
#include <iomanip> // Pentru setw, setprecision...
#include <fstream> // Pentru fisiere
#include <sstream> // Pentru stringstream
#include <cstdlib> // Pentru srand
#include <ctime> // Pentru time
#include <cmath> // Pentru sqrt
#include <climits> // Pentru INT_MIN si LLONG_MAX
#include <windows.h> // Pentru tipul HANDLE
using namespace std;

int main()
{
 // Stergerea ecranului folosinf comanda DOS "cls"
 cout<<"Hello, world !"; system("cls");

 // Afisari valori numerice in diferite formate
 cout<<setw(5)<<23.0<<endl; // 23
 cout<<hex<<123<<" "<<3456<<endl; //7b d80
 cout<<dec<<123<<" "<<3456<<endl; //123 3456
 cout<<1.1234567<<endl;//1.12346
 cout<<12345.678<<endl;//12345.7
 cout<<123456.78123<<endl;//123457
 cout<<fixed<<123456.78123<<endl;//123456.781230
 cout<<23.0<<endl;//23.000000
 cout<<showpos<<23.0<<endl;//+23.000000
 cout<<setprecision(2)<<123.34534<<endl;//+123.35
 cout<<noshowpos<<23.0<<" "<<12345.678<<endl;//23.00 12345.68

 // Afisarea continutului unui fisier
 char c;
 fstream f("date.in",ios::in);
 while(f>>noskipws>>c) cout<<c;
 f.close();

 // Afaugarea unei linii in fisier
 ofstream g("date.in",ios::app);
 g<<endl<<"Linie adaugata"<<endl;
 g.close();

 // Extragerea numerelor dintr-un sir de caractere
 float nr; char lin[]="-1866 22.12345 +21.3";
 stringstream sin(lin); // fluxul "sin" se va defini dupa ce "lin" primeste continut
 while(sin>>nr) cout<<nr<<" ";

 // Generare numere aleatoare in functie de numarul de secunde care au trecut de la 1 ianuarie 1970
 srand(time(NULL)); cout<<endl;
 for(int i=1;i<10;i++) cout<<rand()%100<<" ";

 // Afisarea datei si orei curente
 time_t now = time(NULL); // returneaza numarul de secunde de la 1 ianuarie 1970
 tm *p = localtime(&now); // creeaza o structura cu data si ora in functie de numarul de secunde din "now"
 cout<<endl<<"Data curenta este "<<p->tm_mday<<"."<<1+p->tm_mon<<"."<<1900+p->tm_year;
 cout<<" iar ora curenta "<<p->tm_hour<<":"<<p->tm_min<<":"<<p->tm_sec<<endl;
 // tm_mon = 0,1,...,11 iar tm_year = numarul de ani dupa 1900

 // Extragerea radacinii patrate
 float radical=sqrt(26); cout<<endl<<radical<<endl; //5.10

 // Determinarea valorilor maxime
 int m=INT_MIN; long long M=LLONG_MAX;
 cout<<m<<" "<<M<<endl; //-2147483648 9223372036854775807

 // Afisarea textului cu alta culoare
 HANDLE consola = GetStdHandle(STD_OUTPUT_HANDLE);
 SetConsoleTextAttribute(consola, 14); // 14=galben
 cout<<endl<<"Colegiul Bratianu";
 SetConsoleTextAttribute(consola, 7); // 7=culoarea initiala
 //0 BLACK, 1 BLUE, 2 GREEN, 3 CYAN, 4 RED, 5 MAGENTA, 6 BROWN, 7 LIGHTGRAY, 8 DARKGRAY
 //9 LIGHTBLUE, 10 LIGHTGREEN, 11 LIGHTCYAN, 12 LIGHTRED, 13 LIGHTMAGENTA, 14 YELLOW, 15 WHITE
}