题目解析
给定一行字符串 判断是否为合法的 正整数[1,1000] 的加法
解题思路
-
前面一个字符串记作
正整数A -
后面所有字符串记作
正整数B
分别求这两个是否为 的正整数
如果这两个字符串中出现了不属于数字字符 或者 都是合法数字字符但是整个数字不属于 就是 ?
代码
import java.io.*;
import java.util.*;
public class Main
{
static int toint(String str)
{
char s[] = str.toCharArray();
if (s[0] == '-')
return -1;
int x = 0;
for (int i = 0; i < s.length; i++)
{
if (s[i] == '.')
return -1;
x = x * 10 + s[i] - '0';
}
if (x > 1000 || x < 1)
return -1;
return x;
}
public static void main(String[] args)
{
String a = sc.next();
String b = sc.nextLine().substring(1);
int A = toint(a);
if (A == -1)
out.print("? + ");
else
out.print(A + " + ");
int B = toint(b);
if (B == -1)
out.print("? = ");
else
out.print(B + " = ");
if (A == -1 || B == -1)
out.print("?");
else
out.print(A + B);
out.flush();
out.close();
}
static Scanner sc = new Scanner(System.in);
static PrintWriter out = new PrintWriter(System.out);
}