【Python 实例】回文数判断
题目:
判断输入的字符串是否为回文数
源代码:
"""
string_reverse_output():反向输出字符串的自定义函数
pending_character:待处理字符串
string_length:检测字符串长度
reverse_output_list:以列表形式显示的反向输出结果
reverse_output:以字符串形式显示的反向输出结果
calculation_results:算术运算的结果
front_end:待测整数的前端
rear_end:待测整数的后端
"""
reverse_output_list = [] # 定义全局变量的初始值
def string_reverse_output(pending_character, string_length):
global reverse_output_list # 定义全局变量
if string_length == 0:
return
else:
x = pending_character[string_length - 1]
reverse_output_list.append(x)
"""递归"""
string_reverse_output(pending_character, string_length - 1)
pending_character = input("请输入一行数字:") #提示用户输入
string_length = len(pending_character) #获取字符串长度
if string_length % 2 == 0: #当字符串长度为二的倍数时执行以下代码
"""得到字符串下标,用作拆分字符串,下标必须是整形,不能是浮点数,如果不加int,calculation_results 的类型是浮点数"""
calculation_results = int(string_length / 2)
front_end = int(pending_character[0:calculation_results]) #将字符串拆分为两部分,这是字符串的前面的部分
rear_end = pending_character[calculation_results:] #将字符串拆分为两部分,这是字符串的后面的部分
string_reverse_output(rear_end,calculation_results) #将字符串后面部分用自定义函数String_reverse_output()处理,得到反转的列表
reverse_output = int("".join(reverse_output_list)) #将反转的列表组合成字符串
if reverse_output == front_end: #如果字符串的前部分等于字符串的后面部分反转后得到的,即该整数为回文数
print ("该整数是回文数")
else:
print ("该整数不是回文数")
elif string_length % 2 == 1: #当字符串长度不是二的倍数时执行以下代码
"""得到字符串下标,用作拆分字符串,下标必须是整形,不能是浮点数,如果不加int,Calculation_results 的类型是浮点数"""
calculation_results = int((string_length - 1) / 2)
front_end = int(pending_character[0:calculation_results]) #将字符串拆分为三个部分,这是字符串的最前面的部分
rear_end = pending_character[calculation_results+1:] #将字符串拆分为三个部分,这是字符串的最后面的部分
string_reverse_output(rear_end,calculation_results) #将字符串最后面的部分用自定义函数String_reverse_output()处理,得到反转的列表
reverse_output = int("".join(reverse_output_list)) #将反转的列表组合成字符串
if reverse_output == front_end: #如果字符串最前面的部分等于字符串最后面的部分反转后得到的,即该整数为回文数
print ("该整数是回文数")
else:
print ("该整数不是回文数")
else:
print ("请输入一个整数")
运行结果:
PS D:\$RECYCLE.BIN> python3 'D:\***\回文数判断.py'
请输入一行数字:12345
该整数不是回文数
PS D:\$RECYCLE.BIN> python3 'D:\***\回文数判断.py'
请输入一行数字:12321
该整数是回文数
PS D:\$RECYCLE.BIN> python3 'D:\***\回文数判断.py'
请输入一行数字:123456
该整数不是回文数
PS D:\$RECYCLE.BIN> python3 'D:\***\回文数判断.py'
请输入一行数字:123321
该整数是回文数
PS D:\$RECYCLE.BIN>
这是反转字符串的模块:https://blog.csdn.net/qq_42875125/article/details/106381226
【Python 实例】回文数判断的更多相关文章
- 整数回文数判断 Python
判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 输入:123 输出:false 输入:-121 输出:false 输入:121 输出:true 输入:1 ...
- 练习三十:Python回文数判断编程练习。
说到回文数,大家可能会比较的陌生,但是在我们的日常生活中常会遇到这样的数字,只是你不知道它是回文数罢了. 例如:12321,这组数字就是回文数. 设n是一任意自然数.若将n的各位数字反向排列所得自然数 ...
- python3 练习题100例 (二十六)回文数判断
题目内容: 给一个5位数,判断它是不是回文数,是则输出yes,不是则输出no. 例如12321是回文数,它的个位与万位相同,十位与千位相同. 输入格式: 共一行,为一个5位数. 输出格式: 共一行,y ...
- leetcode isPalindrome (回文数判断)
回文很简单,就是正着读和反着读一样,要判断一个数是否为回文数只需要判断正反两个是不是相等即可. 再往深了想一下,只需要判断从中间分开的两个数一个正读,一个反读相等即可. 代码: class Solut ...
- c#,回文数判断
回文数:将数值反过来.如:123 反过来是321 ,如果两个数相等,则是回文,否则不是 using System; namespace ConsoleApp1 { class Program { st ...
- 用python输出回文数
一个b站上的朋友问我,怎么返回五位数的回文数的个数. 我首先百度回文数的概念,就是正读和倒读都一样的数字,例如:10001,99899 等等 数字的位数拆分一头雾水,思来想去,用字符串的方法完美解决! ...
- java基础——回文数判断
/** * 题目描述: * 有这样一类数字,他们顺着看和倒着看是相同的数,例如:121,656,2332等,这样的数字就称为:回文数字.编写一个函数,判断某数字是否是回文数字. * 要求实现方法: * ...
- C++题目:回文数判断
Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same back ...
- C 语言实例 - 判断回文数
C 语言实例 - 判断回文数 判断一个数是否为回文数. 设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数.例如,若n=,则称n为一回文数:但若n=,则n不是回文数 ...
随机推荐
- C/C++编程语言制作《游戏内存外挂》
通过C/C++编程语言编写一个简单的外挂,通过 API 函数修改游戏数据,从而实现作弊功能 对象分析要用的 API 函数简单介绍编写测试效果. 下面是我整理好的全套C/C++资料,加入天狼QQ7269 ...
- 题解:2018级算法第四次上机 C4-商人卖鱼
题目描述: 样例: 实现解释: 需要简单分析的贪心题 知识点: 贪心,自定义排序,提前存储 题目分析: 卖鱼,鱼卖出去需要时间,鱼没被卖出去之前需要吃饲料 则有,如果卖a鱼的话b鱼会吃饲料c份,而卖b ...
- HotSpot的对象模型(6)
接着上一篇,我们继续来讲oopDesc相关的子类. 3.instanceOopDesc类 instanceOopDesc类的实例表示除数组对象外的其它对象.在HotSpot中,对象在内存中存储的布局可 ...
- 00-Windows系统MySQL数据库的安装
1.数据库安装 官网下载MySQL数据库. 下载安装包后解压缩到相关目录,我解压缩到:D:\360极速浏览器下载\mysql-8.0.19-winx64. 打开刚刚解压的文件夹 D:\360极速浏览器 ...
- (五)学习了解OrchardCore笔记——灵魂中间件ModularTenantContainerMiddleware的第一行②模块的功能部分
在(三)的时候已经说到模块集合用ForEachAsync的扩展方法分配多个任务,把每个modules的ManifestInfo分析出来的功能加入ConcurrentDictionary.我们先看看这个 ...
- sql多表语句
多条件查询条件判空 最优写法 3三表带条件查询
- vue : 无法加载文件 C:\Users\ui61895076\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
说白了就是这个编辑器不能用罢了 执行以下代码 1.鼠标右击以管理员身份运行vscode; 2. 执行:get-ExecutionPolicy,显示Restricted,表示状态是禁止的; 3. 执行: ...
- OSCP Learning Notes - WebApp Exploitation(1)
Installing XSS&MySQL FILE Download the Pentester Lab: XSS and MySQL FILE from the following webs ...
- DP学习记录Ⅱ
DP学习记录Ⅰ 以下为 DP 的优化. 人脑优化DP P5664 Emiya 家今天的饭 正难则反.考虑计算不合法方案.一个方案不合法一定存在一个主食,使得该主食在多于一半的方法中出现. 枚举这个&q ...
- 题解 洛谷 P4112 【[HEOI2015]最短不公共子串】
给定两个字符串\(A\)和\(B\),我们需要找出一个串,其在\(A\)中出现且不在\(B\)中出现,这个串为子串或者子序列,求在每种情况下,该串的最短长度. 考虑到后缀自动机可以识别一个字符串的所有 ...