Advertisement
JStefan

[Vezbi] Zeleznicka stanica

Mar 27th, 2017
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.61 KB | None | 0 0
  1. #include<iostream>
  2. #include <cstring>
  3.  
  4. using namespace std;
  5.  
  6. struct Voz {
  7.     char relacija[50];
  8.     double pominati_kilometri;
  9.     int broj_na_patnici;
  10. };
  11.  
  12. struct ZeleznickaStanica {
  13.     char grad[20];
  14.     Voz vozovi[30];
  15.     int broj_na_vozovi;
  16. };
  17.  
  18. void najkratkaRelacija(ZeleznickaStanica* zs, int n, char* grad) {
  19.     int broj_stanica = 0;
  20.     for(int i = 0; i < n; ++i) {
  21.         if(strcmp(zs[i].grad, grad) == 0) {
  22.             broj_stanica = i;
  23.             break;
  24.         }
  25.     }
  26.     int voz = 0, km = zs[broj_stanica].vozovi[0].pominati_kilometri;
  27.     for(int i = 1; i < zs[broj_stanica].broj_na_vozovi; ++i) {
  28.         if(zs[broj_stanica].vozovi[i].pominati_kilometri <= km) {
  29.             voz = i;
  30.             km = zs[broj_stanica].vozovi[i].pominati_kilometri;
  31.         }
  32.     }
  33.  
  34.     cout << "Najkratka relacija: " << zs[broj_stanica].vozovi[voz].relacija << " (" << zs[broj_stanica].vozovi[voz].pominati_kilometri << " km)" << endl;
  35. }
  36.  
  37. int main(){
  38.  
  39.     int n;
  40.     cin>>n; //se cita brojot na zelezlnichki stanici
  41.  
  42.     ZeleznickaStanica zStanica[100];
  43.     for (int i=0;i<n;i++){
  44.         //se citaat infomracii za n zelezlnichkite stanici i se zacuvuvaat vo poleto zStanica
  45.         cin >> zStanica[i].grad;
  46.         cin >> zStanica[i].broj_na_vozovi;
  47.  
  48.         for(int j = 0; j < zStanica[i].broj_na_vozovi; ++j) {
  49.             cin >> zStanica[i].vozovi[j].relacija;
  50.             cin >> zStanica[i].vozovi[j].pominati_kilometri;
  51.             cin >> zStanica[i].vozovi[j].broj_na_patnici;
  52.         }
  53.     }
  54.  
  55.     char grad[25];
  56.     cin>>grad;
  57.  
  58.     najkratkaRelacija(zStanica,n,grad);
  59.     return 0;
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement