HDU1228A + B

本文章仅用于笔记。部分知识点来源于网络,授权请联系作者([email protected])。


题目


读入两个小于100的正整数A和B,计算A+B. 
需要注意的是:A和B的每一位数字由对应的英文单词给出. 
Input测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出. 
Output对每个测试用例输出1行,即A+B的值. 
Sample Input
one + two =
three four + five six =
zero seven + eight nine =
zero + zero =
Sample Output
3
90
96


解题


import java.util.Scanner;

public class HDU1228
{

	public static void main(String[] args)
	{
		Scanner s=new Scanner(System.in);
		while(s.hasNextLine())
		{
			String str=s.nextLine();
			str=str.replace("zero ", "0");
			str=str.replace("one ", "1").replace("two ", "2").replace("three ", "3");
			str=str.replace("four ", "4").replace("five ", "5").replace("six ", "6");
			str=str.replace("seven ", "7").replace("eight ", "8").replace("nine ", "9");
			int shu=0;
			//F一
			for(int i=0;i<str.length();i++)
			{
				char qu=str.charAt(i);
				if(qu>=48&&qu<=57)
				{
					char qu1=str.charAt(i+1);
					if(qu1>=48&&qu1<=57)
					{
						shu+=((qu-48)*10+qu1-48);
						i++;
					}
					else
						shu+=qu-48;
				}
			}
			/*F二
			int index=str.indexOf("+");
			int m=Integer.parseInt(str.substring(0,index));
			int n=Integer.parseInt(str.substring(index+2,str.length()-1));
			shu=m+n;
			*/
			if(shu==0)
				break;
			else
				System.out.println(shu);
		}
	}
}


求来波关注! 谢谢啦0.0!

小小小作者 
@Fanny0602


猜你喜欢

转载自blog.csdn.net/qq_40833874/article/details/78726312
今日推荐