이제 배우기 시작했고 클래스 질문이 있는데
클래스에 unsigned int 변수 2개랑 char 변수 하나 선언하고 생성자로 초기화해주고 입력받은 정수 2개랑 문자 이용해서 계산하는 함수까지 들어가있는데 메인 함수에서 위에 변수 3개 입력받는데 입력받고 바로 이상한 숫자 출력되는데 뭐가 잘 못 된건가요??

#include <iostream>

using namespace std;

class alu {
public:
    unsigned int r1, r2;
    char oper;
    alu();
    int calc();
};

alu::alu() {
    r1 = 1;
    r2 = 3;
    oper = '*';
}

int alu::calc() {
    if(oper == '*');
        cout << r1 * r2;
    if(oper == '+');
        cout << r1 + r2;
    if(oper == '-');
        cout << r1 - r2;
}

int main() {
    alu machine;
    cout << machine.r1 << machine.oper << machine.r2 << endl;
    cin  >> machine.r1 >> machine.oper >> machine.r2;        
    cout << machine.calc() << endl;                          
    cin  >> machine.r1 >> machine.oper >> machine.r2;        
    cout << machine.calc() << endl;                          
    cin  >> machine.r1 >> machine.oper >> machine.r2;        
    cout << machine.calc() << endl;                          
}