Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <fstream>
- using namespace std;
- struct Kontakt {
- string imie;
- string nazwisko;
- int wiek;
- string telefon;
- };
- const int zakres = 5;
- Kontakt ksiazkaTelefoniczna[zakres];
- void wprowadzTelefon(int i) {
- std::cout << "Prosze wprowadzic nr telefonu: ";
- std::cin >> ksiazkaTelefoniczna[i].telefon;
- }
- void wprowadzWiek(int i) {
- std::cout << "Prosze wprowadzic wiek: ";
- std::cin >> ksiazkaTelefoniczna[i].wiek;
- }
- void wprowadzNazwisko(int i) {
- std::cout << "Prosze wprowadzic nazwisko: ";
- std::cin >> ksiazkaTelefoniczna[i].nazwisko;
- }
- void wprowadzImie(int i) {
- std::cout << "Prosze wprowadzic imie: ";
- std::cin >> ksiazkaTelefoniczna[i].imie;
- }
- void zapis() {
- const char nazwaPliku[] = "Ksiazka_Telefoniczna.txt";
- const int tryb = ofstream::app;
- ofstream strumien(nazwaPliku, tryb); // o(tput) f(ile) stream
- for(int i = 0; i < zakres; i++)
- strumien << "Imie: " << ksiazkaTelefoniczna[i].imie << std::endl
- << "Nazwisko: " << ksiazkaTelefoniczna[i].nazwisko << std::endl
- << "Wiek: " << ksiazkaTelefoniczna[i].wiek << std::endl
- << "Telefon: " << ksiazkaTelefoniczna[i].telefon <<
- std::endl << std::endl;
- }
- void wyswietlDane(int i) {
- std::cout << "Imie: " << ksiazkaTelefoniczna[i].imie << std::endl
- << "Nazwisko: " << ksiazkaTelefoniczna[i].nazwisko << std::endl
- << "Wiek: " << ksiazkaTelefoniczna[i].wiek << std::endl
- << "Telefon: " << ksiazkaTelefoniczna[i].telefon <<
- std::endl << std::endl;
- }
- void wprowadzDane(int indeks) {
- wprowadzImie(indeks);
- wprowadzNazwisko(indeks);
- wprowadzWiek(indeks);
- wprowadzTelefon(indeks);
- }
- int main() {
- /* zmienne/funkcje itd zadeklarowane w scopie,
- są widziane tylko w tym scopie
- {
- const int zakres = 5;
- Kontakt ksiazkaTelefoniczna[zakres];
- }
- */
- // int a = 5;
- // Kontakt ksiazkaTelefoniczna[a];
- // // w czasie kompilacji rozmiary kontenerów muszą
- // //być znane przez kompilator
- for (int i = 0; i < zakres; i++)
- wprowadzDane(i);
- for (int i = 0; i < zakres; i++)
- wyswietlDane(i);
- zapis();
- // out of range
- /*
- int tab[5]{ 1, 2, 3, 4, 5 };
- for (size_t i = 0; i < 6; i++)
- {
- std::cout << tab[i] << std::endl;
- }
- */
- //wykonajDzielenie(); <- camel case, preferowane w c++
- //wykonaj_dzielenie(); <- snake case, preferowane w pythonie
- //wykonaj-dzielenie(); <- kebab case, preferowane u turasów xD
- std::cin.get();
- std::cin.get();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement