---
# System prepended metadata

title: '**Chapter 2 (Condition)**'
tags: [C++ Lab]

---

###### tags: `C++ Lab`
# **Chapter 2 (Condition)**


1.	Check odd/even
```
#include <iostream>
using namespace std;
	
int main() {
	int num;
	cout << "Please input an integer number: ";
	cin >> num;
	if(num%2==0) {
		cout << num << " is an even number";
	} else {
		cout << num << " is an odd number";
	}
return 0;
}
```

2.	average, pass/fail
```
#include <iostream>
using namespace std;

int main() {
	double s1,s2,s3,s4,s5,avg;
	cout << "Please enter 5 scores: ";
	cin >> s1 >> s2 >> s3 >> s4 >> s5;
	avg = (s1+s2+s3+s4+s5)/5;
	if(avg > 4.0) {
		cout << "You got the final score of " << avg << ". " << "Congas!! You passed the course.";
	} 
	else {
		cout << "You got the final score of " << avg << ". " << "Oh no!! You failed the course.";
	}  
return 0;
}
```

3.	Print Grade
```
#include <iostream>
using namespace std;

int main(){
	double s1,s2,s3,s4,s5,avg;
	cout << "Please enter 5 scores: ";
	cin >> s1 >> s2 >> s3 >> s4 >> s5;
	avg = (s1+s2+s3+s4+s5)/5;
	
	if (avg<4.0) {
		cout << "You got the final score of " << avg << ". " << "Your letter grade is F.";
	} else if (avg<5.0){
		cout << "You got the final score of " << avg << ". " << "Your letter grade is D.";
	} else if (avg<6.0){
		cout << "You got the final score of " << avg << ". " << "Your letter grade is D+.";
	} else if (avg<7.0){
		cout << "You got the final score of " << avg << ". " << "Your letter grade is C+.";
	} else if (avg<8.0){
		cout << "You got the final score of " << avg << ". " << "Your letter grade is B.";
	} else if (avg<9.0){
		cout << "You got the final score of " << avg << ". " << "Your letter grade is B+.";
	} else {
		cout << "You got the final score of " << avg << ". " << "Your letter grade is A.";
	}
return 0;
}
```

4.	Solve ax+b=0
```
#include <iostream>
using namespace std;

int main() {
	int x,a,b;
	cout << "Input 2 real numbers a and b: ";
	cin >> a >> b;
	if (a!=0) {
		x = -b/a;
		cout << "The unique solution of x is: " << x;
	} else if (b!=0) {
		cout << "Inf solutions";	
	} else {
		cout << "Infinite numbers of solution";
	}
return 0;
}
```

5.	Solve ax2+bx+c=0
```
#include <iostream>
#include <cmath>
using namespace std;

int main() {
	double a,b,c,d;
	cout << "Input 3 real numbers a, b and c: ";
	cin >> a >> b >> c;
	
	if (a==0) {
		if (b==0) 
			if (c==0) 
				cout << "Infinite numbers of solution";
			else cout << "No solution";
		else cout << "Unique solution x=-b/a = " << -b/a;
	} else {
		d = pow(b,2)-4*a*c;
		if (d>0) {
			cout << "Two solution: " << endl;
			cout << "x1 = " << (-b+sqrt(pow(b,2)-4*a*c))/(2*a) << endl;
			cout << "x2 = " << (-b-sqrt(pow(b,2)-4*a*c))/(2*a) << endl;
		} else if (d==0) {
			cout << "One solution: -b/2a = " << -b/(2*a); 
		} else cout << "Complex solution";
	}
return 0;	
```
}

6. Print the number of days in the month and year
```
#include <iostream>
using namespace std;

int main() {
	int m,y,days;
		cout << "Input the month and year of a date: ";
	cin >> m >> y;
	switch(m){
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			days = 31;
			break;
		case 4:
		case 6:
		case 9:
		case 11:
			days = 30;
			break;
		case 2:
			if (y%100==0 || (y%4==0 && y%100 != 0)) {
				days = 29;
			} else {
				days =28;
			}
		break;
			}
	cout << "This month has " << days << " days";
return 0;
```
} 

7. Check valid date
```
#include <iostream>
using namespace std;

int main() {
	int d,m,y,days;
	cout << "Input the date: ";
	cin >>d>>m>>y;
		switch(m){
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			days = 31;
			break;
		case 4:
		case 6:
		case 9:
		case 11:
			days = 30;
			break;
		case 2:
			if (y%100==0 || (y%4==0 && y%100 != 0)) {
				days = 29;
			} else {
				days =28;
			}
		break;
			}
		(d<=days&&d>=1) ? cout << "YES": cout << "NO";
	
	
}
```

8. Calculate the next dd/mm/yyyy of that day
```
#include <iostream>
using namespace std;

int main() {
	int d,m,y;
	cout << "Input the date: ";

	cin>>d>>m>>y;
	if (d > 0 && d < 28) {
		d+=1;
	}

	if (d == 28) {
		if (m == 2) {
			if (y%100==0 || (y%4==0 && y%100 != 0)) {
				d = 29;
			} else {
				d = 1;
				m = 3;
			}
		} else {
			d += 1;
		}
	}

	if (d == 29 && m==2) {
		d=1;
		m=3;
	} else if(d==29) {
		d+=1;
	}

	if (d == 30) {
		if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) {
			d += 1;
		} else {
			d = 1;
			m += 1;
		}
	}

	if (d == 31) {
		d = 1;
		if (m == 12) {
			y += 1;
			m = 1;
		} else {
			m += 1;
		}
	}

	if (d < 10) {
		cout<<"0"<<d<<"/";
	} else {
		cout<<d<<"/";
	}

	if (m < 10) {
		cout << "0" << m << "/";
	} else {
		cout << m << "/";
	}
	cout << y;
	return 0;
}
```

