void Widget::fuhao(char p)
{
if(num==0)
{
if(p=='=')
return;
num=1;
f=p;
QString s=ui->label->text();
s.append(" ");
s.append(p);
ui->label->setText(s);
return;
}
if(num==1)
{
switch(f)
{
case '+':c=a+b;break;
case '-':c=a-b;break;
case '*':c=a*b;break;
case '/':
if(b<=0)
{
QMessageBox::information(this, "运算错误", "除数不能为0");
on_pushButton_3_clicked();
return;
}
c=a/b;break;
}
a=c;
ui->label->setNum(a);
if(p=='=')
{
b=0;
return;
}
else//1+1+1这种情况,前面两个先加了再加后面的1
{
f = p;
QString s = ui->label->text();
s.append(' ');
s.append(f);
ui->label->setText(s);
b=0;
}
}
}
void Widget::on_pushButton_10_clicked() //7
{
mycount(7);
}
void Widget::on_pushButton_9_clicked() //8
{
mycount(8);
}
void Widget::on_pushButton_11_clicked()//9
{
mycount(9);
}
void Widget::on_pushButton_13_clicked()//4
{
mycount(4);
}
void Widget::on_pushButton_14_clicked()//5
{
mycount(5);
}
void Widget::on_pushButton_15_clicked()//6
{
mycount(6);
}
void Widget::on_pushButton_5_clicked()//1
{
mycount(1);
}
void Widget::on_pushButton_6_clicked()//2
{
mycount(2);
}
void Widget::on_pushButton_7_clicked()//3
{
mycount(3);
}
void Widget::on_pushButton_clicked()//0
{
mycount(0);
}
void Widget::on_pushButton_4_clicked()//+
{
fuhao('+');
}
void Widget::on_pushButton_8_clicked()//-
{
fuhao('-');
}
void Widget::on_pushButton_16_clicked()//*
{
fuhao('*');
}
void Widget::on_pushButton_12_clicked()// /
{
fuhao('/');
}
void Widget::on_pushButton_2_clicked()//=
{
fuhao('=');
}
void Widget::on_pushButton_3_clicked()//C
{
a=0;
b=0;
c=0;
f=0;
num=0;
ui->label->setNum(0);
}