SHARE
TWEET

Untitled

a guest Jan 26th, 2020 73 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2. Autor: René Thal
  3. Zweck: Auskunft, ob Prüfung insgesamt bestanden oder nicht
  4. Datum 25.01.2020
  5.  
  6. Prüfung besteht den Teilen A und B, gegliedert in A.1, A.2 sowie B.1, B.2 und B.3
  7. Ist in einem Teil (A oder B) Gesamtpunktzahl<50, gilt dieser Prüfungsteil als nicht bestanden
  8. Wenn Teil B Gesamtpunktzahl<50 gilt dies als nicht bestanden und muss wiederholt werden
  9. Wenn Teil B eine oder zwei Teilprüfung mangelhaft, besteht möglichkeit der mündl. Nachprüfung
  10. Die Note wird dann 1:2 mit der Note aus der  schriftl. Prüfung verrechnet
  11. Mit dieser neuen Note wird dann diee Gesamtnote Teil B neu berechnet.
  12. Wird eine Teilaufgabe mit Ungenügend abgeschlossen, so gilt dieser Prüfungsteil als fehlgeschlagen
  13. Man kann die Prüfung insgesamt 2 Mal wiederholen
  14. */
  15.  
  16. #include <stdio.h>
  17. #include <stdlib.h>
  18.  
  19. //Eingaben der Ergebnisse des Anwenders
  20. int AUFGABE_A1();
  21. int AUFGABE_A2();
  22. int AUFGABE_B1();
  23. int AUFGABE_B2();
  24. int AUFGABE_B3();
  25.  
  26. //Berechnung der Gesamtpunktzahl des jeweiligen Prüfungsteils
  27. int GESAMTPUNKTE_A(int a1, int a2);
  28. int GESAMTPUNKTE_B(int b1, int b2, int b3);
  29.  
  30. //Prüfung, ob jeweiliger Prüfungsteil bestanden
  31. int PRUEFUNG_A(int a1, int a2, int gesamtpunkte);
  32. int PRUEFUNG_B(int b1, int b2, int b3, int gesamtpunkte);
  33.  
  34. int GESAMT_ERGEBNIS(int a, int b);
  35. int ENDNOTE(int gesa, int gesb);
  36.  
  37. int main()
  38. {
  39. int aufga1=0, aufga2=0, aufgb1=0, aufgb2=0, aufgb3=0;
  40. int gesamta=0, gesamtb=0;
  41. int apass=0, bpass=0, totalpass=0;
  42. int note=0;
  43.  
  44.     aufga1=AUFGABE_A1();
  45.     aufga2=AUFGABE_A2();
  46.     aufgb1=AUFGABE_B1();
  47.     aufgb2=AUFGABE_B2();
  48.     aufgb3=AUFGABE_B3();
  49.  
  50.     gesamta=GESAMTPUNKTE_A(aufga1,aufga2);
  51.     gesamtb=GESAMTPUNKTE_B(aufgb1,aufgb2,aufgb3);
  52.  
  53.     printf("\nGesamtpunkte des Aufgabenteils A: %i", gesamta);
  54.     printf("\nGesamtpunkte des Aufgabenteils B: %i", gesamtb);
  55.  
  56.     apass=PRUEFUNG_A(aufga1,aufga2,gesamta);
  57.     bpass=PRUEFUNG_B(aufgb1,aufgb2,aufgb3,gesamtb);
  58.     totalpass=GESAMT_ERGEBNIS(apass,bpass);
  59.     note=ENDNOTE(gesamta,gesamtb);
  60.     printf("\nNote: %i\n\n\n", note);
  61.  
  62.     return 0;
  63. }
  64.  
  65. int AUFGABE_A1(){
  66.     int a1=0;
  67.     printf("\nPunktzahl Pruefungsteil A, Aufgabe 1: ");
  68.     scanf("%i", &a1);
  69.     return(a1);
  70. }
  71. int AUFGABE_A2(){
  72.     int a2=0;
  73.     printf("\nPunktzahl Pruefungsteil A, Aufgabe 2: ");
  74.     scanf("%i", &a2);
  75.     return(a2);
  76. }
  77. int AUFGABE_B1(){
  78.     int b1=0;
  79.     printf("\nPunktzahl Pruefungsteil B, Aufgabe 1: ");
  80.     scanf("%i", &b1);
  81.     return(b1);
  82. }
  83. int AUFGABE_B2(){
  84.     int b2=0;
  85.     printf("\nPunktzahl Pruefungsteil B, Aufgabe 2: ");
  86.     scanf("%i", &b2);
  87.     return(b2);
  88. }
  89. int AUFGABE_B3(){
  90.     int b3=0;
  91.     printf("\nPunktzahl Pruefungsteil B, Aufgabe 3: ");
  92.     scanf("%i", &b3);
  93.     return(b3);
  94. }
  95. int GESAMTPUNKTE_A(int a1,int a2){
  96.     int gesamtpunkte=0;
  97.     gesamtpunkte=(a1*0.5)+(a2*0.5);
  98.     return(gesamtpunkte);
  99. }
  100. int GESAMTPUNKTE_B(int b1,int b2, int b3){
  101.     int gesamtpunkte=0;
  102.     gesamtpunkte=(b1*0.4)+(b2*0.4)+(b3*0.2);
  103.     return(gesamtpunkte);
  104. }
  105. int PRUEFUNG_A(int a1, int a2, int gesamtpunkte){
  106.     int ergebnis=0;
  107.     if(a1>29 && a2>29){
  108.         if(gesamtpunkte>49){
  109.             printf("\nPruefungsteil A bestanden!");
  110.             ergebnis=1;
  111.             return(ergebnis);
  112.         }
  113.     }else{
  114.         printf("\nPruefungsteil A nicht bestanden. Viel Erfolg beim naechsten Versuch!");
  115.         ergebnis=0;
  116.         return(ergebnis);
  117.     }
  118. }
  119. int PRUEFUNG_B(int b1, int b2, int b3, int gesamtpunkte){
  120.     int ergebnis=0;
  121.     if(b1>29 && b2>29 && b3>29){
  122.         if(gesamtpunkte>49){
  123.             printf("\nPruefungsteil B bestanden!\n");
  124.             ergebnis=1;
  125.             return(ergebnis);
  126.         }
  127.     }else{
  128.         printf("\nPruefungsteil B nicht bestanden. Viel Erfolg beim naechsten Versuch!\n");
  129.         ergebnis=0;
  130.         return(ergebnis);
  131.     }
  132. }
  133. int GESAMT_ERGEBNIS(int a, int b){
  134.     if(a==1 && b==1){
  135.         printf("\nPruefung insgesamt bestanden");
  136.     } else{
  137.         printf("\nPruefung insgesamt nicht bestanden");
  138.         }
  139. }
  140. int ENDNOTE(int gesa, int gesb){
  141.     float endpunktzahl=0;
  142.     int endnote=0;
  143.  
  144.         endpunktzahl=(gesa*0.5) + (gesb*0.5);
  145.  
  146.     if (endpunktzahl>=92 && endpunktzahl<101){
  147.         endnote=1;
  148.         return(endnote);
  149.     }
  150.     else if (endpunktzahl>=81 && endpunktzahl<92){
  151.         endnote=2;
  152.         return(endnote);
  153.     }
  154.     else if (endpunktzahl>=67 && endpunktzahl<81){
  155.         endnote=3;
  156.         return(endnote);
  157.     }
  158.     else if (endpunktzahl>=50 && endpunktzahl<67){
  159.         endnote=4;
  160.         return(endnote);
  161.     }
  162.     else if (endpunktzahl>=30 && endpunktzahl<50){
  163.         endnote=5;
  164.         return(endnote);
  165.     }
  166.     else if (endpunktzahl>=0 && endpunktzahl<30){
  167.         endnote=6;
  168.         return(endnote);
  169.     }
  170. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top