Advertisement
fcamuso

Corso recupero C++ - video 30

Dec 31st, 2022
1,321
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.82 KB | None | 0 0
  1. /*
  2. Progettare e implementare in C++ una classe che rappresenta un conto corrente bancario:
  3. - la creazione di un conto corrente potrà avvenire solo specificando
  4.   almeno il saldo iniziale e il correntista (un codice di conto potra' essere specificato
  5.   anche in un secondo momento)
  6.  
  7. - in ogni momento dovrà essere possibile sapere il saldo del conto
  8.  
  9. - gestire prelievi e versamenti; i prelievi possono mandare in rosso (negativo)
  10.   il saldo del conto non oltre a una certa cifra/soglia;
  11.  
  12.   il valore della soglia viene letto da un file di testo che contiene anche
  13.   il nome della Banca
  14.  
  15. - (difficile) tenere traccia di tutti i movimenti storici; possibilità
  16.   di stampare un estratto conto (data, tipo movimento, valore movimento)
  17.   in ordine cronologico crescente o decrescente
  18. */
  19.  
  20.  
  21. #include <iostream>
  22.  
  23. using namespace std;
  24.  
  25. class CC {
  26.  
  27. public:
  28.   CC(double _saldo, string _correntista, string _numero_conto="")
  29.   {
  30.     set_saldo(_saldo);
  31.  
  32.     correntista = _correntista;
  33.     numero_conto = _numero_conto;
  34.   }
  35.  
  36.   CC() {}
  37.  
  38.   //getters
  39.   double get_saldo() {return saldo;}
  40.  
  41.   //setters
  42.   void set_numero_conto(string numero) {numero_conto = numero;}
  43.  
  44.   void set_saldo(double _saldo)
  45.   {
  46.     if (_saldo<0) throw invalid_argument("Saldo negativo rifiutato");
  47.     saldo = _saldo;
  48.   }
  49.  
  50.   string get_nome_banca() { return nome_banca; }
  51.  
  52. private:
  53.   string numero_conto="";
  54.   double saldo = 0;
  55.   string correntista = "";
  56.  
  57.   static string nome_banca;
  58.   static double soglia_rosso;
  59.  
  60.  
  61. };
  62.  
  63.   string CC::nome_banca = "xxx";
  64.   double CC::soglia_rosso = 1000;
  65.  
  66.  
  67.  
  68. int main()
  69. {
  70.     CC conto = CC();
  71.     try {
  72.       conto = CC(9, "");
  73.     }
  74.     catch (invalid_argument e) {
  75.       cout << e.what() << "Impossibile continuare ...\n";
  76.     }
  77.  
  78.     cout << conto.get_saldo() << endl;
  79.  
  80.     return 0;
  81. }
  82.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement