我有一个问题陈述
问题
编写一个程序来计算 2 个数字的和并打印输出。
输入
第 1 行:一个整数。
第 2 行:一个整数。
输出:输出由一个对应于总和的整数组成,后跟一个新行
示例输入 I
3
1
样本输出 I
4
示例输入II
13
10
样本输出II
23
我的解决方案是
import java.io.IOException;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Add {
public static void main(String[] args)throws IOException
{
int a=0, b=0, sum;
Scanner sc=new Scanner(System.in);
System.out.println("Enter the numbers to be summed");
try{
a=sc.nextInt();
sc.nextLine();
b=sc.nextInt();
}
catch(InputMismatchException e){
System.out.println("Please enter an Integer number");
e.printStackTrace();}
catch(Exception e){System.out.println(e);}
sum=a+b;
System.out.println(sum);
sc.close();
}
}
我应该将其提交到在线目录,我假设该目录尝试自动执行该程序。当我这样做时,它会告诉我
错误答案差不多了,再想一下
我认为在你决定寻求增援之前,思考一个小时就足够了。
输出应该是“对应于总和的单个整数,后跟一个新行”。
但是你的程序的输出是
Enter the numbers to be summed
<the sum>
删除
sc.nextLine()
。它使其移至下一行,但由于两个整数都在同一行,因此 b 的值仍为 0。
这些可以通过两个命令行参数或 Scanner 类或 BufferReader 来解决。
使用命令行参数。
public Class Sum
{
public static void main(String [] args)
{
int a ,b,c;
a=Integer.parseInt(args[0]); //using Integer wrapper Class to cast object
to primitive Datatype Integer.
b= Integer.parseInt(args[1]) ;
c= a+b;
System.out.println("The Sum of two number is : "+c);
}
}
使用具有代码可重用性的命令行参数(Method Sum)
public Class Sum
{
public static long sum(int a,int b)
{
return a+b;
}
public static void main(String [] args)
{
int a ,b;
long c; // for long summation of numbers .
a=Integer.parseInt(args[0]); //using Integer wrapper Class to cast object
to primitive Datatype Integer.
b= Integer.parseInt(args[1]) ;
c= sum(a,b);
System.out.println("The Sum of two number is : "+c);
}
}
使用 java.util.Scanner 中的外部资源
public Class Sum
{
public static void main(String [] args)
{
int a ,b;
long c;
Scanner scan;
scan = new Scanner(System.in) ; //Taking system Keyboard for input.
System.out.println("Enter the value of A: \n");
a= ss.nextInt() ;
System.out.println("Enter the value of B: \n");
b=ss.nextInt();
c= (long) (a+b);
System.out.println("The Sum of two number is : "+c);
}
}
试试这个:
import java.util.Scanner;
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num1 = 0;
int num2 = 0;
int sum = 0;
System.out.println("Enter Number: ");
num1 = in.nextInt();
System.out.println("Enter Number2: ");
num2 = in.nextInt();
sum = num1 + num2;
System.out.println(sum);
}
}
package stack;
public class Satck {
public static int MAX=100;
int top;
int [] a= new int [MAX];
boolean empty()
{
return (top<0);
}
Satck()
{
top=-1;
}
void push(int x)
{
a[++top]=x;
}
public int pop()
{
int x=a[top--];
return x;
}
public int peek()
{
int x=a[top];
return x;
}
public static void main(String[] args) {
Satck s=new Satck();
s.push(10);
s.push(11);
s.push(12);
s.push(13);
System.out.println(s.peek());
System.out.println(s.empty());
System.out.println(s.pop());
System.out.println(s.peek());
}
}
我希望如果您参考这个答案,您可以了解如何做到这一点
import java.util.Scanner; //import java util package scanner class
public class Q1 {
//this is a main method
public static void main(String[] args) {
int n1,n2,sum; //variables Declaration
//create a object named input for getting inputs
Scanner input = new(System.in);
System.out.ptintln("Enter number 01");
n1=input.nextInt();
System.out.ptintln("Enter number 02");
n2=input.nextInt();
sum=n1+n2;
//print summation
System.out.println("Summation of number "+n1 " and anumber "+n2 +" is:"+sum);
}
}