Inregistrare • Cautare • FAQ • Membri • Grupuri • Autentificare
lab 12

 
Raspunde la subiect    Pagina de start a forumului MiniZone » programming Subiectul anterior
Subiectul urmator

lab 12
Autor Mesaj
Zappu
Administrator
Administrator
Zappu

Data inscrierii: 10/Noi/2007
Mesaje: 718
Localitate: Cluj

Mesaj lab 12 Raspunde cu citat (quote)
1. Scrieþi un program C++ în care afiºaþi diferite valori în zecimal, octal ºi hexazecimal.
Afiºaþi valorile aliniate la dreapta, respectiv la stânga într-un câmp de afiºare cu măsură 15.
Utilizaþi manipulatorul setfill() pentru stabilirea caracterului de umplere
ºi funcþiile width() ºi precision() pentru stabilirea dimensiunii câmpului de afiºare ºi a preciziei.




#include<iostream>
#include<iomanip>
using namespace std;
void main(void)
{
cout.setf(ios::right);
cout.width(15);
cout.precision(3);
cout<<setfill('*')<<10.4441<<endl;
cout.unsetf(ios::dec);
cout.setf(ios_base::hex);
cout<<442<<endl;
cout.setf(ios::left);
cout.unsetf(ios::hex);
cout.setf(ios_base::oct);
cout<<10<<endl;
}





2. Scrieti o aplicatie C++ in care se citesc de la tastatura date de distincte tipuri,
urmand a fi afisate pe ecran utilizand manipulatorii standard.



#include <iostream>
#include <iomanip>
using namespace std;

void main(void)
{
int a;
float b;
char c[30];

cout<<"Introduceti un numar intreg:";cin>>a;
cout<<"a="<<a<<endl;
cout<<"Convertit in hexazecimal:"<<hex<<a<<endl;
cout<<"Convertit in octal:"<<oct<<a<<endl;
cout<<"\nIntroduceti un numar real:";cin>>b;
cout << setprecision(8);
cout<<"b="<<b<<endl;
cout<<"Introduceti un sir de caractere:";cin>>c;
cout<<setfill('c')<<setw(8)<<c<<endl;

}




4. Definiti o clasa numita MiscareAccelerata care contine variabilele private
dc (distanta curenta, vc (viteza curenta) si a (acceleratia).
Variabilele dc si vc sunt initializate in constructor iar valoarea lor este cea data de d0 si v0,
ca si parametri. In clasa sunt supraincarcati operatorii de extractie si de insertie pentru a se putea initializa
si afisa caracteristicile unei instante.
Implementati metoda determinaMiscarea care re-calculeaza variabilele dc si vc,
pe baza unui numar de secunde primit ca parametru si avand in vedere legea miscarii rectilinii uniform accelerate.
Instantiati clasa si apoi folositi membrii definiti.




#include<iostream>
#include<stdarg.h>
#include<math.h>
using namespace std;

class MiscareAccelerata
{
double dc;
double vc;
double a;
public:
MiscareAccelerata(int d0,int v0) : dc(d0),vc(v0),a(0) {}
friend istream& operator>>(istream& stream, MiscareAccelerata &obj);
friend ostream& operator<<(ostream& stream, MiscareAccelerata &obj);
void determinaMiscarea(int t);
};
istream& operator>>(istream& stream, MiscareAccelerata &obj)
{
char buff[20];
cout<<"Intoduceti acceleratia sistemului:";
stream>>obj.a;
cout<<"Introduceti distanta curenta:(pentru a lasa nemodificata tastati \'d\': ";
cin>>buff;
if(toupper(buff[0])!='D') obj.dc=atoi(buff);
cout<<"Introduceti viteza curenta:(pentru a lasa nemodificata tastati \'d\': ";
cin>>buff;
if(toupper(buff[0])!='D') obj.vc=atoi(buff);
return stream;
}
ostream& operator<<(ostream& stream, MiscareAccelerata &obj)
{
stream<<"Acceleratia sistemului este: "<<obj.a<<endl;
stream<<"Distanta curenta este: "<<obj.dc<<endl;
stream<<"Viteza curenta este: :"<<obj.vc<<endl;
return stream;
}
void MiscareAccelerata::determinaMiscarea(int t)
{
double dc_tmp=dc;
dc=dc+vc*t+a*pow((double)t,2)/2;
vc=sqrt(pow(vc,2)+2*a*dc_tmp);
}
void main(void)
{
MiscareAccelerata c1(10,4);
cout<<"Parametrii initiali:"<<endl<<c1<<endl;
cin>>c1;
cout<<endl<<"Parametrii dupa schimbare:"<<endl<<c1<<endl;
c1.determinaMiscarea(10);
cout<<"Parametrii dupa recalculare:"<<endl<<c1<<endl;
}

_________________
Detinator MiniZone
www.zappdivercity.blogspot.com
06/05/2014 15:04 Vezi profilul utilizatorului Trimite mesaj privat
Afiseaza mesajele pentru a le previzualiza:    

Raspunde la subiect    Pagina de start a forumului MiniZone » programming Ora este GMT + 3 ore
Pagina 1 din 1

 
Mergi direct la: 
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum


Powered by phpBB © 2001, 2005 phpBB Group
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro