
'事先定义一个运算函数
Private Function YunSuan(S1 As Long, FuHao As String, S2 As Long, JieGuo) As Long
Select Case FuHao
Case "+"
JieGuo = S1 + S2
Case "-"
JieGuo = S1 - S2
Case "*"
JieGuo = S1 * S2
Case "/"
JieGuo = S1 / S2
Case Else
MsgBox "错误的运算符,请检查"
End Select
End Function
Private Sub Form_Click()
YunSuan 50, "+", 50, JieGuo '加法运算
MsgBox "50+50=" &JieGuo
YunSuan 50, "-", 50, JieGuo '减法运算
MsgBox "50-50=" &JieGuo
YunSuan 50, "*", 50, JieGuo '乘法运算
MsgBox "50*50=" &JieGuo
YunSuan 50, "/", 50, JieGuo '除法运算
MsgBox "50/50=" &JieGuo
End Sub
import java.text.DecimalFormatimport java.util.Scanner
public class Zhidao {
public static void main(String[] args) {
String condition = ""
Zhidao zhidao = new Zhidao()
do{
Scanner scanner = new Scanner(System.in)
try{
System.out.print("请输入第一个数:")
double x = scanner.nextDouble()
System.out.print("请输入第二个数:")
double y = scanner.nextDouble()
System.out.print("请输入运算符:")
String s = scanner.next()
char z = s.charAt(0)
zhidao.yunsuan(x, y, z)
}catch(Exception e){
System.out.println("请输入正确的数据!")
}
System.out.print("是否继续?continue:继续,任意字符:结束")
condition = scanner.next()
}while("continue".equals(condition))
}
public static void yunsuan(double x,double y,Character z){
DecimalFormat r=new DecimalFormat()
r.applyPattern("#0.00")
if(z.equals('+')){
System.out.println(x+"+"+y+"=" + r.format((x+y)))
} else if(z.equals('-')){
System.out.println(x+"-"+y+"=" + r.format((x-y)))
} else if(z.equals('*')){
System.out.println(x+"*"+y+"=" + r.format((x*y)))
} else if(z.equals('/')){
if(y==0){
System.out.println("被除数不能为0")
} else{
System.out.println(x+"/"+y+"=" + r.format((x/y)))
}
}else{
System.out.println("无法识别改运算符")
}
}
}
帮你做一下注释吧:void Calculator()
{
float Result=0,Operater=0
char ch//把运算符号定义为ch
bool t=true//t=true时继续计算,出错时t=false
cout<<"\n"<<"Application Name"
cout<<"\n"<<"Used Method"
cout<<"\n"<<"Fabricator"
cout<<"\n"<<" User Input Program Output"
cout<<"\n"<<"============= ======================="
while(t) //当t为真时,继续计算
{
cin>>"ch">>Operater//输入运算符和数值,如+10
switch(ch) //根据符号判断进行何种运算
{
case '+' Result+=Operatercout<<"new Result is "<<Resultbreak
//+号就加上operator
case '-' Result-=Operatercout<<"new Result is "<<Resultbreak
//-号就减去operator
case '*' Result*=Operatercout<<"new Result is "<<Resultbreak
//*号就乘上operator
case '/' if(Operater==0)//是/号就要判断除数是否为0
//这里if后的括号里应是==而不是=
{cout<<"Error: attempt to divide by zero"break}
else{Result/=Operatercout<<"new Result is "<<Resultbreak}
case 'q' t=falsebreak//输入q则跳出本次运算
default cout<<"Error \'"<<ch<<"\' is not a valid operator\n"
//注意:""里的'应该用转义字符\'
}
}
}
另外,单词operater不存在,应作operator
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)