A3:拆位运算(c++)

目录
1605 求一个两位数的个位和十位的和
1606 求一个两位数倒序的结果
1027 求任意三位数各个数位上数字的和
1028 输入一个三位数,把个位和百位对调后输出
1390 四位数的和
1607 两位数运算
1020 算算和是多少
1029 倒序输出一个四位整数
1418 求一个5 位数的各个位之和
1608 三位数运算
1610 买水果
1609 四位数的计算
1611 求六位整数的各个位
1109 加密四位数
                                 
1605 - 求一个两位数的个位和十位的和
题目描述
从键盘读入一个两位的整数 n ,请求出这个两位整数个位和十位的和是多少?
输入
一个两位的整数 n
输出
一个整数,代表 n 个位和十位的和。
样例
输入复制
24
输出复制
6
#include 
using namespace std;
int main()
{
	int n,a1,a2;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	cout<

1606 - 求一个两位数倒序的结果
题目描述
请输出一个两位的整数 n ,倒过来的数,也就是输出这个两位数个位和十位颠倒的结果。
比如:整数 23 倒过来是 32 ,整数 18 倒过来是 81 ,整数 20 倒过来是 2
输入
两位整数 n
输出
n 倒过来的整数。
样例
输入复制
16
输出复制
61
#include 
using namespace std;
int main()
{
	int n,x,a1,a2;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	x = a1*10+a2;
	cout<

1027 - 求任意三位数各个数位上数字的和
题目描述
对于一个任意的三位自然数 X ,编程计算其各个数位上的数字之和 S
输入
输入一行,只有一个整数 x(100<=x<=999)
输出
输出只有一行,包括 1 个整数
样例
输入复制
123
输出复制
6
#include 
using namespace std;
int main()
{
	int s,x,a1,a2,a3;
	cin>>x;
	a1 = x/1%10;
	a2 = x/10%10;
	a3 = x9/100%10;
	s = a1+a2+a3;
	cout<

1028 - 输入一个三位数,把个位和百位对调后输出
题目描述
输入一个三位自然数,然后把这个数的百位数与个位数对调,输出对调后的数
输入
输入一行,只有一个整数 x(100<=x<=999)
输出
输出只有一行,包括 1 个整数。
样例
输入复制
123
输出复制
321
输入复制
120
输出复制
21
#include 
using namespace std;
int main()
{
	int x,n,a1,a2,a3;
	cin>>x;
	a1 = x/1%10;
	a2 = x/10%10;
	a3 = x/100%10;
	n = a1*100+a2*10+a3;
	cout<

1390 - 四位数的和
题目描述
请从键盘读入一个四位整数,求这个四位整数各个位的和是多少?
输入
一个四位整数 n
输出
这个四位数各个位的和
样例
输入复制
3456
输出复制
18
#include 
using namespace std;
int main()
{
	int n,x,a1,a2,a3,a4;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	a3 = n/100%10;
	a4 = n/1000%10;
	x = a1+a2+a3+a4;
	cout<

1607 - 两位数运算
题目描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个两位整数的十位和个位了,她想知道这个整
数的十位 / 个位的结果是多少,请编程帮她实现?(请注意,计算结果要保留 1 位小数)
输入
输入一个两位的正整数 n ,且 n 的个位一定不为 0
输出
输出这个两位正整数十位除以个位的计算结果,结果保留 1 位小数。
样例
输入复制
72
输出复制
3.5
#include 
#include 
using namespace std;
int main()
{
	int n;
	float x,a1,a2;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	x = a2/a1;
	cout<

1020 - 算算和是多少
题目描述
输入一个三位正整数,然后与它倒过来的数相加,输出和。
如:输入 167 ,则和为 167+761=928
输入
只有一行,一个三位正整数。
输出
一个正整数 样例
输入复制
167
输出复制
928
#include 
#include 
using namespace std;
int main()
{
	int n,x,a1,a2,a3;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	a3 = n/100%10;
	x = a1*100+a2*10+a3;
	cout<

1029 - 倒序输出一个四位整数
题目描述
任意读入一个四位整数,颠倒后输出。
输入
输入一行,只有一个整数 x(1000<=x<=9999)
输出
输出只有一行,包括 1 个整数。
样例
输入复制
4567
输出复制
7654
输入复制
1600
输出复制
61
#include 
#include 
using namespace std;
int main()
{
	int n,x,a1,a2,a3,a4;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	a3 = n/100%10;
	a4 = n/1000%10;
	x = a1*1000+a2*100+a3*10+a4;
	cout<

1418 - 求一个 5 位数的各个位之和
题目描述
从键盘读入一个 5 位的正整数,请求出这个 5 位数的各个位之和;
输入
一个 5 位的正整数 n
输出
这个 5 位数的各个位之和
样例
输入复制
12345
输出复制
15
#include 
#include 
using namespace std;
int main()
{
	int n,x,a1,a2,a3,a4,a5;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	a3 = n/100%10;
	a4 = n/1000%10;
	a5 = n/10000%10;
	x = a1+a2+a3+a4+a5;
	cout<

1608 - 三位数运算
题目描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个三位整数的百位、十位和个位了,她想知道
这个整数的(百位 + 十位) / (十位 + 个位)的结果是多少,请编程帮她实现?(请注意,计算结果
要保留 2 位小数)
比如:整数 135 的(百位 + 十位) / (十位 + 个位)的计算结果 = 1+3 / 3+5 = 4 / 8 = 0.50
输入
读入一个三位的正整数 n
n 的各个位中都不含数字 0
输出
输出这个三位正整数(百位 + 十位)除以(十位 + 个位)的计算结果,保留 2 位小数。
样例
输入复制
135
输出复制
0.50
#include 
#include 
using namespace std;
int main()
{
	int n;
	float x,y,a1,a2,a3;
	cin>>n;
	a1 = n/1%10;
	a2 = n/10%10;
	a3 = n/100%10;
	x = a3+a2;
	y = a1+a2;
	cout<

1610 - 买水果
题目描述
小丽所在的小区水果店搞店庆活动,小丽去看了一下,她最喜欢的三种水果的价格分别为:苹果
8.5 / 斤,鸭梨 5.6 / 斤,橙子 6.2 / 斤,三种水果小丽各买了若干斤,请编程帮助小丽计算一
下,她应该付多少钱?
输入
读入三个小数 x y z ,分别代表小丽购买的苹果、鸭梨和橙子的斤数。
输出
输出小丽应付的金额,结果保留 1 位小数。
样例
输入复制
1.2 5.5 3.9
输出复制
65.2
#include 
#include 
using namespace std;
int main()
{
	int n;
	float x,y,z,xx,yy,zz;
	cin>>x>>y>>z;
	xx = x*8.5;
	yy = y*5.6;
	zz = z*6.2;
	cout<

1609 - 四位数的计算
题目描述
小丽在编程课上学会了拆位运算,她已经可以拆出一个四位整数的千位、百位、十位和个位了,她
想知道这个整数的前两位和后两位如果分别组成两个新的整数 x y 的,那么 x+y x/y 的计算结果
分别是多少,请编程帮她实现?(请注意,除法运算的计算结果要保留 1 位小数)
比如:整数 1208 如果将前两位和后两位分别组成两个新数,那么这两个新数分别是 x = 12 y =
8 ,计算结果分别为
x + y = 12 + 8 = 20
x / y = 12 / 8 = 1.5
输入
读入一个四位整数 n
n 的十位和个位不可能同时为 0 ,也就是,读入的整数不可能是类似 1200
样的整数)
输出
按题意要求输出计算结果,分两行输出
1 行输出前两位和后两位组成新数的和
2 行输出前两位和后两位组成新数相除的结果,计算结果保留 1 位小数
样例
输入复制
1208
输出复制
20
1.5
#include 
#include 
using namespace std;
int main()
{
	int n;
	float x,y,a1,a2,a3,a4;
	cin>>n;
    a1 = n/1%10;
    a2 = n/10%10;
    a3 = n/100%10;
    a4 = n/1000%10;
    x = a4*10+a3;
    y = a2*10+a1;
	cout<

1611 - 求六位整数的各个位
题目描述
从键盘读入一个 6 位整数 n ,请求出这个 6 位整数各个位分别是多少,从高位到低位依次输出,每行
一个。
输入
一个 6 位整数 n
输出
1 行输出 6 位数的十万位
2 行输出 6 位数的万位
3 行输出 6 位数的千位
4 行输出 6 位数的百位
5 行输出 6 位数的十位
6 行输出 6 位数的个位
样例
输入复制
123456
输出复制
1
2
3
4
5
6
#include 
#include 
using namespace std;
int main()
{
	int n;
	float a1,a2,a3,a4,a5,a6;
	cin>>n;
    a1 = n/1%10;
    a2 = n/10%10;
    a3 = n/100%10;
    a4 = n/1000%10;
    a5 = n/10000%10;
    a6 = n/100000%10;
	cout<

1109 - 加密四位数
题目描述
某军事单位用 4 位整数来传递信息,传递之前要求先对这个 4 位数进行加密。加密的方式是每一位
都先加上 5 然后对 10 取余数,再将得到的新数颠倒过来。
例如:原数是 1379 ,那么每位加 5 10 取余数的结果为 6824 ,然后颠倒该数,得到新数: 4286 再比如:原数是 2570 ,那么每位加 5 10 取余数的结果为 7025 ,然后颠倒该数,得到新数:
5207
请根据加密要求,写出加密算法!
输入
加密前的 4 位数
输出
加密后的结果
样例
输入复制
1379
输出复制
4286
#include 
#include 
using namespace std;
int main()
{
	int n,x;
	float a1,a2,a3,a4;
	cin>>n;
    a1 = (n/1%10+5)%10;
    a2 = (n/10%10+5)%10;
    a3 = (n/100%10+5)%10;
    a4 = (n/1000%10+5)%10;
    x = a1*1000+a2*100+a3*10+a4;
	cout<

你可能感兴趣的:(c++,算法,开发语言)