蓝桥杯练习题

题目:每—本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xXX-XXXxx-x”,其中符号"-"是分隔符(键盘上的减号),最后—位是识别码,例如O-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如О代表英语;第—个分隔符“-"之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后—位为识别码。

识别码的计算方法如下:

首位数字乘以1加上次位数字乘以2......以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母×。例如ISBN号码0-670-82162-4中的识别码4是这样得到的:对067082162这9个数字,从左至右,分别乘以1,2,...,9,再求和,即O×1+6×2+......+2×9=158,然后取158 mod 11的结果4作为识别码。你的任务是编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出Right;如果错误,则输出你认为是正确的ISBN号码。

实现思路:

1.首先,通过Scanner类从控制台读取用户输入的ISBN号。
2.去除出版编号中的所有“_”。
3.初始化一个累加器sum为0。
4.使用for循环遍历ISBN号中的每个数字字符,除了最后一个字符。将每个数字字符转换为整数,乘以一个递增的k(从1开始),然后将结果加到sum中。
5.根据sum的值计算校验码。如果sum除以11的余数是10,校验码是"X";否则,校验码是sum除以11的余数。
6.获取原始的校验码,即ISBN号中的最后一个字符。
7.如果计算出的校验码与原始校验码相同,则输出"Right",表示ISBN号有效。
8.如果不同,则输出修正后的ISBN号(原始字符串除了最后一个字符之外的所有字符,加上计算出的校验码)。

package com.ztt.Demo01;import java.util.Scanner;
public class demo02 {public static void main(String[] args) {try(Scanner in = new Scanner(System.in)){String isbn=in.nextLine();//去除出版编号中的所有“_”String isbnNumberStr = isbn.replace("-", "");//遍历除数校验码(最后一位)以外的所有字符int sum=0;for(int i=0,k=1;i<isbnNumberStr.length()-1;i++,k++) {int n=Integer.parseInt(String.valueOf(isbnNumberStr.charAt(i)));//将字符转换为字符串,获取字符串isbnNumberStr中的第i个字符,将字符串转换为整数。sum += n * k;}System.out.println(sum);//根据累加值,计算校验码String validateCode = String.valueOf(sum % 11==10 ? "X" :sum % 11);//获取原始的校验码String last=String.valueOf(isbnNumberStr.charAt(isbnNumberStr.length()-1));if(validateCode.equals(last)) {System.out.println("Right");}else {System.out.println(isbn.substring(0,isbn.length()-1) + validateCode);}}}}

运行结果:

0-670-82162-4
158
Right

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/647124.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

地球经纬度常用算法

坐标系转换 坐标系知识普及&#xff1a;GIS基础知识 - 坐标系、投影、EPSG:4326、EPSG:3857 - _熊 - 博客园 – Python import mathx_pi 3.14159265358979324 * 3000.0 / 180.0 pi 3.1415926535897932384626 # π a 6378245.0 # 长半轴 ee 0.00669342162296594323 # …

C#,数据检索算法之线性检索(Linear Search)的源代码

数据检索算法是指从数据集合&#xff08;数组、表、哈希表等&#xff09;中检索指定的数据项。 数据检索算法是所有算法的基础算法之一。 线性&#xff1f;听起来就“高大上”&#xff0c;其实&#xff0c;只不过就是挨个比较呗。 本文发布&#xff08;听起来很正式 &#x…

速盾:服务器CDN加速配置的技术文章

CDN&#xff08;内容分发网络&#xff09;是一种通过分布在不同地理位置的服务器来加速网站内容传输的技术。在本文中&#xff0c;我们将介绍如何使用服务器CDN加速配置&#xff0c;以提高网站的性能和用户体验。 一、什么是CDN加速&#xff1f; CDN加速是通过将网站的静态内…

一个好用的服务器控制面板

简介 它是一个免费开源的管理面板工具&#xff0c;可以帮助你集中管理多个服务器和网站。Ajenti 支持 Linux、BSD、Mac OS X和Windows 等多个操作系统&#xff0c;并且可以通过一个直观的 Web 界面来完成各种系统管理任务。 相比于其他管理面板&#xff0c;Ajenti有以下几个优…

【Unity】关于学习Unity的网站或工具

洛谷&#xff1a;https://www.luogu.com.cn/ c#&#xff1a;https://docs.microsoft.com/zh-cn/dotnet/api/?viewnetframework-4.8 unity : https://connect.unity.com/doc

损失函数详细复现(pytorch版本)

什么是损失函数 损失函数&#xff08;Loss Function&#xff09;是在机器学习和深度学习中用于评估模型预测结果与实际标签之间差异的函数。它衡量了模型的性能&#xff0c;即模型对训练样本的预测与实际标签的偏差程度。目标是通过调整模型参数&#xff0c;使损失函数的值最小…

递归的一些个人思考

最近在复习数据结构与算法&#xff0c;结合了操作系统的知识&#xff0c;对递归有了新的理解&#xff0c;故落笔记录。 应用场景 存在明显的规律: 一般规律&#xff0c;与临界规律&#xff1b;需要保存大量的中间变量或者上层变量&#xff0c;如二叉树的中序遍历中&#xff0…

vue使用Promise.all可以同时执行多个异步操作,,并将这些异步操作的结果一并返回

vue使用Promise.all可以同时执行多个异步操作,&#xff0c;并将这些异步操作的结果一并返回 async queryData() {if (this.uriCheckedList.length 0){this.chartData {}}this.finallyData.yData []this.finallyData.xData []this.finallyData.lengList []this.finallyData…

有向图的拓扑序列——拓扑排序

问题描述 什么是拓扑序列 若一个由图中所有点构成的序列 A 满足&#xff1a;对于图中的每条边 (x,y)&#xff0c;x 在 A 中都出现在 y 之前&#xff0c;则称 A 是该图的一个拓扑序列。图中不能有环图中至少存在一个点的入度为0 如何求拓扑序列&#xff1f; 计算出每个节点的…

06 BGP 基础报文状态

06 BGP 基础 报文状态 05 BGP 大纲-CSDN博客 1 BGP 的基础 1.1 为什么要使用 BGP 我们要在不同AS之间实现网络通信,需要使用EGP-BGP协议,当然我们还看重BGP的一些优势 1)非常稳定 2)可以传输大量的路由,支持大规模网络 3)具有非常丰富的路由控制策略,可以实现灵活…

