Facebook
From Okon, 1 Year ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 154
  1. #include "stdafx.h"
  2. #include <iostream>
  3. #include <string>
  4. #include <fstream>
  5. #include <time.h>
  6. using namespace std;
  7.  
  8. class brak_danych :public exception {
  9.         const char* what() const throw() {
  10.                 return "brak danych";
  11.         }
  12. };
  13. class blad_pliku :public exception {
  14.         const char* what() const throw() {
  15.                 return "blad pliku";
  16.         }
  17. };
  18. class brak_obecnosci :public exception {
  19.         const char* what() const throw() {
  20.                 return "brak obecnosci";
  21.         }
  22. };
  23.  
  24. class Student {
  25. public:
  26.         string dane;
  27.         int* punkty;
  28.         bool* obecnosci;
  29.         double OcenaKoncowa;
  30.         int ObliczOcene() {
  31.                 int obecnosc = 0;
  32.                 for (int i = 0; i < 10; i++)
  33.                         if (obecnosci[i] != 0)obecnosc++;
  34.                 if (obecnosc < 5) {
  35.                         throw brak_obecnosci();
  36.                         return 0;
  37.                 }
  38.                 else cout << "Wystarczajaca liczba obecnosci." << endl;
  39.                 int suma = 0;
  40.                 for (int i = 0; i < 10; i++)
  41.                         suma += punkty[i];
  42.                 OcenaKoncowa = suma / 10;
  43.                 cout << "Ocena koncowa: " << OcenaKoncowa << endl;
  44.                 return OcenaKoncowa;
  45.         }
  46.         int Wypisz() {
  47.                 if (dane == "")
  48.                         throw brak_danych();
  49.         }
  50.         void EksportDoPlikuCSV() {
  51.                 fstream plik;
  52.                 plik.open("okon.xlsx", std::ios::in | std::ios::out);
  53.                 if (plik.good() == false)
  54.                         throw blad_pliku();
  55.                 else {
  56.                         cout << "Uzyskano dostep." << endl;
  57.                         plik.close();
  58.                 }
  59.         }
  60.         Student::Student() {
  61.                 OcenaKoncowa = 0;
  62.                 dane = "";
  63.  
  64.                 obecnosci = new bool[10];
  65.                 for (int i = 0; i < 10; i++)
  66.                         obecnosci[i] = rand() % 2;
  67.  
  68.                 punkty = new int[10];
  69.                 for (int i = 0; i < 10; i++)
  70.                         punkty[i] = rand() % 6 + 1;
  71.         }
  72. };
  73.  
  74. class Grupa {
  75.         Student* tablicaStudent√≥w;
  76. };
  77.  
  78. int main()
  79. {
  80.         srand(time(NULL));
  81.         Student x;
  82.         try { x.Wypisz(); }
  83.         catch (exception&e) {
  84.                 cerr << "exception caught: " << e.what() << endl;
  85.         }
  86.         try { x.EksportDoPlikuCSV(); }
  87.         catch (exception&e) {
  88.                 cerr << "exception caught: " << e.what() << endl;
  89.         }
  90.         try { x.ObliczOcene(); }
  91.         catch (exception&e) {
  92.                 cerr << "exception caught: " << e.what() << endl;
  93.         }
  94.  
  95.  
  96.  
  97.         system("pause");
  98.         return 0;
  99. }