Suhteen manipulaatiot C ++: ssa | Aseta 1 (aritmeettinen)

C ++ antaa meille mahdollisuuden suorittaa lisäyksen vähentämiskertomus ja jakotoiminnot fraktioissa. Yksi menetelmä suhteiden lisäämiseksi käsitellään seuraavassa artikkelissa - Ohjelma lisätä kaksi fraktiota. Tässä käytetty menetelmä on työläs ja pitkä, jotta voidaan voittaa, että C ++: een otettiin parempi menetelmä. Se C ++: n otsikkotiedoston avulla voimme manipuloida suhteita käyttämällä erilaisia ​​sisäänrakennettuja malli -aliaksia. Otsikkotiedosto esiteltiin C ++ 11: stä eteenpäin.

Tässä artikkelissa keskustelemme Aritmeettisen suhteen manipulaatiot C ++: ssa. Käytetään seuraavia toimintoja:

  • suhde
  • suhde
  • suhde
  • suhde

1) suhde_add: Tätä malli -aliasta käytetään Lisää kaksi suhdetta ja palauttaa johtaa yksinkertaisimpaan muotoon . Se palauttaa kahden jäsenen vakiot a ja se Numeroija ja nimittäjä.
2) suhde_subract: Tätä malli -aliasta käytetään Vähennä kaksi suhdetta ja palauttaa johtaa yksinkertaisimpaan muotoon . Se palauttaa kahden jäsenen vakiot a ja se Numeroija ja nimittäjä. Se Vähennäsuhde2 suhteesta1

CPP
   // C++ program to demonstrate the working of   // ratio_add and ratio_subtract   #include          #include         // for ratio manipulation   using     namespace     std  ;   int     main  ()   {      // Declaring ratios      typedef     ratio   <  5       4  >     ratio1  ;      typedef     ratio   <  3       4  >     ratio2  ;      // Summing two ratios      typedef     ratio_add   <  ratio1       ratio2  >     sum  ;      // Subtracting two ratios      typedef     ratio_subtract   <  ratio1       ratio2  >     diff  ;      // printing sum of ratios      cout      < <     'The sum of ratios is : '  ;      cout      < <     sum  ::  num      < <     '/'      < <     sum  ::  den  ;      cout      < <     endl  ;      // printing difference of ratios      cout      < <     'The difference of ratios is : '  ;      cout      < <     diff  ::  num      < <     '/'      < <     diff  ::  den  ;      cout      < <     endl  ;      return     0  ;   }   

Tulos
The sum of ratios is : 2/1 The difference of ratios is : 1/2 

3. Suhde_multiply: Tätä malli -aliasta käytetään Kerro kaksi suhdetta ja palauttaa johtaa yksinkertaisimpaan muotoon . Se palauttaa kahden jäsenen vakiot a ja se Numeroija ja nimittäjä.
4. Suhde_DIVIDE: Tätä malli -aliasta käytetään Jaa kaksi suhdetta ja palauttaa johtaa yksinkertaisimpaan muotoon . Se palauttaa kahden jäsenen vakiot a ja se Numeroija ja nimittäjä. Se jako -suhde1 suhteessa2

CPP
   // C++ program to demonstrate the working of   // ratio_multiply and ratio_divide   #include          #include         // for ratio manipulation   using     namespace     std  ;   int     main  ()   {      // Declaring ratios      typedef     ratio   <  5       4  >     ratio1  ;      typedef     ratio   <  3       4  >     ratio2  ;      // Multiplying two ratios      typedef     ratio_multiply   <  ratio1       ratio2  >     prod  ;      // Dividing two ratios      typedef     ratio_divide   <  ratio1       ratio2  >     div  ;      // printing product of ratios      cout      < <     'The product of ratios is : '  ;      cout      < <     prod  ::  num      < <     '/'      < <     prod  ::  den  ;      cout      < <     endl  ;      // printing division of ratios      cout      < <     'The division of ratios is : '  ;      cout      < <     div  ::  num      < <     '/'      < <     div  ::  den  ;      cout      < <     endl  ;      return     0  ;   }   

Tulos
The product of ratios is : 15/16 The division of ratios is : 5/3 

Seuraavaksi sarjalle katso tämä artikkeli:

  • Suhteen manipulaatiot C ++: ssa | Set 2 (vertailu)