Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.51 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <fstream>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. struct Kontakt {
  9.     string imie;
  10.     string nazwisko;
  11.     int wiek;
  12.     string telefon;
  13. };
  14.  
  15.  
  16. const int zakres = 5;
  17. Kontakt ksiazkaTelefoniczna[zakres];
  18.  
  19.  
  20. void wprowadzTelefon(int i) {
  21.     std::cout << "Prosze wprowadzic nr telefonu: ";
  22.     std::cin >> ksiazkaTelefoniczna[i].telefon;
  23. }
  24.  
  25.  
  26. void wprowadzWiek(int i) {
  27.     std::cout << "Prosze wprowadzic wiek: ";
  28.     std::cin >> ksiazkaTelefoniczna[i].wiek;
  29. }
  30.  
  31.  
  32. void wprowadzNazwisko(int i) {
  33.     std::cout << "Prosze wprowadzic nazwisko: ";
  34.     std::cin >> ksiazkaTelefoniczna[i].nazwisko;
  35. }
  36.  
  37.  
  38. void wprowadzImie(int i) {
  39.     std::cout << "Prosze wprowadzic imie: ";
  40.     std::cin >> ksiazkaTelefoniczna[i].imie;
  41. }
  42.  
  43.  
  44. void zapis() {
  45.     const char nazwaPliku[] = "Ksiazka_Telefoniczna.txt";
  46.     const int tryb = ofstream::app;
  47.     ofstream strumien(nazwaPliku, tryb); // o(tput) f(ile) stream
  48.  
  49.     for(int i = 0; i < zakres; i++)
  50.         strumien << "Imie: "    << ksiazkaTelefoniczna[i].imie << std::endl
  51.             << "Nazwisko: "     << ksiazkaTelefoniczna[i].nazwisko << std::endl
  52.             << "Wiek: "         << ksiazkaTelefoniczna[i].wiek << std::endl
  53.             << "Telefon: "      << ksiazkaTelefoniczna[i].telefon <<
  54.             std::endl << std::endl;
  55. }
  56.  
  57.  
  58. void wyswietlDane(int i) {
  59.     std::cout   << "Imie: "     << ksiazkaTelefoniczna[i].imie      << std::endl
  60.                 << "Nazwisko: " << ksiazkaTelefoniczna[i].nazwisko  << std::endl
  61.                 << "Wiek: "     << ksiazkaTelefoniczna[i].wiek      << std::endl
  62.                 << "Telefon: "  << ksiazkaTelefoniczna[i].telefon   <<
  63.         std::endl << std::endl;
  64. }
  65.  
  66.  
  67. void wprowadzDane(int indeks) {
  68.     wprowadzImie(indeks);
  69.     wprowadzNazwisko(indeks);
  70.     wprowadzWiek(indeks);
  71.     wprowadzTelefon(indeks);
  72. }
  73.  
  74.  
  75. int main() {
  76.  
  77.     /*  zmienne/funkcje itd zadeklarowane w scopie,
  78.         są widziane tylko w tym scopie
  79.     {  
  80.         const int zakres = 5;
  81.         Kontakt ksiazkaTelefoniczna[zakres];
  82.     }
  83.     */
  84.    
  85.     //  int a = 5;
  86.     //  Kontakt ksiazkaTelefoniczna[a];
  87.     //  // w czasie kompilacji rozmiary kontenerów muszą
  88.     //  //być znane przez kompilator
  89.  
  90.    
  91.  
  92.     for (int i = 0; i < zakres; i++)
  93.         wprowadzDane(i);
  94.  
  95.     for (int i = 0; i < zakres; i++)
  96.         wyswietlDane(i);
  97.  
  98.     zapis();
  99.  
  100.  
  101.     // out of range
  102.  
  103.     /*
  104.         int tab[5]{ 1, 2, 3, 4, 5 };
  105.         for (size_t i = 0; i < 6; i++)
  106.         {
  107.             std::cout << tab[i] << std::endl;
  108.         }
  109.     */
  110.  
  111.    
  112.     //wykonajDzielenie(); <-    camel case, preferowane w c++
  113.     //wykonaj_dzielenie(); <-   snake case, preferowane w pythonie
  114.     //wykonaj-dzielenie(); <-   kebab case, preferowane u turasów xD
  115.     std::cin.get();
  116.     std::cin.get();
  117.     return 0;
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement