Witam!
Mam problem z else i if. Nie wiem jak zrobić, aby odczytywało, że jeśli nie wpisze użytkownik znaku +, -, * lub / to wyskakiwało " Podałeś zły znak". Na chwilę obecną program nie odczytuje tego, co zapisałam w nawiasie po if. Dziękuję za każdą pomoc.
#include <iostream>
using namespace std;
int main()
{
unsigned int a, b, c, d = 0;
char zn;
bool w = true;
cout << "Witaj uzytkowniku! Milo cie widziec!" << endl << endl;
cout << "Co ty na to abysmy wykonali dzialanie?" << endl;
cout << "Najpierw podaj znak (+, -, *, /):" << endl;
cin >> zn;
if(zn == '+' || '-' || '*' || '/')
{
cout << "Brawo! Podalas/es dobry znak!" << endl;
}else if(zn != '+' || '-' || '*' || '/'){
cout << "Podałaś/eś zły znak!" << endl;
cout << "Podaj znak jeszcze raz (+, -, *, /):" << endl;
cin >> zn;
}
cout << "Teraz podaj a: ";
cin >> a;
cout << "A teraz b: ";
cin >> b;
switch(zn)
{
case '+':
c = a + b;
break;
case '-':
c = a - b;
break;
case '*':
c = a * b;
break;
case '/':
c = a / b;
break;
default:
cout << "Nieprawidlowe dzialanie, podales/as nieznany nam znak, wybierz znak z ramki" << endl << endl << endl << endl << endl ;
w = false;
break;
}
{
if (w) cout << a << " " << zn << " " << b << " = " << c << endl << endl;
cout << "Dziekuje za wykonanie dzialania! :D";
return 0;
}
}