Tassos

Δημιουργία αντικειμένου Person σε C++ ( 1η υλοποίηση).

Mar 16th, 2015
268
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.37 KB | None | 0 0
  1. {                                      Visit:   http://g-lts.info/  for more code!                            }
  2.  
  3.  
  4. # include <iostream>
  5. # include <string>
  6. using namespace std;
  7.  
  8. class person
  9. {
  10.     private:
  11.       string name,lastname;
  12.       string telephone;
  13.     public:
  14.      person();
  15.      
  16.      void setname(string s);
  17.      void setlastname(string s);
  18.      bool settelephone(string s);
  19.      
  20.      string getname();
  21.      string getlastname();
  22.      string gettelephone();
  23.      
  24.      void printdetails();
  25.      bool relative(person other);
  26.      ~person();
  27. };
  28.  
  29.  
  30.  
  31.  
  32. person::person()
  33. {
  34.     name="-";
  35.     lastname="-";
  36.     telephone="-";
  37. }
  38.    
  39.      
  40. void    person::setname(string s)
  41. {
  42.     name=s;
  43. }
  44.  
  45.      
  46. void person::setlastname(string s)
  47. {
  48.     lastname=s;
  49. }
  50.  
  51.  
  52. bool person::settelephone(string s)
  53. {
  54.     int i;
  55.    
  56.     //1η  Περίπτωση.
  57.     if(s.size()!=10)
  58.         return false;
  59.    
  60.     //2η Περίπτωση.
  61.     if(s[0]=='0')
  62.         return false;
  63.    
  64.     // Έλεγχος όλων των χαρακτήρων του string - αριθμού, ΑΝ βρίσκονται στο [0-9].
  65.     for(i=0;i<s.size();i++)
  66.     {
  67.         if(!(s[i]>='0' && s[i]<='9')) return false;
  68.     }
  69.    
  70.     // Αν κατάφερε να περάσει τους παραπάνω ελέγχους τότε ας το δεκτό.
  71.     telephone = s;
  72.     return true;
  73. }
  74.  
  75.      
  76. string  person::getname()
  77. {
  78.     return name;
  79. }
  80.  
  81.  
  82. string  person::getlastname()
  83. {
  84.     return lastname;
  85. }
  86.  
  87.  
  88. string person::gettelephone()
  89. {
  90.     return telephone;
  91. }
  92.  
  93.      
  94. void    person::printdetails()
  95. {
  96.     cout<<"Name: "<<name<<" Lastname: "<<lastname<<" Telephone: "<<telephone<<endl;
  97. }
  98.  
  99.  
  100. bool person::relative(person other)
  101. { // Αν το επώνυμο του τρέχων αντικειμένου είναι ίδιο με το επώνυμο του αντικειμένου other.
  102.     if ( lastname==other.getlastname() )
  103.         return true;
  104.     else
  105.         return false;
  106. }
  107.  
  108.  
  109. person::~person()
  110. {
  111.     cout<<"delete person "<<endl;
  112. }
  113.  
  114.  
  115.  
  116. /* **************** Κυρίως πρόγραμμα. **************** */   
  117.  
  118.  
  119. int main()
  120. {
  121.     person p1; // Δημιουργία του αντικειμένου p1 με τύπο person.
  122.     p1.setname("Giannis"); // Εισαγωγή ονόματος στο αντικείμενο p1.
  123.     p1.setlastname("Pappas"); // Εισαγωγή επιθέτου στο αντικείμενο p1.
  124.     p1.settelephone("2651041100"); // Εισαγωγή τηλεφώνου στο αντικείμενο p1.
  125.    
  126.     p1.printdetails(); // Εμφάνιση στοιχείων του αντικειμένου p1.
  127.    
  128.     person p2; // Δημιουργία του αντικειμένου p2 τύπου person.
  129.    
  130.     p2.setname("Kostas"); // Εισαγωγή ονόματος στο αντικείμενο p2.
  131.     p2.setlastname("Ioannou"); // Εισαγωγή επιθέτου στο αντικείμενο p2.
  132.    
  133.    
  134.     if ( !p2.settelephone("ax12444") ) // Πιο σωστός τρόπος εισαγωγής του τηλεφώνου.
  135.         cout<<"Lathos tilefono "<<endl;
  136.        
  137.     p2.printdetails(); // Εμφάνιση στοιχείων του αντικειμένου p2.
  138.    
  139.     if ( p2.relative(p1) ) // Έλεγχος ΑΝ το αντικείμενο p2 είναι συγγενής με το p1.
  140.         cout<<"Mallon sygeneis"<<endl;
  141.    else
  142.     cout<<"Mallon oxi sygeneis"<<endl;
  143.    
  144.     cout<<p2.gettelephone()<<endl;
  145.    
  146.     return 0;
  147. }
  148.  
  149.  
  150. {                                      Visit:   http://g-lts.info/  for more code!                            }
Advertisement
Add Comment
Please, Sign In to add comment