当前位置: 首页 > news >正文

优秀网格员推荐表范文seo薪酬

优秀网格员推荐表范文,seo薪酬,坤和建设 网站,品牌营销型网站作用题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下: 每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换 程序分析 对于…

题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下: 每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换

程序分析

对于给定的四位整数,要求按照一定规则进行加密:

  1. 每位数字都加上5。
  2. 然后用和除以10的余数代替该数字。
  3. 最后将第一位和第四位交换,第二位和第三位交换。

下面我们将使用三种不同的方法来实现这个加密任务,并分析它们的优缺点。

方法一:数学运算

解题思路

按照规则逐步进行数学运算,首先对每位数字加5,然后取余数代替,最后进行位交换。

实现代码

def encrypt(number):# 将每位数字都加上5number += 5# 用和除以10的余数代替每位数字encrypted = 0for i in range(4):digit = number % 10encrypted += digit * (10 ** i)number //= 10# 进行位交换encrypted = (encrypted % 10) * 1000 + (encrypted // 1000) * 1 + ((encrypted // 10) % 10) * 10 + ((encrypted // 100) % 10) * 100return encrypted# 测试
number = 1234
encrypted_number = encrypt(number)
print(f"Original number: {number}")
print(f"Encrypted number: {encrypted_number}")

优缺点

优点:

  • 简单易懂,容易实现。

缺点:

  • 实现稍微复杂一些,需要进行多次数学运算。
  • 可读性相对较低。

方法二:字符串操作

解题思路

将数字转换成字符串,然后按照规则进行字符串操作,包括字符的加减和交换。

实现代码

def encrypt(number):# 将数字转换成字符串num_str = str(number)# 对每个字符进行加减和交换操作encrypted_str = ''for i in range(4):digit = int(num_str[i])# 加上5并取余encrypted_digit = (digit + 5) % 10encrypted_str += str(encrypted_digit)# 交换字符位置encrypted_str = encrypted_str[3] + encrypted_str[2] + encrypted_str[1] + encrypted_str[0]# 将字符串转换回整数encrypted_number = int(encrypted_str)return encrypted_number# 测试
number = 1234
encrypted_number = encrypt(number)
print(f"Original number: {number}")
print(f"Encrypted number: {encrypted_number}")

优缺点

优点:

  • 使用字符串操作更容易理解。

缺点:

  • 需要进行多次字符串操作,性能可能略低于数学运算方法。
  • 字符串操作可能需要额外的内存空间。

方法三:按位操作

解题思路

使用按位操作对每位数字进行加减和交换操作。

实现代码

def encrypt(number):# 按位操作加5encrypted = 0for i in range(4):digit = (number // (10 ** i)) % 10encrypted_digit = (digit + 5) % 10encrypted += encrypted_digit * (10 ** i)# 进行位交换encrypted = (encrypted % 10) * 1000 + (encrypted // 1000) * 1 + ((encrypted // 10) % 10) * 10 + ((encrypted // 100) % 10) * 100return encrypted# 测试
number = 1234
encrypted_number = encrypt(number)
print(f"Original number: {number}")
print(f"Encrypted number: {encrypted_number}")

优缺点

优点:

  • 使用按位操作,较数学运算方法性能稍好。
  • 代码相对简单,可读性较高。

缺点:

  • 仍需要进行多次数学运算和位操作。

总结

三种方法都可以实现加密任务,具体选择取决于个人偏好和项目需求。如果希望代码简洁易读,方法二(字符串操作)可能是一个好选择。如果性能是关键因素,方法三(按位操作)可能更好,因为它不需要进行字符串转换。方法一(数学运算)虽然可行,但相对较复杂,可读性较低,通常不是首选。

综合考虑,方法三(按位操作)通常是一个不错的选择,因为它兼顾了性能和代码简洁度。

http://www.tj-hxxt.cn/news/109138.html

相关文章:

  • 西安疫情最新情况轨迹网站搜索引擎优化方案
  • 上海福州路附近做网站的公司seo的基本步骤包括哪些
  • 新加坡做鸭网站关键词优化的主要工具
  • 网站的建站流程河北百度推广客服电话
  • 毕业设计如何用dw做网站百度极速版客服电话
  • 汽配人网做网站蜜雪冰城网络营销案例分析
  • 加盟店排行榜加盟项目排行榜搜狗整站优化
  • 深圳市工程建设造价网站搜索引擎优化seo优惠
  • 上海中高端网站建设福州seo按天收费
  • 龙岗做网站公司哪家好百度销售系统登录
  • 沈阳做一个网站需要多少钱百度门店推广
  • html5网站开发开题报告青岛seo经理
  • wordpress taxonomy吉林seo技术交流
  • 贵阳专业性网站制作网络营销技巧培训班
  • 做h游戏视频网站网络营销的三种方式
  • 网站开发ppt转h5谷歌排名规则
  • 网站外链接自己可以怎么做的网站seo优化技能
  • 苏州商城网站制作微信5000人接推广费用
  • 微信小网站制作seo排名优化厂家
  • 网站做优化应该具备什么sem广告
  • 湖州房产网站建设谷歌优化推广
  • 海洋网络提供网站建设百度网址安全中心怎么关闭
  • 佛山网站建设怎么选择网站seo分析工具
  • 高端网站建设专家sem搜索
  • 官方网站制作公司seo云优化外包
  • 电子商务网站的开发原则包括火爆产品的推广文案
  • 公司网站开发费用兴田德润官方网站鄞州seo服务
  • 平度网站建设ld4阿里云免费域名
  • 网站建设移动网络公司如何制作网站教程
  • 朋友圈网站怎么做的电子商务推广方式