做纸箱最少需要多少面积的硬纸板
题目描述
请问做一个尺寸为a*b*c(单位:厘米)的开口的立方体纸箱(只有一个面是不需要封的,其余5个面都需要封起来,这样算开口的),最少需要多少平方厘米的纸。 (6.1.6)
输入
三个整数: abc
输出
制作该纸箱需要的最少硬纸板的面积,一个整数
样例
输入复制
5 3 4
输出复制
74
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if(a<b&&a<c)
{
cout<<(a*b+a*c)*2+c*b;
}
if(b<a&&b<c)
{
cout<<(a*b+b*c)*2+c*a;
}
if(c<b&&c<a)
{
cout<<(c*b+a*c)*2+a*b;
}
return 0;
}
能否构成直角三角形
题目描述
判定三条线段a,b,c能否构成一个直角三角形。如果能构成,请计算出面积(保留一位小数),不然输出
'No。
输入
行三个整数。
输出
面积(保留一位小数)或No
样例
输入复制
3 4 5
输出复制
6.0
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float a,b,c;
cin>>a>>b>>c;
if(a+b>c&&a+c>b&&b+c>a)
{
if(a<b&&b<c)
{
if(a*a+b*b==c*c)
{
cout<<fixed<<setprecision(1)<<a*b/2;
}
else
{
cout<<"No";
}
}
if(b<c&&c<a)
{
if(c*c+b*b==a*a)
{
cout<<fixed<<setprecision(1)<<c*b/2;
}
else
{
cout<<"No";
}
}
if(a<c&&c<b)
{
if(c*c+a*a==b*b)
{
cout<<fixed<<setprecision(1)<<c*a/2;
}
else
{
cout<<"No";
}
}
if(b<a&&a<c)
{
if(a*a+b*b==c*c)
{
cout<<fixed<<setprecision(1)<<a*b/2;
}
else
{
cout<<"No";
}
}
if(c<a&&a<b)
{
if(c*c+a*a==b*b)
{
cout<<fixed<<setprecision(1)<<c*a/2;
}
else
{
cout<<"No";
}
}
if(c<b&&b<a)
{
if(c*c+b*b==a*a)
{
cout<<fixed<<setprecision(1)<<c*b/2;
}
else
{
cout<<"No";
}
}
}
else
{
cout<<"No";
}
return 0;
}
求四个数的最大数
题目描述
已知有四个不等的数,将其中的最大数找出来。
输入
输入只有一行,包括4个整数。之间用一个空格分开。
输出
输出只有一行(这意味着末尾有一个回车符号),包括1个整数
样例
输入复制
1986
输出复制
9
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float a,b,c,d;
cin>>a>>b>>c>>d;
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(c<d)
{
int q = c;
c = d;
d = q;
}
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(c<d)
{
int q = c;
c = d;
d = q;
}
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(c<d)
{
int q = c;
c = d;
d = q;
}
cout<<a;
return 0;
}
判断三个整数是否相邻
题目描述
判断三个整数是否相邻,是输出"TRUE”,否则输出”FALSE”
输入
输入只有一行,包括3个整数。
输出
输出只有一行
样例
输入复制
1 3 2
输出复制
TRUE
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float a,b,c;
cin>>a>>b>>c;
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(a-b==1&&b-c==1)
{
cout<<"TRUE";
}
else
{
cout<<"FALSE";
}
return 0;
}
求任意三位数打乱次序后的最大值
题目描述
任意输入一个三位整数,再把它的次序打乱重新组合一个新的三位整数,使其值最大.
输入
输入只有一行,包括1个整数
输出
输出只有一行(这意味着末尾有一个回车符号),包括1个整数。
输入复制
470
输出复制
740
#include <iostream>
using namespace std;
int main()
{
int n,a,b,c;
cin>>n;
a = n/1%10;
b = n/10%10;
c = n/100%10;
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
if(a<b)
{
int q = a;
a = b;
b = q;
}
if(b<c)
{
int q = b;
b = c;
c = q;
}
cout<<a*100+b*10+c;
return 0;
}