Programare orientata pe obiecte-informatii specifice cartilor dintr-o librarie

Configurare noua (How To)

Situatie

Sa se citeasca de la tastatura informatiile specifice cartilor dintr-o librarie: denumire carte, autorul principal, al doilea autor, numarul de pagini si pretul. Prin intermediul unei clase, carte, care descrie datele despre o carte, proprietatile (denumire carte, autorul principal, al doilea autor, numarul de pagini si pretul) si metodele de prelucrare (initializarea si afisarea unei carti) sa se afiseze pe ecran informatiile despre orice carte tratata.

Solutie

// definirea clasei carte

#include<iostream.h>

#include<string.h>

#include<stdio.h>

class carte

{

  public:

    char nume[40];

    char autor1[40];

    char autor2[40];

    int nrpag;

    double pret;

    void citeste_carte(char *numecarte,char *autorcarte1,char *autorcarte2,int *np,double *p);

    void afiseaza_carte();

};

// descrirea functiei de citire carte

void carte::citeste_carte(char *numecarte,char *numeautor1,

                                     char *numeautor2,int *np,double *p)

  {

    strcpy(nume,numecarte);

    strcpy(autor1,numeautor1);

    strcpy(autor2,numeautor2);

    nrpag=*np;

    pret=*p;

  }

void carte::afiseaza_carte()

  {

    cout<<“\n cartea nr.”<<i<<“:”<<nume<<endl;

    cout<<“\n primul autor:”<<autor1<<endl;

    cout<<“\n al doilea autor:”<<autor2<<endl;

    cout<<“\n nr pagini:”<<nrpag<<endl;

    cout<<“\n pretul:”<<pret<<endl;

  }

int i=0;

void main()

  {

      carte carteacitita;

      char wnume[40],wautor1[40],wautor2[40];

      int wnrpag;

      double wpret;

      char r=’d’;

      while(r==’d’)

        {

           printf(“\n denumirea cartii:”);

           gets(wnume);

           printf(“\n primul autor:”);

           gets(wautor1);

           printf(“\n al doilea autor:”);

           gets(wautor2);

           cout<<“\n nr. pagini:”;

           cin>>wnrpag;

           cout<<“\n pret:”;

           cin>>wpret;

           carteacitita.citeste_carte(wnume,wautor1,wautor2,&wnrpag,&wpret);

           carteacitita.afiseaza_carte();

           cout<<“\n continuati?(d/n):”;

           cin>>r;

        }

  }

Tip solutie

Permanent

Voteaza

(4 din 11 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?