zoukankan      html  css  js  c++  java
  • 模板

    1.分数的表示与分数的运算

     1 #include <iostream>
     2 #include <cstring>
     3 #include <algorithm>
     4 #include <vector>
     5 
     6 using namespace std ;
     7 
     8 struct Fraction{//分数的定义 
     9     int up, down ;
    10 };
    11 
    12 int gcd(int a,int b){
    13     return b ? gcd(b,a%b) : a ;
    14 }
    15 
    16 Fraction reduction(Fraction ft){//化为最简分数 
    17     if(ft.down<0){
    18         ft.up = -ft.up ;
    19         ft.down = -ft.down ;
    20     }
    21     if(ft.up == 0){
    22         ft.down = 1 ;
    23     }else{
    24         int d = gcd(ft.up,ft.down) ;
    25         ft.up /= d ;
    26         ft.down /= d ;
    27     }
    28     return ft ;
    29 }
    30 
    31 Fraction add(Fraction ft1,Fraction ft2){//
    32     Fraction res ;
    33     res.up = ft1.up*ft2.down + ft1.down*ft2.up ;
    34     res.down = ft1.down*ft2.down ;
    35     return res ;
    36 }
    37 
    38 Fraction sub(Fraction ft1,Fraction ft2){//
    39     Fraction res ;
    40     res.up = ft1.up*ft2.down - ft1.down*ft2.up ;
    41     res.down = ft1.down*ft2.down ;
    42     return res ;
    43 }
    44 
    45 Fraction mul(Fraction ft1,Fraction ft2){//
    46     Fraction res ;
    47     res.up = ft1.up*ft2.up ;
    48     res.down = ft1.down*ft2.down ;
    49     return res ;
    50 }
    51 
    52 Fraction div(Fraction ft1,Fraction ft2){//除(需要特判除数是否为0) 
    53     Fraction res ;
    54     res.up = ft1.up*ft2.down ;
    55     res.down = ft1.down*ft2.up ;
    56     return res ; 
    57 }
    58 
    59 void ShowResult(Fraction ft){//输出分数 
    60     ft = reduction(ft) ;
    61     if(ft.down == 1){
    62         printf("%lld",ft.up) ;
    63     }else if(abs(ft.up>ft.down)){
    64         printf("%d %d/%d",ft.up/ft.down,abs(ft.up)%ft.down,ft.down) ;
    65     }else{
    66         printf("%d/%d",ft.up,ft.down) ;
    67     }
    68 }
    69 
    70 int main(){
    71     
    72     
    73     return 0 ;    
    74 } 
  • 相关阅读:
    redis 高级功能,过期事件监听
    三五个人的技术团队用的上的技术架构
    听说过api,但是你听说过spi吗
    PostgreSQL建表及相关
    shell命令 $(cd `dirname $0`; pwd);[ "$#" -ne "8" ];exit;declare;`date +%s`
    学习Shell命令
    Shell echo命令
    Linux常用命令
    Linux 目录结构
    nohup ./startWebLogic.sh >out.log 2>&1 & 解析
  • 原文地址:https://www.cnblogs.com/gulangyuzzz/p/12033557.html
Copyright © 2011-2022 走看看