Manipolazioni dei rapporti in C++ | Set 1 (aritmetica)

Il C++ ci consente di eseguire operazioni di addizione, sottrazione, moltiplicazione e divisione sulle frazioni. Un metodo per aggiungere rapporti è discusso nel seguente articolo: Programma per sommare due frazioni. Il metodo utilizzato qui è noioso e lungo, quindi per superarlo è stato introdotto un metodo migliore in C++. IL Il file header in C++ ci consente di manipolare i rapporti utilizzando vari alias di modello integrati. Il file di intestazione è stato introdotto da C++ 11 in poi.

In questo articolo parleremo di Manipolazioni di rapporti aritmetici in C++. Vengono utilizzate le seguenti funzioni:

  • rapporto_aggiungi
  • rapporto_sottrazione
  • rapporto_moltiplicare
  • rapporto_divide

1) rapporto_aggiungi: Questo alias del modello viene utilizzato per aggiungi due rapporti e restituire il risultato nella forma più semplice . Restituisce costanti a due membri nell'a E Esso denotando numeratore e denominatore.
2) rapporto_sottrazione: Questo alias del modello viene utilizzato per sottrarre due rapporti e restituire il risultato nella forma più semplice . Restituisce costanti a due membri nell'a E Esso denotando numeratore e denominatore. Esso sottrae rapporto2 da rapporto1

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  ;   }   

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

3. rapporto_moltiplica: Questo alias del modello viene utilizzato per moltiplicare due rapporti e restituire il risultato nella forma più semplice . Restituisce costanti a due membri nell'a E Esso denotando numeratore e denominatore.
4. rapporto_divide: Questo alias del modello viene utilizzato per dividere due rapporti e restituire il risultato nella forma più semplice . Restituisce costanti a due membri nell'a E Esso denotando numeratore e denominatore. Esso divide rapporto1 per rapporto2

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  ;   }   

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

Per il set successivo fare riferimento a questo articolo:

  • Manipolazioni dei rapporti in C++ | Set 2 (Confronto)