C++短除法运算

1962 - 数值计算                                                                                                                                               

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int tmp=n;
	int cnt=0;
	while(tmp!=0)
	{
		cnt++;
		tmp=tmp/10;
	}
	cout<<cnt<<endl;
	tmp=n;
	int sum=0;
	while(tmp!=0)
	{
		sum=sum*10+tmp%10;
		tmp=tmp/10;
	}
	int i=1;
	while(i<=cnt)
	{
		cout<<sum%10<<" ";
		sum=sum/10;
		i++;
	}
	cout<<" "<<endl;
	while(n!=0)
	{
		cout<<n%10;
		n=n/10;
	}
	
	
	return 0;
}

题目描述 

给出一个不多于5位的非负整数,要求 

1、求出它是几位数  

2、分别输出每一位数字  

3、按逆序输出各位数字,例如原数为321,应输出123 

输入 

一个不大于5位的正整数 

输出 

三行 

第一行 位数  

第二行 用空格分开的每个数字  

第三行 按逆序输出这个数

1121 - “倒”数      

 

#include<iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	while(n!=0)
	{
		cout<<n%10;
		n=n/10;
	}
	
	
	return 0;
}

                                                                       

题目描述 

输入一个正整数N        ( 0 < N < 2147483647 ),将这个数倒着合成一个新数后输出。  

比如:543,倒过来是345         (请注意:34500,倒过来是543,不是00543)! 

输入 

一行,一个正整数N。 

输出 

一行,一个正整数。 

1469 - 数的统计        

#include<iostream>
using namespace std;
int main()
{
	int n,x,a,q,ns1,cnt;
	cin>>n>>x;
	cnt = 0;
	a = 1;
	while(a<=n)
	{
		q = a;
		while(q!=0)
		{
	    	ns1 = q%10;
	    	if(ns1==1)
	    	{
	    	    cnt++;	
	    	}
	    	q = q/10;
		}
		a++;
	}
	cout<<cnt;
	return 0;
}

                                                                       

题目描述 

试计算在区间1到n的所有整数中,数字x(0≤x≤9)共出现了多少次?例如,在 1到11中,即在  

1,2,3,4,5,6,7,8,9,10,11中,数字1出现了4次。再比如:1到11中,数字0只出现了1次。 

输入 

2个整数n和x之间用一个空格隔开。(n是一个int范围内的整数) 

输出 

1个整数,表示x出现的次数。

1511 - 数字之和为13的整数            

#include<iostream>
using namespace std;
int main()
{
	int n,sum,nn,a,cnt;
	cin>>n;
	sum = 0;
	cnt = 0;
	a = 1;
	while(a<=n)
	{
		while(n!=0)
	    {
    		nn = n%10;
    		n = n/10;
    		sum = sum+n;
    	}
    	if(sum = 15)
    	{
    		cnt++;
    	}
		a++;
	}
	cout<<cnt<<endl;
	return 0;
}

                                                                  

题目描述 

求出 1~n1 n 范围内的整数,使其数字之和为 1313 ,请问这样的数有多少个? 

例如:数 8585  ,其数字之和为 8+5=138+5=13  ;数 373373 ,其数字之和为 3+7+3=133+7+3=13 。 

输入 

一个整数 nn (n \le 10000000n≤10000000); 

输出 

输出一个整数,代表符合条件数的总个数。 

1149 - 回文数个数                

#include<iostream>
using namespace std;
int main()
{
	int n,sum,a,q,cnt,z;
	z = 1;
	cin>>n;
	cnt = 0;
	while(z<=n)
	{
		q = z;
    	sum = 0;
    	while(z!=0)
    	{
    		a = z%10;
    		sum = sum*10+a;
    		z = z/10;
    	}
    	if(q==sum)
    	{
    		cnt++;
    	}
    	z = q;
    	z++;
	}
	cout<<cnt;
	return 0;
}

                                                                   

题目描述 

一个正整数,正读和反读都相同的数为回文数。 

例如 2222  , 131131  , 24422442  , 3707337073  , 66  ,\dots… 所有 11 位数都是回文数。给出一 

个正整数 nn      ( 1 \le n \le 100001≤n≤10000 ),求出 1,2, \dots ,n1,2,…,n 之中(包括 11 和 nn )的回 

文数的个数。 

输入 

任意给定一个正整数 nn           ( 0 \lt n \le 100000<n≤10000 ) 

输出 

一个正整数,表示[ 1,n1,n ]之间的回文数的个数。

1846 - 阿尔法乘积        

#include<iostream>
using namespace std;
int main()
{
	int n,a,sum;
	cin>>n;
	while(n>=9)
	{
		sum = 1;
		while(n!=0)
		{
			a = n%10;
			if(a!=0)
			{
				sum = sum*a;
			}			
			n = n/10;
		}
		n = sum;
	}
	cout<<n;
	return 0;
}

                                                                          

题目描述 

计算一个整数的阿尔法乘积。对于一个整数 x* 来说,它的阿尔法乘积是这样来计算的:如果 x是一个个 

位数,那么它的阿尔法乘积就是它本身;否则的话,x* 的阿尔法乘积就等于它的各位非 0 的数字相乘所 

得到的那个整数的阿尔法乘积。 

例如:40182243124018224312 的阿尔法乘积等于 8  ,它是按照以下的步骤来计算的: 

4×1×8×2×2×4×3×1×2 → 3072 →3×7×2 → 42 → 4×2 → 8 ; 

编写一个程序,输入一个正整数(该整数的值在 int 范围内),输出它的阿尔法乘积。 

输入 

输入只有一行,即一个正整数。 

输出 

输出相应的阿尔法乘积。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值