Extras din curs
EXTENSII ALE LIMBAJULUI C++
A. Operaţii de intrare-ieşire specifice limbajului C++
I. Noţiuni teoretice
Limbajul C++ furnizează o bibliotecă standard iostream care permite citirea şi scrierea din şi în fişiere precum şi de la şi la intrarea şi ieşirea standard. Pentru a folosi aceste clase standard în program trebuie inclus fişierul header corespunzător: #include <iostream.h>
Pachetul iostream defineşte automat un obiect numit cout (de la console output) care acceptă toate datele ce vor fi afişate la ieşirea standard. Pentru a trimite informaţie la ieşirea standard se utilizează operatorul <<.
Obiectul cout poate primi o serie de argumente prin operatorul << (constan-te numerice, şiruri de caractere) pe care le afişează de la stânga la dreapta în ordine.
cout<<”Numar= ”<<10<<endl;
O caracteristică importantă a preprocesorului C este concatenarea şirurilor de caractere, dacă acestea nu sunt despărţite de nici o punctuaţie.
cout<<”Acesta este un sir”
“mai lung”
“de caracteren”;
Pachetul iostream pune la dispoziţie şi afişarea formatată a numerelor în zecimal, octal, hexazecimal. În acest scop, se utilizează manipulatorii iostream.
Exemplu:
#include <iostream.h>
void main()
{
cout<<”Numar in zecimal: “<<dec<<15<<endl;
cout<<”Numar in octal: “<<oct<<15<<endl;
cout<<”Numar in hexazecimal: “<<hex<<15<<endl;
cout<<”Numar in virgula mobila: “<<3.145<<endl;
cout<<”Caracter escape: “<<char(27)<<endl;
}
Programul afişează:
Numar in zecimal: 15
Numar in octal: 17
Numar in hexazecimal: f
Numar in virgula mobila: 3.145
Caracter escape: <-
Formatarea numerelor în virgulă mobilă este determinată automat de compilator. Orice caracter poate fi afişat utilizând funcţia char() cu un parametru ce reprezintă valoarea ASCII a caracterului.
Obiectul utilizat pentru citirea standard este cin (console input). Obiectul cin este utilizat cu operatorul >>. Acest operator aşteaptă acelaşi fel de “input” ca şi argumentul său. De exemplu, dacă are un argument număr întreg, aşteaptă ca un număr întreg să fie introdus de la tastatură.
II. Aplicaţii rezolvate
Aplicaţia 1
Să se calculeze rădăcina pătrată a unui număr real şi să se precizeze dacă numărul real este sau nu pătrat perfect.
Programul corespunzător problemei este:
#include <iostream.h>
#include <math.h>
void main()
{ float x,y;
cout<<"Dati numarul real: ";
cin>>x;
y=sqrt(x);
cout<<"Radacina patrata a lui "<<x<<" = "<<y<<endl;
if(y==floor(y))
cout<<"Numarul"<<x<<"este patrat perfect";
else cout<<"Numarul "<<x<<" nu este patrat perfect";
}
Programul afişează:
Dati numarul real: 256
Radacina patrata a lui 256 este 16
Numarul 256 este patrat perfect
Analiza programului:
Pentru rezolvarea problemei se utilizează două variabile reale reprezentate în simplă precizie x şi y. Prima variabilă se utilizează pentru memorarea numărului real, iar variabila y va corespunde rădăcinii pătrate a numărului real dat. Operaţiile de intrare şi de ieşire sunt realizate prin utilizarea obiectelor cin şi cout. Pentru utilizarea acestor obiecte se include biblioteca iostream.
În program este inclusă şi biblioteca math din care sunt utilizate două funcţii: funcţia sqrt folosită pentru calculul rădăcinii pătrate şi funcţia floor utilizată pentru determinarea părţii întregi a unui număr real.
Aplicaţia 2
Să se verifice dacă un caracter aparţine unui şir de caractere.
Programul corespunzător problemei este:
#include <iostream.h>
#include <string.h>
void main()
{ char c;
char s[10];
cout<<"Dati sirul de caractere: ";
cin>>s;
cout<<"Dati caracterul cautat: ";
cin>>c;
if (strchr(s,c)!=NULL)
cout<<"Caracterul "<<c<<" apartine sirului "<<s;
else
cout<<"Caracterul "<<c<<" nu apartine sirului "<<s;
}
Programul afişează:
Conținut arhivă zip
- curs10
- BACK.CPP
- curs10.doc
- curs3
- curs3.doc
- curs3p1.CPP
- curs3p2.cpp
- curs3p3.CPP
- curs3p4.CPP
- curs3p5.CPP
- curs4
- curs4.doc
- CURS4P1.CPP
- CURS4P2.CPP
- CURS4P3.CPP
- CURS4P4.CPP
- CURS4P5.CPP
- curs5
- curs5.doc
- CURS5P1.CPP
- CURS5P2.CPP
- INTRARE.TXT
- curs6
- curs6.doc
- curs6p1.CPP
- intrare1.TXT
- curs7
- curs7.doc
- CURS7P1.CPP
- CURS7P2.CPP
- CURS7P3.CPP
- INPUT.TXT
- curs9
- curs9.doc
- Curs9p1.CPP
- Curs9p2.CPP
- Curs9p3.CPP
- Curs9p4.cpp
- curs1.DOC
- curs11.doc
- curs12.doc
- curs13.doc
- curs14.doc
- curs2.doc
- curs8.doc