Advertisement
Spocoman

Credit System

Sep 23rd, 2023
1,082
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.40 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7.     int n, number;
  8.     cin >> n;
  9.  
  10.     double totalGrades = 0;
  11.     double totalCredits = 0;
  12.  
  13.     for (int i = 0; i < n; i++) {
  14.         cin >> number;
  15.         int grade = number % 10;
  16.         double credit = (int)number / 10;
  17.  
  18.         totalGrades += grade;
  19.  
  20.         if (grade == 2) {
  21.             credit = 0;
  22.         }
  23.         else if (grade == 3) {
  24.             credit *= 0.50;
  25.         }
  26.         else if (grade == 4) {
  27.             credit *= 0.70;
  28.         }
  29.         else if (grade == 5) {
  30.             credit *= 0.85;
  31.         }
  32.  
  33.         totalCredits += credit;
  34.     }
  35.  
  36.     printf("%.2f\n%.2f\n", totalCredits, totalGrades / n);
  37.  
  38.     return 0;
  39. }
  40.    
  41. Решение с тернарен оператор:
  42.  
  43. #include <iostream>
  44. #include <string>
  45.  
  46. using namespace std;
  47.  
  48. int main() {
  49.     int n, number;
  50.     cin >> n;
  51.  
  52.     double totalGrades = 0;
  53.     double totalCredits = 0;
  54.  
  55.     for (int i = 0; i < n; i++) {
  56.         cin >> number;
  57.         int grade = number % 10;
  58.         double credit = (int)number / 10;
  59.  
  60.         totalGrades += grade;
  61.  
  62.         credit *=
  63.             grade == 2 ? 0 :
  64.             grade == 3 ? 0.50 :
  65.             grade == 4 ? 0.75 :
  66.             grade == 5 ? 0.85 : 1;
  67.  
  68.         totalCredits += credit;
  69.     }
  70.  
  71.     printf("%.2f\n%.2f\n", totalCredits, totalGrades / n);
  72.  
  73.     return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement