【三角函數】蒟蒻題解

原題:傳送門c++

本蒟蒻的題解,讓大神們見笑了!

首先,正弦值是個毛線咋們不須要知道(其實我也不咋地瞭解),咱們要知道的是:其實題目就是讓咱們使輸入中最小的數除以最大的數以分數形式呈現,而後約成最簡分數。除此以外,一概無論。

這麼提及來就容易多了。

咳咳,進入代碼講解環節:

#include<bits/stdc++.h> //萬能庫萬歲!!!
using namespace std;
int a,b,c,minn,maxx;
int main()
{
    cin>>a>>b>>c;

輸入部分沒什麼能夠講的,咋們就跳過了。

minn=min(a,min(b,c)),maxx=max(a,max(b,c));
    cout<<minn/__gcd(minn,maxx)<<"/"<<maxx/__gcd(minn,maxx);
    return 0;
}

這一段引用了三個函數:min()、max()、gcd(),若是不講一講它們的做用,致使整個題解變得不清不楚那我就太沒良心了哈。

  • \(min()\):輸入兩個參數,返回小的那一個數。
  • \(max()\):輸入兩個參數,返回大的那一個數。
  • \(gcd()\):輸入兩個參數,返回這兩個參數的最大公因數。

以上是我對以上函數的淺薄認識,一些比較複雜的用法我不太懂,請各位多多指教。

言歸正傳,上面這一行代碼,我用兩個變量分別存儲了輸入的三個數中最大的那個和最小的那個,而後算出它倆的最大公因數進行約分,最後輸出就好了。

完整題解以下:

#include<bits/stdc++.h> //萬能庫萬歲!!!
using namespace std;
int a,b,c,minn,maxx;
int main()
{
    cin>>a>>b>>c;
    minn=min(a,min(b,c)),maxx=max(a,max(b,c));
    cout<<minn/__gcd(minn,maxx)<<"/"<<maxx/__gcd(minn,maxx);
    return 0;
}
相關文章
相關標籤/搜索