問題描述
編寫一個(gè)程序,以字符串方式輸入一個(gè)前綴表達(dá)式,然后計(jì)算它的值。輸入格式為:“運(yùn)算符 對象1 對象2”,其中,運(yùn)算符為“+”(加法)、“-”(減法)、“*”(乘法)或“/”(除法),運(yùn)算對象為不超過10的整數(shù),它們之間用一個(gè)空格隔開。要求:對于加、減、乘、除這四種運(yùn)算,分別設(shè)計(jì)相應(yīng)的函數(shù)來實(shí)現(xiàn)。
輸入格式:輸入只有一行,即一個(gè)前綴表達(dá)式字符串。
輸出格式:輸出相應(yīng)的計(jì)算結(jié)果(如果是除法,直接采用c語言的“/”運(yùn)算符,結(jié)果為整數(shù))。
輸入輸出樣例
樣例輸入
+ 5 2
樣例輸出
7
/*不知道為什么就是只能得到80分,不完全正確,因?yàn)楹鲆暳素?fù)數(shù)的存在,小于10的整數(shù)包含負(fù)數(shù)*/
import?java.util.*;??
import?java.math.*;
public?class?Main{
private?static?void?add(int?a,int?b)
{
System.out.println(a+b);
}
private?static?void?sub(int?a,int?b)
{
System.out.println(a-b);
}
private?static?void?mul(int?a,int?b)
{
System.out.println(a*b);
}
private?static?void?div(int?a,int?b)
{
System.out.println(a/b);
}
public?static?void?main(String[]?args)
{
Scanner?sc=new?Scanner(System.in);
String?str=sc.nextLine();
int?a=str.charAt(2)-'0';
int?b=str.charAt(4)-'0';
switch?(str.charAt(0))
{
case?'+':
add(a,b);break;
case?'-':
sub(a,b);break;
case?'*':
mul(a,b);break;
case?'/':
div(a,b);break;
}
}
}




