最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++實(shí)現(xiàn)分?jǐn)?shù)計(jì)算器

 更新時(shí)間:2021年06月17日 15:20:02   作者:名名名名  
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)分?jǐn)?shù)計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

分?jǐn)?shù)計(jì)算器項(xiàng)目設(shè)計(jì),供大家參考,具體內(nèi)容如下

一、問(wèn)題描述及功能要求

1、分?jǐn)?shù)計(jì)算器程序的每種功能都可以用菜單選項(xiàng)列出,用戶可以根據(jù)需要選擇相應(yīng)的菜單項(xiàng),從而執(zhí)行不同的子程序以完成相應(yīng)的功能
2、增加運(yùn)算符重載功能,使所設(shè)計(jì)的分?jǐn)?shù)計(jì)算器可以進(jìn)行四則運(yùn)算&冪運(yùn)算&邏輯運(yùn)算。四則運(yùn)算&冪運(yùn)算可以用菜單選項(xiàng)列出,用戶可以根據(jù)需要選擇相應(yīng)的運(yùn)算。
3、程序具有判斷功能,當(dāng)有非法的輸入時(shí)(如分母等于零等),能給出提示信息并退出運(yùn)算
4、可將分?jǐn)?shù)化為十進(jìn)制小數(shù)和帶分?jǐn)?shù)
5、設(shè)計(jì)邏輯功能的函數(shù)使其可以進(jìn)行邏輯比較,比如大于、小于的邏輯比較。
6、設(shè)計(jì)數(shù)字選擇功能程序,用戶可以輸入數(shù)字鍵選擇進(jìn)行四則運(yùn)算&冪運(yùn)算或邏輯比較,運(yùn)算結(jié)果為T(mén)RUE或FLASE。
7、要求界面提示清楚、便于操作

二、代碼實(shí)現(xiàn) 帶有注釋

廢話不說(shuō),直接代碼,歡迎指正。

大家CV可能有不兼容的情況,可以跟我滴滴,盡可能解決問(wèn)題地回復(fù)。

