-
Notifications
You must be signed in to change notification settings - Fork 36
Expand file tree
/
Copy pathif.cpp
More file actions
27 lines (25 loc) · 649 Bytes
/
if.cpp
File metadata and controls
27 lines (25 loc) · 649 Bytes
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
#include <iostream>
#include <vector>
#include <string>
#define MAX(a,b) (((a)>(b))?(a):(b))
#define MIN(a,b) (((a)<(b))?(a):(b))
int main()
{
std::vector<std::string> scores = {"F","D","C","B","A","A++"};
int grade;
while (std::cin >> grade)
{
std::string lettergrade;
grade = MIN(MAX(50, grade), 100);
lettergrade = scores[(grade-50)/10];
if (grade>60 && grade <100)
{
if (grade % 10 > 7)
lettergrade += '+';
else if (grade % 10 < 3)
lettergrade += '-';
}
std::cout << lettergrade << std::endl;
}
return 0;
}