东方博宜OJ题解_1109: 【入门】加密四位数-程序员宅基地

技术标签: c++  后端  开发语言  

目录

Ⅰ.基本运算

3.拆位练习

1605: 【入门】求一个两位数的个位和十位的和

1606: 【入门】求一个两位数倒序的结果

1027: 【入门】求任意三位数各个数位上数字的和

1028: 【入门】输入一个三位数,把个位和百位对调后输出

1390: 【入门】四位数的和

1607: 【入门】两位数运算

1020: 【入门】算算和是多少

1029: 【入门】倒序输出一个四位整数

1418: 【入门】求一个5位数的各个位之和

1608: 【入门】三位数运算

1610: 【入门】买水果

1609: 【入门】四位数的计算

1611: 【入门】求六位整数的各个位

1109: 【入门】加密四位数

Ⅱ.分支

1.双分支

1303: 【入门】冷饮的价格(1)

1033: 【入门】判断奇偶数

1302: 【入门】是否适合晨练?

1632: 【入门】需要几辆车

XIV.递归进阶

1.用递归改造循环

1696: 【入门】请输出1~n之间所有的整数

1697: 【入门】请输出n~1之间所有的整数


Ⅰ.基本运算

前两个练习不想写了,实在是太简单了没话说(主要是没时间写,以后有空再补上)

3.拆位练习

1605: 【入门】求一个两位数的个位和十位的和

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n,g=0,s=0;
    cin>>n;
    g=n%10;
    s=n/10;
    cout<<g+s;
    return 0;
}

1606: 【入门】求一个两位数倒序的结果

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n,g=0,s=0;
    cin>>n;
    g=n%10;
    s=n/10;
    if(g==0){
        cout<<s;
    }else{
        cout<<g<<s;
    }
     
    return 0;
}

1027: 【入门】求任意三位数各个数位上数字的和

#include<bits/stdc++.h>
using namespace std;
int main(){
	int x,g,s,b=0;
	cin>>x; 
	g=x%10;
	s=x/10%10;
	b=x/100;
	cout<<g+s+b;
	

	return 0;
}

1028: 【入门】输入一个三位数,把个位和百位对调后输出

本人题解(较繁琐,可参考下方较优题解):

#include<bits/stdc++.h>
using namespace std;
int main(){
	int x,g,s,b=0;
	cin>>x; 
	g=x%10;
	s=x/10%10;
	b=x/100;
	if(g==0&&s==0){
		cout<<b;
	}else if(g==0){
		cout<<s<<b;
	}else{
		cout<<g<<s<<b;
	}
	
	

	return 0;
}

较优题解(转载于东方博宜程序题解_sphile-程序员宅基地):

#include <iostream>
using namespace std;

int main(){
	int n;
	cin>>n;
	cout<<n%10*100+n/100+n%100/10*10;
	return 0;
}



1390: 【入门】四位数的和

#include<bits/stdc++.h>
using namespace std;
int main(){
	int x,t,sum=0;
	cin>>x;
	t=x;
	while(t>0){
		sum+=t%10;
		t/=10;
	}
	cout<<sum;
	return 0;
}

1607: 【入门】两位数运算

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n;
	double sum=0,g=0,s=0;
	cin>>n;
	g=n%10;
	s=n/10;
	sum=s/g;
	printf("%0.1f",sum);
	return 0;
}

1020: 【入门】算算和是多少

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,g,s,b,temp=0,sum=0;
	cin>>n;
	g=n%10;
	s=n%100/10;
	b=n/100;
	temp=(g*100)+(s*10)+b;
	sum=n;
	cout<<temp+sum;
	return 0;
}

1029: 【入门】倒序输出一个四位整数

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,g,s,b,q,sum=0;
	cin>>n;
	g=n%10;
	s=n%100/10;
	b=n%1000/100;
	q=n/1000;
	sum=g*1000+s*100+b*10+q;
	cout<<sum;
	return 0;
}

1418: 【入门】求一个5位数的各个位之和

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,g,s,b,q,w,sum=0;
	cin>>n;
	g=n%10;
	s=n%100/10;
	b=n%1000/100;
	q=n%10000/1000;
	w=n/10000;
	sum=g+s+b+q+w;
	cout<<sum;
	return 0;
}

1608: 【入门】三位数运算

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n;
	double g,s,b,sum=0;
	cin>>n;
	g=n%10;
	s=n%100/10;
	b=n/100;
	sum=(b+s)/(s+g);
	printf("%.2f",sum);
	return 0;
}

1610: 【入门】买水果

#include<bits/stdc++.h>
using namespace std;
int main(){
	double a,b,c,sum=0;
	cin>>a>>b>>c;
	sum=8.5*a+5.6*b+6.2*c;
	printf("%.1f",sum);
	return 0;
}