#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <fstream>
using namespace std;
void jiafa1()
{
    system("cls");
    while(1)
    {
        long long int a,c,d,f;
        char b,e;
        cin>>a>>b>>c>>d>>e>>f;
        a=a*f+d*c;
        c=c*f;
        int flag=1;
        if((a<0&&c<0)||(a>0&&c>0)) flag=0;
        a=abs(a);c=abs(c);
        if(a%c==0)
        {
            if(flag==0){cout<<a/c<<endl;}
            if(flag==1){cout<<"-"<<a/c<<endl;}

        }
        else if(a>c)
        {
            int x,y;
            x=a;y=c;
            int z=c;
            while(a%c!=0)
            {
                z=a%c;
                a=c;
                c=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
       else if(c>a)
        {
            int x,y;
            x=a;y=c;
            int z=a;
            while(c%a!=0)
            {
                z=c%a;
                c=a;
                a=z;
            }
            c=y/z;a=x/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }
}
void jiafa2()
{
    system("cls");
    while(1)
    {
        long long int a,c,d;
        char b;
        cin>>a>>b>>c>>d;
        a=a+d*c;
        cout<<a<<"/"<<c<<endl;
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }

}
void jiafa()
{
    while(1)
    {
        system("cls");
        cout<<"(1) 兩個(gè)分?jǐn)?shù)"<<endl;
        cout<<"(2) 分?jǐn)?shù)和整數(shù)"<<endl;
        cout<<"(3) 返回上一級(jí)"<<endl;
        int a;cin>>a;
        if(a==1){jiafa1();}
        if(a==2){jiafa2();}
        if(a==3){break;}
    }
}
void jianfa1()
{
    system("cls");
    while(1)
    {
        int a,c,d,f;
        char b,e;
        cin>>a>>b>>c>>d>>e>>f;
        a=a*f-d*c;
        c=c*f;
        int flag=1;
        if((a<0&&c<0)||(a>0&&c>0)) flag=0;
        a=abs(a);c=abs(c);
        if(a%c==0)
        {
            if(flag==0){cout<<a/c<<endl;}
            if(flag==1){cout<<"-"<<a/c<<endl;}
        }
        else if(a>c)
        {
            int x,y;
            x=a;y=c;
            int z=c;
            while(a%c!=0)
            {
                z=a%c;
                a=c;
                c=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        else if(c>a)
        {
            int z=a;
            int x,y;
            x=a;y=c;
            while(c%a!=0)
            {
                z=c%a;
                c=a;
                a=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }
}
void jianfa2()
{
    system("cls");
    while(1)
    {
        long long int a,c,d;
        char b;
        cin>>a>>b>>c>>d;
        a=a-d*c;
        cout<<a<<"/"<<c<<endl;
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }
}
void jianfa()
{
   while(1)
    {
        system("cls");
        cout<<"(1) 兩個(gè)分?jǐn)?shù)"<<endl;
        cout<<"(2) 分?jǐn)?shù)和整數(shù)"<<endl;
        cout<<"(3) 返回上一級(jí)"<<endl;
        int a;cin>>a;
        if(a==1){jianfa1();}
        if(a==2){jianfa2();}
        if(a==3){break;}
    }
}
void chengfa1()
{
    system("cls");
    while(1)
    {
        long long int a,c,d,f;
        char b,e;
        cin>>a>>b>>c>>d>>e>>f;
        a=a*d;c=c*f;
        int flag=1;
        if((a<0&&c<0)||(a>0&&c>0)) flag=0;
        a=abs(a);c=abs(c);
        if(a%c==0)
        {
            if(flag==0){cout<<a/c<<endl;}
            if(flag==1){cout<<"-"<<a/c<<endl;}
        }
        else if(a>c)
        {
            int z=c;
            int x,y;x=a,y=c;
            while(a%c!=0)
            {
                z=a%c;
                a=c;
                c=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        else if(c>a)
        {
            int z=a;
            int x,y;x=a;y=c;
            while(c%a!=0)
            {
                z=c%a;
                c=a;
                a=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }
}
void chengfa2()
{
    system("cls");
    while(1)
    {
        long long int a,c,d;
        char b;
        cin>>a>>b>>c>>d;
        int flag=1;
        if((a<0&&d<0)||(a>0&&d>0)) flag=0;
        a=abs(a);d=abs(d);
        if(d%c==0) {a=a*(d/c);
        if(flag==0) {cout<<a<<endl;}
        if(flag==1) {cout<<"-"<<a<<endl;}
        }
        else if(c%d==0)
        {
            if(flag==0) {cout<<a<<"/"<<c/d<<endl;}
            if(flag==1) {cout<<"-"<<a<<"/"<<c/d<<endl;}
        }
        else
        {
            if(flag==0){cout<<a*d<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a*d<<"/"<<c<<endl;}
        }
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }

}
void chengfa()
{
    while(1)
    {
        system("cls");
        cout<<"(1) 兩個(gè)分?jǐn)?shù)"<<endl;
        cout<<"(2) 分?jǐn)?shù)和整數(shù)"<<endl;
        cout<<"(3) 返回上一級(jí)"<<endl;
        int a;cin>>a;
        if(a==1){chengfa1();}
        if(a==2){chengfa2();}
        if(a==3){break;}
    }
}
void chufa1()
{
    system("cls");
    while(1)
    {
        int a,c,d,f;
        char b,e;
        cin>>a>>b>>c>>d>>e>>f;
        int flag=1;
        a=a*f;c=c*d;if((a<0&&c<0)||(a>0&&c>0)) flag=0;
        a=abs(a);c=abs(c);
        if(a%c==0)
        {
            if(flag==0) cout<<a/c<<endl;
            if(flag==1) cout<<"-"<<a/c<<endl;
        }
        else if(a>c)
        {
            int z=c;
            int x,y;x=a;y=c;
            while(a%c!=0)
            {
                z=a%c;
                a=c;
                c=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        else if(c>a)
        {
            int z=a;
            int x,y;x=a;y=c;
            while(c%a!=0)
            {
                z=c%a;
                c=a;
                a=z;
            }
            a=x/z;c=y/z;
            if(flag==0){cout<<a<<"/"<<c<<endl;}
            if(flag==1){cout<<"-"<<a<<"/"<<c<<endl;}
        }
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }

}
void chufa2()
{
    system("cls");
    while(1)
    {
        long long int a,c,d;
        char b;
        cin>>a>>b>>c>>d;
        int flag=1;
        if((a<0&&d<0)||(a>0&&d>0)) flag=0;
        a=abs(a);d=abs(d);
        if(d%c==0) {a=a*(d/c);if(flag==0){cout<<a<<endl;}if(flag==1){cout<<"-"<<a<<endl;}}
        else if(c%d==0)
        {
            if(flag==0) {cout<<a<<"/"<<c/d<<endl;}
            if(flag==1) {cout<<"-"<<a<<"/"<<c/d<<endl;}
        }
        else
        {
            if(flag==0) {cout<<a*d<<"/"<<c<<endl;}
            if(flag==1) {cout<<"-"<<a*d<<"/"<<c<<endl;}

        }
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }

}
void chufa()
{
    while(1)
    {
        system("cls");
        cout<<"(1) 兩個(gè)分?jǐn)?shù)"<<endl;
        cout<<"(2) 分?jǐn)?shù)和整數(shù)"<<endl;
        cout<<"(3) 返回上一級(jí)"<<endl;
        int a;cin>>a;
        if(a==1){chufa1();}
        if(a==2){chufa2();}
        if(a==3){break;}
    }
}
void chengfang1()
{
    system("cls");
    while(1)
    {
        long long int a,c,d;
        char b;
        cin>>a>>b>>c>>d;
        int flag=1;
        if(a<0&&d%2==0) flag=0;
        if(a>0) flag=0;
        a=abs(a);
        long int sum1=1;
        long int sum2=1;
        while(d--)
        {
            sum1*=a;
            sum2*=c;
        }
        if(flag==0){cout<<sum1<<"/"<<sum2<<endl;}
        if(flag==1){cout<<"-"<<sum1<<"/"<<sum2<<endl;}
        cout<<"1繼續(xù)使用,0返回上一級(jí)"<<endl;
        int g;cin>>g;
        if(g==1) continue;
        if(g==0) break;
    }


}
void chengfang()
{
    while(1)
    {
        system("cls");
        cout<<"(1) 分?jǐn)?shù)和整數(shù)"<<endl;
        cout<<"(2) 返回上一級(jí)"<<endl;
        int a;cin>>a;
        if(a==1){chengfang1();}
        if(a==2){break;}
    }
}
void sizeyunsuan()
{
    while(1)
   {
        system("cls");
        cout<<"(1) 加法運(yùn)算"<<endl;
        cout<<"(2) 減法運(yùn)算"<<endl;
        cout<<"(3) 乘法運(yùn)算"<<endl;
        cout<<"(4) 除法運(yùn)算"<<endl;
        cout<<"(5) 乘方運(yùn)算"<<endl;
        cout<<"(6) 返回上一級(jí)"<<endl;
        int a;cin>>a;
        if(a==1) {jiafa();}
        if(a==2){jianfa();}
        if(a==3){chengfa();}
        if(a==4){chufa();}
        if(a==5){chengfang();}
        if(a==6) break;
   }

}
void jiemian()
{
    cout<<"(1) 四則運(yùn)算及冪運(yùn)算"<<endl;
    cout<<"(2) 退出程序"<<endl;
    int xxx;cin>>xxx;
    if(xxx==1){sizeyunsuan();}
    if(xxx==2){system("cls");cout<<"蟹蟹你的使用,歡迎下次使用哦"<<endl;exit(0);}
}
int main()
{
    while(1)
    {
        system("cls");
        jiemian();
    }

    return 0;
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C/C++函數(shù)的調(diào)用約定的使用

    C/C++函數(shù)的調(diào)用約定的使用

    本文主要介紹了C/C++函數(shù)的調(diào)用約定的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 用C++面向?qū)ο蟮姆绞絼?dòng)態(tài)加載so的方法

    用C++面向?qū)ο蟮姆绞絼?dòng)態(tài)加載so的方法

    下面小編就為大家?guī)?lái)一篇用C++面向?qū)ο蟮姆绞絼?dòng)態(tài)加載so的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-12-12
  • EasyC++函數(shù)模板介紹

    EasyC++函數(shù)模板介紹

    這篇文章主要介紹了C++函數(shù)模板介紹,所謂函數(shù)的模板,本質(zhì)上也就是使用泛型來(lái)定義函數(shù),所謂的泛型其實(shí)也就是不定的類(lèi)型,比如說(shuō)我們使用vector的時(shí)候,可以定義各種類(lèi)型的vector,下面我們一起進(jìn)入文章詳細(xì)了解一下C++函數(shù)模板,需要的朋友可以參考一下
    2021-12-12
  • c語(yǔ)言for、while和do-while循環(huán)之間的區(qū)別

    c語(yǔ)言for、while和do-while循環(huán)之間的區(qū)別

    大家好,本篇文章主要講的是c語(yǔ)言for、while和do-while循環(huán)之間的區(qū)別,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • c語(yǔ)言實(shí)現(xiàn)找最大值最小值位置查找

    c語(yǔ)言實(shí)現(xiàn)找最大值最小值位置查找

    這篇文章主要介紹了c語(yǔ)言實(shí)現(xiàn)找最大值最小值位置查找,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • C++ std::list的merge()使用方式與分析

    C++ std::list的merge()使用方式與分析

    這篇文章主要介紹了C++ std::list的merge()使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • C++的QT項(xiàng)目打包成獨(dú)立可執(zhí)行和發(fā)布的exe文件(項(xiàng)目構(gòu)建過(guò)程)

    C++的QT項(xiàng)目打包成獨(dú)立可執(zhí)行和發(fā)布的exe文件(項(xiàng)目構(gòu)建過(guò)程)

    這篇文章主要介紹了C++的QT項(xiàng)目打包成獨(dú)立可執(zhí)行和發(fā)布的exe文件(項(xiàng)目構(gòu)建過(guò)程),本文通過(guò)實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • C/C++ memset方法的誤區(qū)

    C/C++ memset方法的誤區(qū)

    memset 作為對(duì)內(nèi)存初始化的函數(shù),還是有不少坑和誤區(qū)的,今天就來(lái)對(duì)這個(gè)函數(shù)作一個(gè)總結(jié)。避免后期使用不當(dāng)踩入坑,需要的朋友可以參考下
    2021-04-04
  • C 語(yǔ)言基礎(chǔ)教程(一)顏色加亮

    C 語(yǔ)言基礎(chǔ)教程(一)顏色加亮

    C 語(yǔ)言基礎(chǔ)教程(一)顏色加亮...
    2007-02-02
  • C++控制臺(tái)實(shí)現(xiàn)簡(jiǎn)單注冊(cè)登錄

    C++控制臺(tái)實(shí)現(xiàn)簡(jiǎn)單注冊(cè)登錄

    這篇文章主要為大家詳細(xì)介紹了C++控制臺(tái)實(shí)現(xiàn)簡(jiǎn)單注冊(cè)登錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-12-12

最新評(píng)論

唐海县| 淳安县| 广德县| 石林| 普兰店市| 唐河县| 大姚县| 万源市| 恭城| 锦屏县| 哈巴河县| 花垣县| 大邑县| 宿迁市| 商河县| 麻江县| 横峰县| 嘉义县| 吉水县| 浏阳市| 盘锦市| 泗洪县| 宝山区| 中卫市| 定远县| 师宗县| 综艺| 郯城县| 佳木斯市| 锦州市| 吴忠市| 台南县| 西峡县| 华阴市| 南投市| 湖州市| 古浪县| 喜德县| 如东县| 合山市| 大港区|