1 .级数求和
已知 Sn = 1 + 1/2 + 1/3 + … + 1/n 显然对于任意一个整数k,当n足够大的时候,Sn 大于k. 现给出一个整数k(1 <= k <= 15) ,要求计算出一个最小的n,使得Sn > k
输入:
一个整数k(1 <= k <= 15)
输出:
一个整数
样例输入:
1
样例输出:
2
代码实现:
#include <iostream>
using namespace std;
int main(){
int k,count = 1;
float s = 0;
cin >> k;
while(s <= k){
s += 1.0/count;
count++;
}
count--;
cout << count << endl;
return 0;
}
2 .数字反转
给定一个整数,请将该数各位上的数字反转得到一个新数.
输入:
一行,一个整数n (-1,000,000,000 <= n <= 1,000,000,000)
输出:
一行,一个整数,表示反转后的新数
样例输入1 #123
样例输入2 #-380
样例输出1 #321
样例输出2 #-83
代码实现:
#include <iostream>
using namespace std;
int main(){
int n,s = 0;
cin >> n;
if(n < 0){
cout << "-";
n = -n;
}
while(n){
s = s * 10 + n % 10;
n /= 10;
}
cout << s << endl;
return 0;
}
记得大一用的数组写的,现在用循环.