常用通信总线学习——RS232与RS485

RS232概述 RS-232标准接口&#xff08;又称EIA RS-232&#xff09;是常用的串行通信接口标准之一&#xff0c;它是由美国电子工业协会(Electronic Industry Association&#xff0c;EIA)联合贝尔系统公司、调制解调器厂家及计算机终端生产厂家于1970年共同制定&#xff0c;其全…

缓存和CDN完整指南

1*JfOWR6ECe92QhH_UTwulrg.png 假设一家公司将其网站托管在芬兰的Google Cloud数据中心的服务器上。对于欧洲的用户&#xff0c;加载可能需要大约100毫秒&#xff0c;但对于墨西哥的用户&#xff0c;可能需要3-5秒。幸运的是&#xff0c;有策略可以最小化远程用户的请求延迟。 …

破解不了WIFI?也许你应该试试社工...

以下案例为虚拟环境,请勿模仿 做什么? 由于工作出差在该某某企业出差,手机和电脑都没办法用流量…流量包1G1块…太贵了…我勒个豆啊…发现WIFI密码难以破解&#xff08;小kali上过了&#xff09;。 出去逛逛吧…发现楼道有海康威视摄像头,学过交换机的一般都看得出来这个摄像…

(超全七大错误)Invalid bound statement (not found): com.xxx.dao.xxxDao.add

1.确保你把dao和mapper都在applicationContext.xml中都扫描了 xml文件 <bean id"sqlSessionFactory" class"org.mybatis.spring.SqlSessionFactoryBean"><property name"dataSource" ref"dataSource"/><property nam…

web安全学习笔记【08】——算法1

思维导图在最后 #知识点&#xff1a; 1、Web常规-系统&中间件&数据库&源码等 2、Web其他-前后端&软件&Docker&分配站等 3、Web拓展-CDN&WAF&OSS&反向&负载均衡等 ----------------------------------- 1、APP架构-封装&原生态&…

FastDeploy项目简介,使用其进行(图像分类、目标检测、语义分割、文本检测|orc部署)

FastDeploy是一款全场景、易用灵活、极致高效的AI推理部署工具&#xff0c; 支持云边端部署。提供超过 &#x1f525;160 Text&#xff0c;Vision&#xff0c; Speech和跨模态模型&#x1f4e6;开箱即用的部署体验&#xff0c;并实现&#x1f51a;端到端的推理性能优化。包括 物…

自动 CAPTCHA 解决方案,最佳 CAPTCHA 解决方案扩展 2024?

自动 CAPTCHA 解决方案&#xff0c;最佳 CAPTCHA 解决方案扩展 2024&#xff1f; 在迅速发展的数字领域中&#xff0c;高效的 CAPTCHA&#xff08;Completely Automated Public Turing tests to tell Computers and Humans Apart&#xff0c;完全自动化的全球公共图灵测试&…

JavaScript 执行上下文与作用域

执行上下文与作用域 ​ 执行上下文的概念在 JavaScript 中是颇为重要的。变量或函数的上下文决定了它们可以访问哪些数据&#xff0c;以及它们的行为。每个上下文都有一个关联的变量对象&#xff08;variable object&#xff09;&#xff0c; 而这个上下文中定义的所有变量和函…

C++:使用tinyXML生成矢量图svg

先说一下tinyXML库的配置&#xff1a; 很简单&#xff0c;去下面官网下载 TinyXML download | SourceForge.net 解压后是这样 直接将红框中的几个文件放到项目中即可使用 关于svg文件&#xff0c;SVG是基于XML的可扩展矢量图形&#xff0c;svg是xml文件&#xff0c;但是xml…

软件安装SQLyog

SQLyog 安装配置使用 首先下载SQLyog 软件&#xff0c;并解压 选择自己操作系统的版本 双击点击 .exe 文件&#xff0c;进行安装 选择安装语言&#xff0c;默认中文&#xff0c;直接点击【OK】即可 点击【下一步】 先【勾选】同意协议&#xff0c;再点击【下一步】 …