Advertisement
Guest User

Untitled

a guest
Dec 9th, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.03 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <sstream>
  4. #include <string>
  5. #include <time.h>
  6. #include <vector>
  7. using namespace std;
  8.  
  9. template <typename T>
  10. void wypelnijMojaTablica2D(T mojaTablica[10][2])
  11. {
  12.     for (int i = 0; i < 10; i++)
  13.     {
  14.         for (int j = 0; j<2; j++) {
  15.             mojaTablica[i][j] = rand();
  16.         }
  17.     }
  18. }
  19.  
  20. template <class Tab, typename T>
  21. void wypisz(Tab mojaTablica,T x,T y) {
  22.     for (int i = 0; i < x; i++)
  23.     {
  24.         for (int j = 0; j<y; j++) {
  25.             cout << mojaTablica[i][j] << " ";
  26.         }
  27.         cout << endl;
  28.     }
  29.     cout << endl;
  30.     cout << endl;
  31. }
  32.  
  33.  template <class Tab, typename T>
  34. void zapiszDoPliku(Tab mojaTablicaXY,T x, T y, string nazwaPliku)
  35. {
  36.     ofstream zapis;
  37.     zapis.open(nazwaPliku);
  38.     if (zapis.good())
  39.     {
  40.         for (int i = 0; i < x; i++)
  41.         {
  42.             for (int j = 0; j < y; j++) {
  43.                 zapis << mojaTablicaXY[i][j] << " ";
  44.             }
  45.             zapis << endl;
  46.         }
  47.     }
  48.     else
  49.     {
  50.         cout << "eror" << endl;
  51.     }
  52.     zapis.close();
  53. }
  54.  
  55. template<class Tab, typename T>
  56. void wczytajZPliku(Tab mojaTablicaXY, string nazwaPliku,T x, T y)
  57. {
  58.     ifstream odczyt;
  59.     odczyt.open(nazwaPliku);
  60.  
  61.     if (odczyt.good())
  62.     {
  63.         for (int i = 0; i < x; i++)
  64.         {
  65.             string myLine;
  66.             getline(odczyt, myLine);
  67.             stringstream sstream(myLine);
  68.             int wsp = 0;
  69.             for (int j = 0; j < y; j++) {
  70.                 sstream >> wsp;
  71.                 mojaTablicaXY[i][j] = wsp;
  72.                
  73.             }
  74.         }
  75.    
  76.     }
  77.     else
  78.     {
  79.         cout << "eror" << endl;
  80.     }
  81.  
  82.     odczyt.close();
  83. }
  84.  
  85. void odlegloscMiedzyPkt(int mojaTablicaXY[10][2], int wyniki[10]) {
  86.     for (int i = 0; i < 10; i++) {
  87.             int wynik = 0;
  88.             wynik = sqrt(abs((mojaTablicaXY[i][0] - mojaTablicaXY[i + 1][0])) ^ 2 + abs((mojaTablicaXY[i][1] - mojaTablicaXY[i + 1][1])) ^ 2);
  89.             wyniki[i] = wynik;
  90.             cout << wyniki[i] << endl;
  91.     }
  92. }
  93.  
  94. void najblizszaOdl(int wyniki[10],int mojaTablicaXY[10][2]) {
  95.     int min = wyniki[0];
  96.     int index = 0;
  97.     for (int i = 0; i < 10; i++) {
  98.         if (wyniki[i] < min) {
  99.             min = wyniki[i];
  100.             index = i;
  101.         }
  102.     }
  103.     cout << "najblizsze pkt A(" << mojaTablicaXY[index][0] << ", " << mojaTablicaXY[index][1] << "), B(" << mojaTablicaXY[index+1][0] << ", " << mojaTablicaXY[index+1][1] << ")" << endl;
  104.     cout << "Ich odleglosc to "<< min << endl;
  105. }
  106.  
  107. void wypiszPolaczenia2(int wyniki[10], int polaczeniaTab[10][10],double punktyTab[10][2]) {
  108.     int index = 0;
  109.     for(int i=0; i<10;i++){
  110.         if (polaczeniaTab[i][0] == 1) {
  111.             index = i;
  112.             cout << "Jest polaczenie w pkt (" << punktyTab[index][0] << ", " << punktyTab[index][1] << ")"<< endl;
  113.         }
  114.     }
  115. }
  116. int main() {
  117.     int mojaTablicaXY[10][2];
  118.     int wyniki[10];
  119.     int polaczeniaTab[10][10];
  120.     double punktyTab[10][2];
  121.     double wagiTab[10][10];
  122.  
  123.     wypelnijMojaTablica2D(mojaTablicaXY);
  124.     wypisz(mojaTablicaXY,10,2);
  125.     wypisz(polaczeniaTab, 10, 10);
  126.     wypisz(punktyTab, 10, 2);
  127.     wypisz(wagiTab,10,10);
  128.     wczytajZPliku(polaczeniaTab, "polaczenia.txt",10,10);
  129.     wczytajZPliku(punktyTab, "punkty.txt",10,2);
  130.     wczytajZPliku(mojaTablicaXY, "DaneTablica.txt",10,2);
  131.     wczytajZPliku(wagiTab, "wagi.txt",10,10);
  132.     zapiszDoPliku(mojaTablicaXY,10,2,"DaneTablica.txt");
  133.     system("PAUSE");
  134.     return 0;
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement