题目信息:题目链接

小学生算术

时间限制:3000 ms  |  内存限制:65535 KB
难度:1

描述
很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。

输入
输入两个正整数m,n.(m,n,都是三位数)
输出
输出m,n,相加时需要进位多少次。
样例输入
123 456
555 555
123 594
0 0
样例输出
0
3
1

解题思路:

输入:这一次的输入与以往不同,就是可以无限制的输入,但是当输入“0   0”的时候结束,这里可以用一个hashNext函数结束循环中的输入,也可以判断输入的内容:当检测是“0   0”的时候结束输入。在这里,每次读取输入的一行,将一行转化成字符串数组,再将这个数组转化成对应的数字数组(注意转化的方法:这里转化成了ASCII值,要变成相应的数字,要减去48,附一张ASCII表)。
    输出:输出很好处理,就是判断进位的次数。
    功能:这个题要实现的是一个进位运算的功能,因此直接用两个数组保存输入的两个数字,对应的数位进行相加,数字大于10就进一位,进的位数要作用在相邻的更高的位数上(比如:十位上的数相加为s,s=12,则要进一位作用到百位上的数)。
    其中,在进位处理时,无论两个数多大,作用到相邻的位数的数字也是1(最大为9,两个9相加才18保留,1进位)
    具体的代码实现与相应部分的处理如代码所示:

代码实现:

import java.io.InputStreamReader;
import java.util.Scanner;/** Dragon* 2017/4/21* 小学生算术:http://acm.nyist.net/JudgeOnline/problem.php?pid=74&rec=rec* 使用charAt转化成对应的int值得时候,是相应的ascii码值,要转化成字符中的数字,要减去48*/
public class Num_74 {public static void main(String[] args) {Scanner in=new Scanner(System.in);int[] result=new int[100];int m=0;//用来数组result的下标处理String[] input=new String[2];input=in.nextLine().split(" ");while(!input[0].equals("0") && !input[1].equals("0")){//a数组保存第一个数个,十,百的形式int[] a=new int[3];for(int i=2,j=0;i>=0;i--){a[j]=input[0].charAt(i)-48;j++;}//相同处理数组b,保存第二个数int[] b=new int[3];for(int i=2,j=0;i>=0;i--){b[j]=input[1].charAt(i)-48;j++;}//进位处理int carryBit=0,count=0;for(int i=0;i<3;i++){int s=a[i]+b[i]+carryBit;if(s>9){carryBit=1;count++;}}result[m]=count;m++;input=in.nextLine().split(" ");}//输出结果for(int i=0;i<m;i++)System.out.println(result[i]);}}

运行结果:

南阳OJ 题目64:小学生算术相关推荐

  1. 南阳oj 题目722 数独

    数独 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 数独是一种运用纸.笔进行演算的逻辑游戏.玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行.每一 ...

  2. 南阳oj 题目290 动物统计加强版 字典树

    动物统计加强版 时间限制:3000 ms | 内存限制:150000 KB 难度:4 描述 在美丽大兴安岭原始森林中存在数量繁多的物种,在勘察员带来的各种动物资料中有未统计数量的原始动物的名单.科学家 ...

  3. c语言做小学生测验程序,[转载]程序设计方法学课程设计--小学生算术四则运算测试程序(C)...

    背景 伴随着人类社会的进步,人们的计算工具也在不断的变化,从远古时期的结绳计数,到算筹,算盘,以及近代的机械计算机.计算尺,直至今天我们广泛运用的电子计算机.计算工具的每一次进步,都导致科学技术发生深 ...

  4. 小学生算术加法测试c 语言,程序设计方法学课程设计--小学生算术四则运算测试程序(C)...

    背景 伴随着人类社会的进步,人们的计算工具也在不断的变化,从远古时期的结绳计数,到算筹,算盘,以及近代的机械计算机.计算尺,直至今天我们广泛运用的电子计算机.计算工具的每一次进步,都导致科学技术发生深 ...

  5. Python爬虫练习(爬取OJ题目和学校信息通知)

    爬取OJ题目和学校信息通知 一.爬取南阳理工OJ题目 1. 初步分析 2. 代码编写 二.爬取学校信息通知 1. 每页url分析 2. 每页内容爬取 总代码 三.总结 参考 一.爬取南阳理工OJ题目 ...

  6. 南阳oj a+b问题

    #include<iostream> using namespace std; int main () { int a,b; cin>>a>>b; cout< ...

  7. 九度OJ 题目1179:阶乘

    /********************************* * 日期:2013-2-8 * 作者:SJF0115 * 题号: 九度OJ 题目1179:阶乘 * 来源:http://ac.jo ...

  8. nyoj_74 小学生算术

    小学生算术 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述 很多小学生在学习加法时,发现"进位"特别容易出错.你的任务是计算两个三位数在相加时需要多少 ...

  9. 九度OJ 题目1069:查找学生信息 随笔

    ** 九度OJ 题目1069:查找学生信息 ** 题目描述如下: 输入N个学生的信息,然后进行查询. 输入 输入的第一行为N,即学生的个数(N<=1000) 接下来的N行包括N个学生的信息,信息 ...

最新文章

  1. canvas 文字颜色_实现一个canvas小画板
  2. mysql创建反弹函数,MySql创建函数
  3. CPU方案简介 RK3308 - 智能音响
  4. 马哥2016全新Linux+Python高端运维班第七周作业
  5. mysql启动时执行sql server_常见 mysql 启动、运行.sql 文件错误处理
  6. 转:linux中fork()函数详解
  7. 大数据、云计算、AI大牛都在这里了,就等你来捞干货
  8. 基于深度学习的图像修补/完整方法分析
  9. 第三次Sprint-最后冲刺
  10. baseline_如何安装和使用Microsoft Baseline Security Analyzer(MBSA)
  11. Django中的Object Relational Mapping(ORM)
  12. Java int基本类型和Integer之间引发的问题思考
  13. 网络安全基础——服务器远程管理
  14. Gif动图体积如何缩小?分享一招快速压缩动图的方法
  15. [原创] 我了解北京地区消费贷利息情况
  16. 大连居民楼爆炸原因查明 责任人厌世开燃气阀门自杀
  17. STM32F407二维码识别(使用内部RAM+无FIFO摄像头OV7670
  18. 《WEB开发-阿里云建站》第1章 建站前的准备
  19. 为什么没人比程序员更讨厌软件
  20. linux飞腾cpu,基于飞腾CPU+银河麒麟操作系统编译安装tensorflow

热门文章

  1. python写shp,使用Write-shp在NetworkX中写入shapefile
  2. 微信小程序-转盘抽奖
  3. iOS开发之如何用UITableView实时显示歌词
  4. 计算机科学是怎样的一个专业?
  5. 半路出家,开始学习java
  6. 2019年同济计算机考研过复试多少分,同济大学2019年考研复试分数线已公布
  7. visio中公式太小_串联管道/并联管道中调节阀可调比R的计算
  8. 理化计算程序必备:CoolProp+UnitsNet
  9. 软件Bug五种等级,一级最致命
  10. B2B常见名词以及英文缩写