|
liftvezerlo_202505_ksz_dk_idny_C++.cpp
|
|
1 #include <iostream>
2 #include <ctime>
3
4 using namespace std;
5
6 int main()
7 {
8 setlocale(LC_ALL, "");
9 srand(time(NULL));
10
11 // 1. A lift kezdőhelyzetének véletlenszerű meghatározása
12 int aktualis = rand() % 11;
13 int cel = rand() % 11;
14 char irany;
15
16 if(aktualis < cel)
17 irany = 'F';
18 else if(aktualis > cel)
19 irany = 'L';
20 else
21 irany = '-';
22
23 cout << "A lift helyzete: " << aktualis << " " << irany << " (" << cel << ")" << endl;
24
25 // 2. A hívó emeletének megadása
26 int hivo;
27 cout << "Adja meg a szintet, ahonnan hivja a liftet! Szint: ";
28 cin >> hivo;
29
30 // 3. A lift által megtett emeletek száma
31 int megtett;
32 if(min(aktualis, cel) <= hivo && hivo <= max(aktualis, cel))
33 // köztes emeletről hívjuk --> min és max segítségével megadjuk a "határokat"
34 megtett = abs(aktualis - hivo);
35 else
36 // ha nem köztes terület, akkor iránytól függetlenül el kell menni a célig
37 // és onnan a hívóig
38 megtett = abs(aktualis - cel) + abs(cel - hivo);
39
40 cout << "A liftnek " << megtett << " emeletet kell haladnia a hivoig." << endl;
41 }