#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
void getJudgeData(int &x);
double findLowest(int a, int b, int c, int d);
double findHighest(int a, int b, int c, int d);
void calcScore (int a, int b, int c, int d);
int main() {
int s1,s2,s3,s4;
getJudgeData(s1);
getJudgeData(s2);
getJudgeData(s3);
getJudgeData(s4);
calcScore (s1,s2,s3,s4);
return 0;
}
void getJudgeData(int &x) {
cout << " Enter the judge's score: \n";
cin >> x;
while (x < 0 || x > 20) {
cout << "That is an invalid score. Please try again.\n"
<< "The score must be from 0 to 20.\n";
cin >> x;
}
}
double findLowest(int a, int b , int c , int d) {
int lowest = a;
if (b < lowest) {
lowest = b;
}
if (c < lowest) {
lowest = c;
}
if (d < lowest) {
lowest = d;
}
return lowest;
}
double findHighest(int a, int b, int c, int d){
int highest = a;
if (b > highest) {
highest = b;
}
if (c > highest) {
highest = c;
}
if (d > highest){
highest = d;
}
return highest;
}
void calcScore(int a, int b, int c, int d) {
double low = findLowest (a,b,c,d);
double high = findHighest( a,b,c,d);
cout << "The performers final score is: "
<< ((a + b + c + d - low - high) / 2.0) << endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8aW9tYW5pcD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgZ2V0SnVkZ2VEYXRhKGludCAmeCk7CmRvdWJsZSBmaW5kTG93ZXN0KGludCBhLCBpbnQgYiwgaW50IGMsIGludCBkKTsKZG91YmxlIGZpbmRIaWdoZXN0KGludCBhLCBpbnQgYiwgaW50IGMsIGludCBkKTsKdm9pZCBjYWxjU2NvcmUgKGludCBhLCBpbnQgYiwgaW50IGMsIGludCBkKTsKCgoKaW50IG1haW4oKSB7CglpbnQgczEsczIsczMsczQ7CglnZXRKdWRnZURhdGEoczEpOwoJZ2V0SnVkZ2VEYXRhKHMyKTsKCWdldEp1ZGdlRGF0YShzMyk7CglnZXRKdWRnZURhdGEoczQpOwoJCgljYWxjU2NvcmUgKHMxLHMyLHMzLHM0KTsKCQoJCgkKCQoJcmV0dXJuIDA7Cn0KCgoJdm9pZCBnZXRKdWRnZURhdGEoaW50ICZ4KSB7CgkJY291dCA8PCAiIEVudGVyIHRoZSBqdWRnZSdzIHNjb3JlOiBcbiI7CgkJY2luID4+IHg7CgkJCgkJd2hpbGUgKHggPCAwIHx8IHggPiAyMCkgewoJCQljb3V0IDw8ICJUaGF0IGlzIGFuIGludmFsaWQgc2NvcmUuIFBsZWFzZSB0cnkgYWdhaW4uXG4iCgkJCQk8PCAiVGhlIHNjb3JlIG11c3QgYmUgZnJvbSAwIHRvIDIwLlxuIjsKCQkJIGNpbiA+PiB4OwoJCX0KCX0KCQoJZG91YmxlIGZpbmRMb3dlc3QoaW50IGEsIGludCBiICwgaW50IGMgLCBpbnQgZCkgewoJCWludCBsb3dlc3QgPSBhOwoJCQoJCWlmIChiIDwgbG93ZXN0KSB7CgkJCWxvd2VzdCA9IGI7CgkJfQoJCWlmIChjIDwgbG93ZXN0KSB7CgkJCWxvd2VzdCA9IGM7CgkJfQoJCWlmIChkIDwgbG93ZXN0KSB7CgkJCWxvd2VzdCA9IGQ7CgkJfQoJCQoJCXJldHVybiBsb3dlc3Q7Cgl9CgkKCWRvdWJsZSBmaW5kSGlnaGVzdChpbnQgYSwgaW50IGIsIGludCBjLCBpbnQgZCl7CgkJaW50IGhpZ2hlc3QgPSBhOwoJCQoJCWlmIChiID4gaGlnaGVzdCkgewoJCQloaWdoZXN0ID0gYjsKCQl9CgkJaWYgKGMgPiBoaWdoZXN0KSB7CgkJCWhpZ2hlc3QgPSBjOwoJCX0KCQlpZiAoZCA+IGhpZ2hlc3QpewoJCQloaWdoZXN0ID0gZDsKCQl9CgkJcmV0dXJuIGhpZ2hlc3Q7Cgl9CgoJdm9pZCBjYWxjU2NvcmUoaW50IGEsIGludCBiLCBpbnQgYywgaW50IGQpIHsKCQkKCQlkb3VibGUgbG93ID0gZmluZExvd2VzdCAoYSxiLGMsZCk7CgkJZG91YmxlIGhpZ2ggPSBmaW5kSGlnaGVzdCggYSxiLGMsZCk7CgkJY291dCA8PCAiVGhlIHBlcmZvcm1lcnMgZmluYWwgc2NvcmUgaXM6ICIKCQkJPDwgKChhICsgYiArIGMgKyBkIC0gbG93IC0gaGlnaCkgLyAyLjApIDw8IGVuZGw7CgkJCgl9CgkKCQoJCgoJCgkKCQoKCQo=