//student simulator
#include <string>
#include <iostream>
#include <cstdlib>
using namespace std;
class student
{
private:
int num; //student num
float grade; //student grade
int workEthic; //rating of student work ethic (1-10)
string personalityType; //string value
public:
student(int n, float g, int wE, string pT)
: num(n),
grade(g),
workEthic(wE),
personalityType(pT)
{}
student() :num(0), grade(0), workEthic(0), personalityType("dead")
{}
void askQuestion()
{
workEthic++;
grade += 0.5;
}
void sleep()
{
workEthic = 0;
personalityType = "sleepy";
grade -= 3.3;
}
void wake()
{
workEthic += 3;
personalityType = "awake";
grade += 3.2;
}
void display()
{
cout << "id num=" << num << endl;
cout << "grade=" << grade << endl;
cout << "work ethic=" << workEthic << endl;
cout << personalityType << endl;
}
};
int main()
{
student matthew(5, 96.5, 2, "bored");
matthew.sleep();
matthew.display();
cout << endl;
matthew.wake();
matthew.askQuestion();
matthew.display();
return 0;
}
Ly9zdHVkZW50IHNpbXVsYXRvcgoKI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBzdHVkZW50CnsKcHJpdmF0ZToKCWludCAgICAgbnVtOyAgICAvL3N0dWRlbnQgbnVtCglmbG9hdCAgIGdyYWRlOyAgLy9zdHVkZW50IGdyYWRlCglpbnQgICAgIHdvcmtFdGhpYzsgLy9yYXRpbmcgb2Ygc3R1ZGVudCB3b3JrIGV0aGljICgxLTEwKQoJc3RyaW5nIHBlcnNvbmFsaXR5VHlwZTsgLy9zdHJpbmcgdmFsdWUgCgpwdWJsaWM6CglzdHVkZW50KGludCBuLCBmbG9hdCBnLCBpbnQgd0UsIHN0cmluZyBwVCkKICAgICAgICA6IG51bShuKSwKICAgICAgICAgIGdyYWRlKGcpLAogICAgICAgICAgd29ya0V0aGljKHdFKSwKICAgICAgICAgIHBlcnNvbmFsaXR5VHlwZShwVCkKCXt9CgoJc3R1ZGVudCgpIDpudW0oMCksIGdyYWRlKDApLCB3b3JrRXRoaWMoMCksIHBlcnNvbmFsaXR5VHlwZSgiZGVhZCIpCgl7fQoKCXZvaWQgIGFza1F1ZXN0aW9uKCkKCXsKCQl3b3JrRXRoaWMrKzsKCQlncmFkZSArPSAwLjU7Cgl9CgoJdm9pZCAgc2xlZXAoKQoJewoJCXdvcmtFdGhpYyA9IDA7CgkJcGVyc29uYWxpdHlUeXBlID0gInNsZWVweSI7CgkJZ3JhZGUgLT0gMy4zOwoKCX0KCgl2b2lkICB3YWtlKCkKCXsKCQl3b3JrRXRoaWMgKz0gMzsKCQlwZXJzb25hbGl0eVR5cGUgPSAiYXdha2UiOwoJCWdyYWRlICs9IDMuMjsKCX0KCgl2b2lkIGRpc3BsYXkoKQoJewoJCWNvdXQgPDwgImlkIG51bT0iIDw8IG51bSA8PCBlbmRsOwoJCWNvdXQgPDwgImdyYWRlPSIgPDwgZ3JhZGUgPDwgZW5kbDsKCQljb3V0IDw8ICJ3b3JrIGV0aGljPSIgPDwgd29ya0V0aGljIDw8IGVuZGw7CgkJY291dCA8PCBwZXJzb25hbGl0eVR5cGUgPDwgZW5kbDsKCX0KfTsKCgppbnQgbWFpbigpCnsKCXN0dWRlbnQgbWF0dGhldyg1LCA5Ni41LCAyLCAiYm9yZWQiKTsKCW1hdHRoZXcuc2xlZXAoKTsKCW1hdHRoZXcuZGlzcGxheSgpOwoJY291dCA8PCBlbmRsOwoKCW1hdHRoZXcud2FrZSgpOwoJbWF0dGhldy5hc2tRdWVzdGlvbigpOwoJbWF0dGhldy5kaXNwbGF5KCk7CglyZXR1cm4gMDsKfQo=