// Lab 8, Working with structs
// Programmer : Maiar Khattab
// Editor(s) used : Code Blocks 13.12
// Compiler(s) used : Code Blocks 13.12
#include<iostream>
using std::cout;
using std::endl;
#include<cstdlib>
//struct def
struct tod
{
int hour;// the hr , 0-23
int minute;// the min, 0-59
int second;//the sec, 0-59
char descr [32];//the description of the time of day
};
//void printTod(const tod&);
int main ()
{
cout << "Lab 8, Working With structs\n";
cout << "Programmer: Maiar Khattab\n";
cout << "Editor(s) used: Code Blocks 13.12\n";
cout << "Compiler(s) used: Code Blocks 13.12\n";
cout << "File: " << __FILE__ << endl;
cout << "Complied: " << __DATE__ << " at " << __TIME__ << endl << endl;
tod theTime[] = {{12,0,0, "noon"},
{0,0,0," midnight"},
{6,00,00," supper "},
{11,30,0,"bedtime"}};
for(int i; i <5; i++)
{
char descr [32];
cout << theTime[i].descr << " is " << theTime[i].hour << ':'
<< theTime[i].minute << ":" << theTime[i].second << endl;
}
}
IC8vIExhYiA4LCBXb3JraW5nIHdpdGggc3RydWN0cwovLyBQcm9ncmFtbWVyIDogTWFpYXIgS2hhdHRhYgovLyBFZGl0b3IocykgdXNlZCA6IENvZGUgQmxvY2tzIDEzLjEyCi8vIENvbXBpbGVyKHMpIHVzZWQgOiBDb2RlIEJsb2NrcyAxMy4xMgoKI2luY2x1ZGU8aW9zdHJlYW0+CnVzaW5nIHN0ZDo6Y291dDsKdXNpbmcgc3RkOjplbmRsOwoKI2luY2x1ZGU8Y3N0ZGxpYj4KCi8vc3RydWN0IGRlZgpzdHJ1Y3QgdG9kCnsKaW50IGhvdXI7Ly8gdGhlIGhyICwgMC0yMwppbnQgbWludXRlOy8vIHRoZSBtaW4sIDAtNTkKaW50IHNlY29uZDsvL3RoZSBzZWMsIDAtNTkKY2hhciBkZXNjciBbMzJdOy8vdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSB0aW1lIG9mIGRheQoKfTsKLy92b2lkIHByaW50VG9kKGNvbnN0IHRvZCYpOwppbnQgbWFpbiAoKQp7CiAgY291dCA8PCAiTGFiIDgsIFdvcmtpbmcgV2l0aCBzdHJ1Y3RzXG4iOwogIGNvdXQgPDwgIlByb2dyYW1tZXI6IE1haWFyIEtoYXR0YWJcbiI7CiAgY291dCA8PCAiRWRpdG9yKHMpIHVzZWQ6IENvZGUgQmxvY2tzIDEzLjEyXG4iOwogIGNvdXQgPDwgIkNvbXBpbGVyKHMpIHVzZWQ6IENvZGUgQmxvY2tzIDEzLjEyXG4iOwogIGNvdXQgPDwgIkZpbGU6ICIgPDwgX19GSUxFX18gPDwgZW5kbDsKICBjb3V0IDw8ICJDb21wbGllZDogIiA8PCBfX0RBVEVfXyA8PCAiIGF0ICIgPDwgX19USU1FX18gPDwgZW5kbCA8PCBlbmRsOwoKICAgICAgICAgICAgdG9kIHRoZVRpbWVbXSA9ICB7ezEyLDAsMCwgIm5vb24ifSwKICAgICAgICAgICAgezAsMCwwLCIgbWlkbmlnaHQifSwKICAgICAgICAgICAgezYsMDAsMDAsIiBzdXBwZXIgIn0sCiAgICAgICAgICAgIHsxMSwzMCwwLCJiZWR0aW1lIn19OwogICAgICAgICAgCiAgICAgICAgICBmb3IoaW50IGk7IGkgPDU7IGkrKykKICAgICAgICAgIHsKICAgICAgICAgICAgIGNoYXIgZGVzY3IgWzMyXTsgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICBjb3V0IDw8IHRoZVRpbWVbaV0uZGVzY3IgPDwgIiBpcyAiIDw8IHRoZVRpbWVbaV0uaG91ciA8PCAnOicgCiAgICAgICAgICAgIDw8IHRoZVRpbWVbaV0ubWludXRlIDw8ICI6IiA8PCB0aGVUaW1lW2ldLnNlY29uZCA8PCBlbmRsOyAKICAgICAgICAgIH0KfQogICAgICAKICA=
IAojaW5jbHVkZSAmbHQ7aW9zdHJlYW0mZ3Q7CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgovL1JlZ3VsYXIgQWNjb3VudCAgCnZvaWQgUmVndWxhckFjY291bnQoaW50IGFjY291bnROdW1iZXIsIGludCBtaW51dGVzKSB7CiAgICBpZihtaW51dGVzICZsdDsgNTApewogICAgICAgIGNvdXQgJmx0OyZsdDsgJnF1b3Q7QWNjb3VudCBudW1iZXI6ICZxdW90OyAmbHQ7Jmx0OyBhY2NvdW50TnVtYmVyICZsdDsmbHQ7ZW5kbDsKICAgICAgICBjb3V0ICZsdDsmbHQ7ICZxdW90O0Ftb3VudCB0byBwYXk6ICBSMCZxdW90OzsKICAgIH0KICAgIGVsc2UgaWYobWludXRlcyAmZ3Q7PSA1MSl7CiAgICAgICAgaW50IGFtb3VudCA9IDEwMCArICgobWludXRlcyAtIDUwKSAqIDIpOwogICAgICAgICAgICBjb3V0ICZsdDsmbHQ7ICZxdW90O0FjY291bnQgbnVtYmVyOiAmcXVvdDsgJmx0OyZsdDsgYWNjb3VudE51bWJlciZsdDsmbHQ7ZW5kbDsKICAgICAgICAgICAgY291dCAmbHQ7Jmx0OyAmcXVvdDtBbW91bnQgdG8gcGF5OiBSJnF1b3Q7Jmx0OyZsdDthbW91bnQ7CiAgICB9Cn0KLy9QcmVtaXVtIEFjY291bnQKdm9pZCBEYXlNaW51dGVzKGludCBhY2NvdW50TnVtYmVyLCBpbnQgbWludXRlcyl7CiAgICBpZiAobWludXRlcyAmbHQ7PSA3NSl7CiAgICAgICAgY291dCZsdDsmbHQ7ICZxdW90O0FjY291bnQgTnVtYmVyOiAmcXVvdDsmbHQ7Jmx0OyBhY2NvdW50TnVtYmVyJmx0OyZsdDtlbmRsOwogICAgICAgIGNvdXQmbHQ7Jmx0OyAmcXVvdDtBbW91bnQgdG8gcGF5OiBSMCZxdW90OyZsdDsmbHQ7ZW5kbDsKICAgIH0KICAgIGVsc2UgaWYobWludXRlcyAmZ3Q7PTc2KXsKICAgICAgICBpbnQgYW1vdW50ID0gMjUwICsgKChtaW51dGVzIC0gNzUpICogMSk7CiAgICAgICAgY291dCZsdDsmbHQ7ICZxdW90O0FjY291bnQgTnVtYmVyOiAmcXVvdDsmbHQ7Jmx0OyBhY2NvdW50TnVtYmVyJmx0OyZsdDtlbmRsOwogICAgICAgIGNvdXQmbHQ7Jmx0OyAmcXVvdDtBbW91bnQgdG8gcGF5OiBSJnF1b3Q7Jmx0OyZsdDthbW91bnQmbHQ7Jmx0O2VuZGw7CiAgICB9Cn0Kdm9pZCBOaWdodE1pbnV0ZXMoaW50IGFjY291bnROdW1iZXIsIGludCBtaW51dGVzKXsKICAgIGlmIChtaW51dGVzICZsdDs9IDEwMCl7CiAgICAgICAgY291dCZsdDsmbHQ7ICZxdW90O0FjY291bnQgTnVtYmVyOiAmcXVvdDsmbHQ7Jmx0OyBhY2NvdW50TnVtYmVyJmx0OyZsdDtlbmRsOwogICAgICAgIGNvdXQmbHQ7Jmx0OyAmcXVvdDtBbW91bnQgdG8gcGF5OiBSMCZxdW90OyZsdDsmbHQ7ZW5kbDsKICAgIH0KICAgIGVsc2UgaWYobWludXRlcyAmZ3Q7PTEwMSl7CiAgICAgICAgaW50IGFtb3VudCA9IDI1MCArIChtaW51dGVzIC0gMTAwKSAqIDAuNTsKICAgICAgICBjb3V0Jmx0OyZsdDsgJnF1b3Q7QWNjb3VudCBOdW1iZXI6ICZxdW90OyZsdDsmbHQ7IGFjY291bnROdW1iZXImbHQ7Jmx0O2VuZGw7CiAgICAgICAgY291dCZsdDsmbHQ7ICZxdW90O0Ftb3VudCB0byBwYXk6IFImcXVvdDsmbHQ7Jmx0O2Ftb3VudCZsdDsmbHQ7ZW5kbDsKICAgIH0KfQoKCmludCBtYWluKCkgewoKICAgIGludCBBY2NvdW50TnVtYmVyOwogICAgY291dCAmbHQ7Jmx0OyAmcXVvdDtQbGVhc2UgZW50ZXIgeW91ciBhY2NvdW50IG51bWJlcjogJnF1b3Q7OwogICAgY2luICZndDsmZ3Q7IEFjY291bnROdW1iZXI7CgoKICAgIGNoYXIgU2VydmljZUNvZGU7CiAgICBjb3V0ICZsdDsmbHQ7ICZxdW90O1BsZWFzZSBlbnRlciB5b3VyIHNlcnZpY2UgY29kZTogJnF1b3Q7OwogICAgY2luICZndDsmZ3Q7IFNlcnZpY2VDb2RlOwogICAgU2VydmljZUNvZGUgPSB0b3VwcGVyKFNlcnZpY2VDb2RlKTsKCiAgICBpbnQgVG90YWxNaW51dGVzLCBkYXlNaW51dGVzLCBuaWdodE1pbnV0ZXM7CgogICAgLy9TZXJ2aWNlIENoZWNrCiAgICBzd2l0Y2ggKFNlcnZpY2VDb2RlKSB7CiAgICAgICAgY2FzZSAnUic6CiAgICAgICAgICAgIGNvdXQgJmx0OyZsdDsgJnF1b3Q7UGxlYXNlIGVudGVyIG51bWJlciBvZiBtaW51dGVzIHVzZWQ6ICZxdW90OzsKICAgICAgICAgICAgY2luICZndDsmZ3Q7IFRvdGFsTWludXRlczsKICAgICAgICAgICAgUmVndWxhckFjY291bnQoQWNjb3VudE51bWJlciwgVG90YWxNaW51dGVzKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnUCc6CiAgICAgICAgICAgIGNvdXQgJmx0OyZsdDsgJnF1b3Q7UGxlYXNlIGVudGVyIG51bWJlciBvZiBtaW51dGVzIHVzZWQgZHVyaW5nIHRoZSBkYXk6ICZxdW90OzsKICAgICAgICAgICAgY2luICZndDsmZ3Q7IGRheU1pbnV0ZXM7CiAgICAgICAgICAgIERheU1pbnV0ZXMoQWNjb3VudE51bWJlciwgZGF5TWludXRlcyk7CgogICAgICAgICAgICBjb3V0ICZsdDsmbHQ7ICZxdW90O1BsZWFzZSBlbnRlciBudW1iZXIgb2YgbWludXRlcyB0aGUgc2VydmljZSB3YXMg
#include <iostream>
using namespace std;
//Regular Account
void RegularAccount(int accountNumber, int minutes) {
if(minutes < 50){
cout << "Account number: " << accountNumber <<endl;
cout << "Amount to pay: R0";
}
else if(minutes >= 51){
int amount = 100 + ((minutes - 50) * 2);
cout << "Account number: " << accountNumber<<endl;
cout << "Amount to pay: R"<<amount;
}
}
//Premium Account
void DayMinutes(int accountNumber, int minutes){
if (minutes <= 75){
cout<< "Account Number: "<< accountNumber<<endl;
cout<< "Amount to pay: R0"<<endl;
}
else if(minutes >=76){
int amount = 250 + ((minutes - 75) * 1);
cout<< "Account Number: "<< accountNumber<<endl;
cout<< "Amount to pay: R"<<amount<<endl;
}
}
void NightMinutes(int accountNumber, int minutes){
if (minutes <= 100){
cout<< "Account Number: "<< accountNumber<<endl;
cout<< "Amount to pay: R0"<<endl;
}
else if(minutes >=101){
int amount = 250 + (minutes - 100) * 0.5;
cout<< "Account Number: "<< accountNumber<<endl;
cout<< "Amount to pay: R"<<amount<<endl;
}
}
int main() {
int AccountNumber;
cout << "Please enter your account number: ";
cin >> AccountNumber;
char ServiceCode;
cout << "Please enter your service code: ";
cin >> ServiceCode;
ServiceCode = toupper(ServiceCode);
int TotalMinutes, dayMinutes, nightMinutes;
//Service Check
switch (ServiceCode) {
case 'R':
cout << "Please enter number of minutes used: ";
cin >> TotalMinutes;
RegularAccount(AccountNumber, TotalMinutes);
break;
case 'P':
cout << "Please enter number of minutes used during the day: ";
cin >> dayMinutes;
DayMinutes(AccountNumber, dayMinutes);
cout << "Please enter number of minutes the service was