-
Notifications
You must be signed in to change notification settings - Fork 0
/
Day4_ClassVsInstance.cpp
78 lines (70 loc) · 1.94 KB
/
Day4_ClassVsInstance.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
// THE PROBLEM
// ***************************
// Write a Person class with an instance variable, , and a constructor that takes an integer, , as a parameter.
// The constructor must assign to after confirming the argument passed as is not negative;
// if a negative argument is passed as , the constructor should set to and print Age is not valid, setting age to 0..
// In addition, you must write the following instance methods:
// yearPasses() should increase the instance variable by .
// amIOld() should perform the following conditional actions:
// If , print You are young..
// If and , print You are a teenager..
// Otherwise, print You are old..
// Solution Created By: Dustin Kaban
// Date: May 30th, 2020
// ***************************
using namespace std;
#include <iostream>
class Person{
public:
int age;
Person(int initialAge);
void amIOld();
void yearPasses();
};
Person::Person(int initialAge){
// Add some more code to run some checks on initialAge
if(initialAge < 0)
{
age = 0;
printf("Age is not valid, setting age to 0.\n");
}
else
{
age = initialAge;
}
}
void Person::amIOld(){
// Do some computations in here and print out the correct statement to the console
if(age < 13)
{
printf("You are young.\n");
}
else if(age >= 13 && age < 18)
{
printf("You are a teenager.\n");
}
else
{
printf("You are old.\n");
}
}
void Person::yearPasses(){
// Increment the age of the person in here
age++;
}
int main(){
int t;
int age;
cin >> t;
for(int i=0; i < t; i++) {
cin >> age;
Person p(age);
p.amIOld();
for(int j=0; j < 3; j++) {
p.yearPasses();
}
p.amIOld();
cout << '\n';
}
return 0;
}