1609: 【入门】四位数的计算

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n;
	cin>>n;
	double g,s,b,q,x,y;
	g=n%10;
	s=n%100/10;
	b=n%1000/100;
	q=n/1000;
	x=q*10+b;
	y=s*10+g;
	cout<<x+y<<endl;
	printf("%.1f",x/y);
	
	return 0;
}

1611: 【入门】求六位整数的各个位

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,g,s,b,q,w,sw;
	cin>>n;
	g=n%10;
	s=n%100/10;
	b=n%1000/100;
	q=n%10000/1000;
	w=n%100000/10000;
	sw=n/100000; 
	cout<<sw<<endl<<w<<endl<<q<<endl<<b<<endl<<s<<endl<<g;
	
	return 0;
}

1109: 【入门】加密四位数

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,g,s,b,q;
	cin>>n;
	g=n%10+5;
	s=n%100/10+5;
	b=n%1000/100+5;
	q=n/1000+5;
	g%=10;
	s%=10;
	b%=10;
	q%=10;
	cout<<g<<s<<b<<q;
	return 0;
}

Ⅱ.分支

1.双分支

1303: 【入门】冷饮的价格(1)

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    double sum;
    cin>>n;
    if(n>=10){
        sum=2*n;
    } else{
        sum=2.2*n;
    }
    printf("%.1f",sum);
     
    return 0;
}

1033: 【入门】判断奇偶数

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    if(n%2==0){
        cout<<"y e s";
        return 0;
    }else{
        cout<<"n o";
        return 0;
    }
     
 
    return 0;
}

1302: 【入门】是否适合晨练?

#include<bits/stdc++.h>
using namespace std;
int main(){
	int t;
	cin>>t;
	if(t>=20&&t<=30){
		cout<<"OK";
	} else{
		cout<<"NO";
	}
	
	return 0;
}

1632: 【入门】需要几辆车

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,sum;
	cin>>n;
	sum=n/30;
	if(n%10==0){
		if(sum==0){
			cout<<sum+1;
		}else{
			cout<<sum;
		}	
	}else{
		cout<<sum+1;
	}
	
	
	return 0;
}
中间的暂时不写,先写递归

XIV.递归进阶

1.用递归改造循环

前几题不知道为啥,明明一个循环就可以做,还放到递归里。

1696: 【入门】请输出1~n之间所有的整数

递归做法:

#include<bits/stdc++.h>
using namespace std;
int n;
void count(int i){
	if(i==1){
		cout<<i<<endl;
	}else{
		count(i-1);
		cout<<i<<endl;
		
	}
}
int main(){
	cin>>n;
	count(n);

	return 0;
}

for循环做法:

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,sum;
	cin>>n;
	for(int i=1;i<=n;i++){
		cout<<i<<endl;
	}
	
	return 0;
}

1697: 【入门】请输出n~1之间所有的整数

递归做法:

#include<bits/stdc++.h>
using namespace std;
int n;
void count(int i){
	if(i==n){
		cout<<i<<endl;
	}else{
		count(i+1);
		cout<<i<<endl;
		
	}
}
int main(){
	cin>>n;
	count(1);

	return 0;
}

while循环做法(官方题解):

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chen15155103467/article/details/121067899

智能推荐

php 得到ashx,ASP.NET-C# Post 一般处理程序(ashx)并得到返回值-程序员宅基地

文章浏览阅读166次。var postUrl = "http://xxx.com/xxp/LoginInfo.ashx";var postString = "method=CheckPW&id=4454556289&pwd=&checkword=8888&sign=";HttpWebRequest httpRequset = null;HttpWebResponse httpRespon..._ashx处理实现响应post请求示例代码

Vim使用之高亮关键字方法-程序员宅基地

文章浏览阅读3.4k次。请注意,以上命令只会影响当前打开的 Vim 编辑器窗口。如果您想要永久更改 Vim 的配置,可以将命令添加到。是您想要使用的颜色主题的名称。例如,要使用 “morning” 主题,可以输入命令。查看当前可用的颜色主题:在 Vim 中,输入命令。,然后按下 Tab 键即可查看当前可用的颜色主题。更改当前的颜色主题:在 Vim 中,输入命令。开启语法高亮:在 Vim 中,输入命令。关闭语法高亮:在 Vim 中,输入命令。

lufylegend.js的简单使用-程序员宅基地

文章浏览阅读826次。js 引入<script type="text/javascript" src="js/lufylegend/lufylegend-1.10.1.min.js"></script>html<div id="legend"></div><img src="" alt="" class="photo_img">..._lufylegend.js

MongoDB入门级保姆教程_mongodb保姆间教程-程序员宅基地

文章浏览阅读687次,点赞3次,收藏4次。MongoDB是文档数据库,旨在简化开发和扩展,本文主要介绍关键概念和基础语句并提供操作和管理上的注意事项。_mongodb保姆间教程

