洛谷入门2-分支结构

一、ISBN号码

解题:

# include<iostream>
# include<string>
using namespace std;

int main()
{
    char isbn[14],c;//把ISBN码放入数组中、c是计算出的识别码
    cin>>isbn;
    int k=0,sum=0;//
    for(int i=0;i<11;i++)//不包括识别码
    {
        if(isbn[i]!='-')
        {
            k++;
            sum+=k*(isbn[i]-'0');
        }
    }
    sum%=11;
    if(sum==10)
    c='X';
    else
    c= sum+'0';
    if(c==isbn[12])
    cout<<"Right";
    else
    {
        isbn[12]=c;
        cout<<isbn;
    }
    return 0;
}

 

二、小鱼的航程

 解题

# include<iostream>
using namespace std;

int main()
{
    int x,n,sum=0;;//从周几算起、经过多少天、一共游了多少、星期几;
    cin>>x>>n;
    for(int i=0;i<n;i++)
    {
        if(x!=6&&x!=7)
        sum+=250;
        if(x==7)
        x=0;
        x++;
    }
    cout<<sum;
    return 0;
}

 

三、三角函数

 

 解题:

# include<iostream>
# include<algorithm>

using namespace std;

int main()
{
    int a,b,c;
    cin>>a>>b>>c;
    //对三条边进行排序
    if(a>b) swap(a,b);
    if(a>c) swap(a,c);
    if(b>c) swap(b,c);
    int gcd;//最大公约数
    //找出a和c的最大公约数,进行约分
    for(int i=a;i>0;i--)
    {
        if(c%i==0&&a%i==0)
        {
            gcd=i;
            break;
        }
    
    }
    cout<<a/gcd<<"/"<<c/gcd;
    return 0;
}

 

四、ABC

 

 

 

 解题:

# include<iostream>
# include<algorithm>
using namespace std;

int main()
{
    int a[3];
    char A,B,C;
    for(int i=0;i<3;i++)
    {
        cin>>a[i];
    }
    cin>>A>>B>>C;
    //要输出正确的ABC顺序,先把输入的数字排序
    sort(a,a+3);
    cout<<a[A-'A']<<" "<<a[B-'A']<<" "<<a[C-'A'];//根据下标输出正确的顺序
    return 0;
}

 

五、三角形分类

  

解题:

# include<iostream>
# include<cmath>
# include<iomanip>
using namespace std;

int main()
{
    int a,b,c;
    cin>>a>>b>>c;
    //将三条边排序
    if(a>b) swap(a,b);
    if(a>c) swap(a,c);
    if(b>c) swap(b,c);
    if(a+b<=c)//判断是否是三角形
    {
        cout<<"Not triangle"<<endl;
        return 0;
    }
    if(a*a+b*b==c*c)//判断三角形形状
    {
        cout<<"Right triangle"<<endl;
    }
    else if((a*a+b*b) < c*c )
    {
        cout<<"Obtuse triangle"<<endl;
    }
    else if((a*a+b*b) > c*c)
    {
        cout<<"Acute triangle"<<endl;;
    }
    if(a==b||b==c||c==a)//判断是否是特殊三角形
    cout<<"Isosceles triangle"<<endl;
    if(a==b&&b==c)
    cout<<"Equilateral triangle"<<endl;
    return 0;
}

 

posted @ 2020-09-15 21:46  inss!w!  阅读(192)  评论(0编辑  收藏  举报