C++语言

题目描述
请问一个正整数n能够整除几次2?
比如:4可以整除2次2,100可以整除2次2,9可以整除0次2
 

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    int n;
	cin>>n;
	int cnt=0;
	while(true)
	{
	    if(n%2!=0)  break;
		n =n/2;
		cnt++;
	}
	cout<<cnt;
	return 0;
}

题目描述
小球从100米高处自由落下,着地后又弹回高度的一半再落下。经过多少次落地后,小
球弹起的高度才会低于0.5米?
 

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    float n;
	cin>>n;
	int cnt=0;
	while(true)
	{
		if(n<0.5) break;
		n=n/2;
		cnt++;
	}
	cout<<cnt;
	return 0;
}

题目描述
一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称 数(即这个数从
左向右读和从右向左读是完全一样的),为95859。两小时后里程表上 出现了一个新的对称数
。问该车的速度是多少?新的对称数是多少?
 

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    int n;
	cin>>n;
	while(true)
	{
		n++;
		if(n%10==n/10000%10&&n/10%10==n/1000%10) break;
	}
	cout<<(n-95859)/2<<endl;
	cout<<n;
	return 0;
}

题目描述
韩信有一对士兵,他想知道有多少人,他就让士兵报数,如果按照1到5报数,最末一个士兵报
的数为1;按照1到6报数,最末一个士兵报的数为5;按照1到7报数,最末一个士兵报的数为4
;最后再按1到11报数,最末一个士兵报的数为10,请问韩信这队士兵最少有多少人?
 

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    int n=0;
	while(true)
	{
		n++;
		if(n%5==1&&n%6==5&&n%7==4&&n%11==10) break;
	}
	cout<<n;
	return 0;
}

题目描述
爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,则最最后剩一阶,若每步跨3 
阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。只有每次跨7阶,
最后才正好一阶不剩。请问这条阶梯最少共有多少阶?
 

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    int  n=0;
    while(true)
	{
		if(n%2==1&&n%3==3&&n%5==4&&n%6==5&&n%7==0) break;
		n++;
	}
	cout<<n;
	return 0;
}

题目描述
日本一位中学生发现一个奇妙的定理,请角谷教授证明,而教授无能为力,于是产生了
角谷猜想。猜想的内容:任给一个自然数,若为偶数则除以2,若为奇数则乘3加1,得
到一个新的自然数后按上面的法则继续演算。若干次后得到的结果必为1。请编写代码
验证该猜想:求经过多少次运算可得到自然数1。 如:输入22,则计算过程为。
22/2=11 11×3+1=34 34/2=17 17×3+1=52 52/2=26 26/2=13 13×3+1=40 40/2=20 
20/2=10 10/2=5 5×3+1=16 16/2=8 8/2=4 4/2=2 2/2=1 经过15次运算得到自然数1

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    long long a;
    cin>>a;
	int cnt;
	while(true)
	{
		if(a==1) break;
		else if(a%2==0) a = a/2;
		else a =a*3+1;
		cnt++;
	}
	cout<<cnt;
	return 0;
}

题目描述
小明开心的在游泳,可是他很快难过的发现,自己的力气不够,游泳好
累哦。已知小明每换一次气能游2米,可是随着越来越累,力气越来越
小,他接下来的每换一次气都只能游出上一步距离的98%。现在小明想
知道,如果要游到距离x米的地方,他需要总共换多少次气呢。请你编
程解决这个问题。
 

#include<iostream>//头文件
#include<iomanip>
using namespace std;//命名空间
int main()//主函数
{
    float a;
    cin>>a;
	int cnt,x;
	while(true)
	{
		if(a<=x) break;
		else x =x+x*0.98;
		cnt++;
	}
	cout<<cnt;
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值