输入若干个正整数,判断每个数从高位到低位各位数字是否按值从小到大排列_输入一批正整数(以零或负数为结束标志),判断每个数从高位到低位的各位数字是否按-程序员宅基地

文章浏览阅读1.1w次,点赞7次,收藏16次。4-2输入若干个正整数,判断每个数从高位到低位各位数字是否按值从小到大排列,请根据题意,将程序补充完整。#include <stdio.h>int fun1(int m);int main(void){ int n; scanf("%d", &n); while (n > 0) { if(fun1(..._输入一批正整数(以零或负数为结束标志),判断每个数从高位到低位的各位数字是否按

IDEA用户登入简易版_idea中的个人博客网址的登录网址是那个去那里找-程序员宅基地

文章浏览阅读281次。<!DOCTYPE html><html lang="en"><head> <style> form{ border: 10px solid cornflowerblue;border-radius: 10px } </style> <meta charset="UTF-8"> <title>用户注册</title>..._idea中的个人博客网址的登录网址是那个去那里找

随便推点

浙大 | PTA 习题7-7 字符串替换 (15分)_例题3-7 统计英文字母和数字字符[2] 分数 15 作者 颜晖 单位 浙大城市学院 本题要-程序员宅基地

文章浏览阅读2.3k次。本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:原字母 对应字母 A Z B Y C X D W … … X C Y B Z A输入格式:输入在一行中给出一个不超过80个字符、并以回车结束的字符串。输出格式:输出在一行中给出替换完成后的字符串。输入样例:Only the 11 CAPItaL LeTtERS are replaced.输出样例:..._例题3-7 统计英文字母和数字字符[2] 分数 15 作者 颜晖 单位 浙大城市学院 本题要

Bioinformatics | 预测药物-药物相互作用的多模态深度学习框架_ddimdl-程序员宅基地

文章浏览阅读4.1k次,点赞4次,收藏38次。作者 | 朱玉磊审稿 | 李芬今天给大家介绍来自华中农业大学信息学院章文教授课题组在Bioinformatics上发表的一篇关于预测药物与药物相互作用事件的文章。作者提出了一个多模态深度..._ddimdl

制作一个有趣的QQ机器人_qrspeed官网-程序员宅基地

文章浏览阅读7.7k次,点赞19次,收藏72次。如何制作一个有趣的QQ机器人制作一个好玩的QQ机器人(只能手机进行操作哦)题记:这个机器人用来整蛊兄弟或者是在朋友面前装逼都是不错的选择QQ机器人简介机器人效果图机器人制作方法机器人必下软件如何制作机器人词库的编写编写词库的软件词库的编写规则给大家找了一个QR下载的官网(不想加群的兄弟姐妹看这个)结尾题记:这个机器人用来整蛊兄弟或者是在朋友面前装逼都是不错的选择)QQ机器人简介QQ机器人,根据字面意思,就是利用特定的代码,使一个QQ账号成功具备自我反应并作出应答,而这也是我今天想要教你们做的一款最_qrspeed官网

「离散数学」是一门什么样的学科_离散数学学什么-程序员宅基地

文章浏览阅读2.4k次,点赞6次,收藏13次。写这篇文章的动机是想探讨从离散数学开始入门数理逻辑的路径以及离散数学与数理逻辑之间的关系。以学习数理逻辑为目的学习离散数学,而一般的以学习计算机为目的的学习还是有相当的不同,最大的不同就是:以数理逻辑为目的的学习,应当以「证明」 — — 形式证明为目的,这其中包括了关于形式证明的理论 — — 一阶理论的句法和语义,以及关于形式证明的实践 — — 证明框架和策略。学习的中心内容有两个:「语言」 — — 「 一阶语言」;「结构」 — — 数学中关于「结构」的思想、概念、种类、实例以及「结构」和「语言」的关系。_离散数学学什么

使用 vue-cli 遇到的坑1 - 打包后显示空白_vue cli 组件导出为null-程序员宅基地

文章浏览阅读248次。输入 npm run build 打包后显示空白解决方法1. 打开 config 文件夹里的 index.js 文件。找到 build 下面的 assetsPublicPath,将原来的assetsPublicPath: '/'修改为assetsPublicPath: './'2.打开 build 文件夹里的 utils.js,在下图位置添加 publicPath: '../../'..._vue cli 组件导出为null

嵌入式Linux(二十二)Linux内核分析及移植_嵌入式内核移植qspi-程序员宅基地

嵌入式Linux内核分析及移植的文章介绍了编译Linux内核的过程,并提供了一个编译脚本。作者使用NXP提供的内核进行移植,并在自己的开发板上进行测试。在启动Linux后,可以使用ifconfig命令查看网络接口,并使用ifconfig eth0 up命令启动ENET2接口。