9. Calculate how many day of the year 
```
#include <iostream>
using namespace std;

int main(){
	int d,m,y,day;
	cout<<"Input the date: ";
	cin>>d>>m>>y;
	
	if (y%100==0 || (y%4==0 && y%100 != 0)) {
		switch(m) {
			case 1:  day=d; break;
			case 2:  day=31+d; break;
			case 3:  day=31+29+d; break;
			case 4:  day=31+29+31+d; break;
			case 5:  day=31+29+31+30+d; break;
			case 6:  day=31+29+31+30+31+d; break;
			case 7:  day=31+29+31+30+31+30+d; break;
			case 8:  day=31+29+31+30+31+30+31+d; break;
			case 9:  day=31+29+31+30+31+30+31+31+d; break;
			case 10: day=31+29+31+30+31+30+31+31+30+d; break;
			case 11: day=31+29+31+30+31+30+31+31+30+31+d; break;
			case 12: day=31+29+31+30+31+30+31+31+30+31+30+d; break;						
		}
	} else {
		switch(m) {
			case 1:  day=d; break;
			case 2:  day=31+d; break;
			case 3:  day=31+28+d; break;
			case 4:  day=31+28+31+d; break;
			case 5:  day=31+28+31+30+d; break;
			case 6:  day=31+28+31+30+31+d; break;
			case 7:  day=31+28+31+30+31+30+d; break;
			case 8:  day=31+28+31+30+31+30+31+d; break;
			case 9:  day=31+28+31+30+31+30+31+31+d; break;
			case 10: day=31+28+31+30+31+30+31+31+30+d; break;
			case 11: day=31+28+31+30+31+30+31+31+30+31+d; break;
			case 12: day=31+28+31+30+31+30+31+31+30+31+30+d; break;
		}
	}
	
	cout<<"The day of the year is "<<day;
return 0;
}
```

10. sort 3 numbers (asc) (NOT recommend)
```
#include <iostream>
using namespace std;

int main() {
	int a,b,c,temp;
	cout << "Input 3 numbers a, b, and c: ";
	cin >> a >> b >> c;
	if(a>b) {
		temp=a;
		a=b;
		b=temp;
	} 
	if(b>c) {
		temp=b;
		b=c;
		c=temp;
	}
	if (a>c) {
		temp=a;
		a=c;
		c=temp;
	}
	
	cout << a << " " << b << " " << c;
	
}
```

11. Convert 2-digit number to word
```
#include <iostream>
using namespace std;

int main() {
	int num,l,r;
	cin >> num;
	l=num/10;
	r=num%10;
	if(num>=10 && num<=19) {
		switch(num) {
			case 10: cout<<"ten"; break;
			case 11: cout<<"eleven"; break;
			case 12: cout<<"twelve"; break;
			case 13: cout<<"thirteen"; break;
			case 14: cout<<"fourteen"; break;
			case 15: cout<<"fifteen"; break;
			case 16: cout<<"sixteen"; break;
			case 17: cout<<"seventeen"; break;
			case 18: cout<<"eighteen"; break;
			case 19: cout<<"nineteen"; break; 
	} }  else if(l>=2 && l<=9) {
		switch(l) {
			case 2: cout<<"twenty"; break;
			case 3: cout<<"thirty"; break;
			case 4: cout<<"forty"; break;
			case 5: cout<<"fifty"; break;
			case 6: cout<<"sixty"; break;
			case 7: cout<<"seventy"; break;
			case 8: cout<<"eighty"; break;
			case 9: cout<<"ninety"; break; }
	
	if(r>=1) {
	switch(r) {
			case 1: cout<<"-one"; break;
			case 2: cout<<"-two"; break;
			case 3: cout<<"-three"; break;
			case 4: cout<<"-four"; break;
			case 5: cout<<"-five"; break;
			case 6: cout<<"-six"; break;
			case 7: cout<<"-seven"; break;
			case 8: cout<<"-eight"; break;
			case 9: cout<<"-nine"; break;
	}
		}	
		} 
return 0;	
}
```

12. Calculate electricity bill
```
#include <iostream>
using namespace std;

int main() {
    double o,n, kwh, price;
    cout << "Input the old and new indicators: ";
    cin >> o >> n;
    kwh = n-o;

    if (kwh<120) {
        price=kwh*1.63;
    }
    else if (kwh<330) {
        price=120*1.63 + (kwh-120)*2.38;
    }
    else if (kwh<500) {
        price=120*1.63+210*2.38+(kwh-330)*3.52;
    }
    else if (kwh<700) {
        price=120*1.63+210*2.38+170*3.52+(kwh-500)*4.8;
    }
    else if (kwh<1000) {
        price=120*1.63+210*2.38+170*3.52+700*5.66+(kwh-700)*5.66;
    }
    else if (kwh>1000) {
        price=120*1.63+210*2.38+170*3.52+700*5.66+1000*5.66+(kwh-1000)*6.99;
    }
    cout << "kWh used: " << kwh << endl;
    cout << "Price: " << price << endl;
return 0;
}
```





