2017.03.18
5个数求最值
描述
设计一个从5个整数中取最小数和最大数的程序
输入
输入只有一组测试数据,为五个不大于1万的正整数
输出
输出两个数,第一个为这五个数中的最小值,第二个为这五个数中的最大值,两个数字以空格格开。
样例输入
1 2 3 4 5
样例输出
1 5
代码实现
#include <iostream>
using namespace std;
int main(){
int num[5];
int min,max;
for(int i=0;i<5;i++){
cin>>num[i];
}
min = max = num[0];
for(int j=0;j<5;j++){
if(min>num[j]){
min = num[j];
}
if(max < num[j]){
max = num[j];
}
}
cout<<min<<" "<<max;
return 0;
}
水仙花数
描述
请判断一个数是不是水仙花数。
其中水仙花数定义各个位数立方和等于它本身的三位数。
输入
有多组测试数据,每组测试数据以包含一个整数n(100<=n<1000)
输入0表示程序输入结束。
输出
如果n是水仙花数就输出Yes
否则输出No
样例输入
153
154
0
样例输出
Yes
No
代码实现
#include <iostream>
#include<stdio.h>
#include<vector>
using namespace std;
int main(){
vector<string> v;
int temp;
while(true){
cin>>temp;
if(temp == 0){
break;
}else{
int sum = 0,num = temp;
for(;num>0;num/=10){
sum += (num%10) * (num%10)*(num%10);
}
if(temp == sum){
v.push_back("Yes");
}else{
v.push_back("No");
}
}
}
for(int i=0;i<v.size();i++){
cout<<v[i]<<endl;
}
return 0;
}
三个数从小到大排序
描述
现在要写一个程序,实现给三个数排序的功能
输入
输入三个正整数
输出
给输入的三个正整数排序
样例输入
20 7 33
样例输出
7 20 33
代码实现
#include <iostream>
using namespace std;
int main(){
int num[3];
for(int i=0;i<3;i++)
cin>>num[i];
for(int i=0;i<3;i++){
int min = num[i];
for(int j=i+1;j<3;j++){
if(num[i]>num[j]){
int temp = num[j];
num[j] = num[i];
num[i] = temp;
}
}
}
for(int i=0;i<3;i++){
cout<<num[i]<<" ";
}
return 0;
}