三角函数
题目描述
输入一组勾股数 a,b,c 互不相等,用分数格式输出其较小锐角的正弦值。(要求约分。)
输入格式
一行,包含三个正整数,即勾股数 a,b,ca,b,c(无大小顺序)。
输出格式
一行,包含一个分数,即较小锐角的正弦值
输入输出样例
3 5 4 3/5
解
- 找到最大最小值和他们的公约数
#include<iostream>
using namespace std;
int main() {
int a,b,c;
int max=a;
int min=a;
cin >> a >> b >> c;
//最大最小值
max = a > b ? a : (b > c ? b : c);
min = a < b ? a : (b < c ? b : c);
for (int i = min; i >= 2; i--) {
if (min%i==0&&max%i==0) {
min /= i;
max /= i;
}
}
cout << min << "/" << max;
return 0;
}
A B C
【题目描述】
三个整数分别为 A,B,CA,B,C。这三个数字不会按照这样的顺序给你,但它们始终满足条件:A < B < CA<B<C。为了看起来更加简洁明了,我们希望你可以按照给定的顺序重新排列它们。
【输入格式】
第一行包含三个正整数 A,B,CA,B,C,不一定是按这个顺序。这三个数字都小于或等于 100100。第二行包含三个大写字母 AA、BB 和 CC(它们之间没有空格)表示所需的顺序。
【输出格式】
在一行中输出 AA,BB 和 CC,用一个 (空格)隔开。
【输入】
1 5 3
ABC
【输出】
1 3 5
解
- 对数排序 sort
- 用字符减去’A‘作为数组下标
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
int a[3];
char A,B,C;
cin >> a[0] >> a[1] >> a[2];
cin >> A >> B >> C;
sort(a,a+3);
cout << a[A-'A'] << " " <<a[B-'A'] << " "<<a[C-'A'] << " ";
return 0;
}