-
Notifications
You must be signed in to change notification settings - Fork 0
/
percentage_calculator(6_subjects).cpp
136 lines (119 loc) · 3.34 KB
/
percentage_calculator(6_subjects).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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
void execute();
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
class result {
public:
string name, surname;
float english, maths, it, physics, chemistry, bio, smallest, tot, percent;
void getdata() {
cout<<"Enter your full name: ";
cin>>name>>surname;
cout<<"\nEnter the marks scored:- "<<endl;
cout<<"1. English: ";
cin>>english;
cout<<"2. Maths: ";
cin>>maths;
cout<<"3. Information Technology : ";
cin>>it;
cout<<"4. Physics: ";
cin>>physics;
cout<<"5. Chemistry: ";
cin>>chemistry;
cout<<"6. Biology : ";
cin>>bio;
cout<<endl<<"------------------------"<<endl;
}
void best5() {
smallest = english;
if (smallest > maths) {
smallest = maths;
} else if (smallest > it) {
smallest = it;
} else if (smallest > physics) {
smallest = physics;
} else if (smallest > chemistry) {
smallest = chemistry;
} else if (smallest > bio) {
smallest = bio;
} else {
smallest = english;
}
}
void calculate() {
tot = english + maths + it + physics + chemistry + bio - smallest;
if (tot > 500) {
cout<<"Error: Total is Greater than 500!"<<endl;
loop();
}
percent = (tot/500) * 100;
}
void display() {
if (tot < 500) {
cout<<"Result:- ";
cout<<"Student Name: "<<name<<" "<<surname;
cout<<endl<<"------------------------"<<endl;
cout<<"Marks Scored:- \n"<<"1. English: "<<english<<endl<<"2. Maths: "<<maths<<endl<<"3. Information Technology : "<<it<<endl<<"4. Physics: "<<physics<<endl<<"5. Chemistry: "<<chemistry<<endl<<"6. Biology : "<<bio<<endl;
cout<<endl<<"------------------------"<<endl;
cout<<"Total Marks (Out of 500): "<<tot;
cout<<endl<<"------------------------"<<endl;
cout<<"Percetage: "<<percent<<"%";
cout<<endl<<"------------------------"<<endl;
} else {
cout<<"\nResult:- "<<endl;
cout<<"Error: Total marks are greater than 500!";
}
}
void save() {
ofstream f1(name + " " + surname + " Result.txt");
f1<<"Result:- "<<endl;
f1<<"Student Name: "<<name<<" "<<surname;
f1<<endl<<"------------------------"<<endl;
f1<<"Marks Scored:- \n"<<"1. English: "<<english<<endl<<"2. Maths: "<<maths<<endl<<"3. Information Technology : "<<it<<endl<<"4. Physics: "<<physics<<endl<<"5. Chemistry: "<<chemistry<<endl<<"6. Biology : "<<bio<<endl;
f1<<endl<<"------------------------"<<endl;
f1<<"Total Marks: "<<tot;
f1<<endl<<"------------------------"<<endl;
f1<<"Percetage: "<<percent<<"%";
cout<<endl<<"------------------------"<<endl;
cout<<"Result saved as "<<name<<" "<<surname<<" Result.txt";
cout<<endl<<"------------------------"<<endl;
}
void loop() {
char choice;
cout<<"Do you want to run the program again (y/n)? ";
cin>>choice;
if (choice == 'y') {
execute();
} else {
exit(0);
}
}
};
int main() {
execute();
return 0;
}
void execute() {
result obj;
obj.getdata();
obj.best5();
obj.calculate();
obj.display();
char save;
cout<<"Do you want to save the result (y/n)? ";
cin>>save;
cout<<"------------------------"<<endl;
if (save == 'y') {
obj.save();
obj.loop();
} else if (save == 'n') {
cout<<"Result not saved.";
cout<<endl<<"------------------------"<<endl;
obj.loop();
} else {
cout<<"Error: Invalid Input";
cout<<endl<<"------------------------"<<endl;
obj.loop();
}
}