Porady do przyszłej nauki c/c++

1

Hej, wczoraj zacząłem się uczyć c++ bo mi się bardzo spodobał :) Ktoś mógłby mi doradzić na co bardziej zwracać uwagę podczas pisania kodu :P A takie coś napisałem :P Co myślicie jak na początkującego? :)

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <stdio.h>
using namespace std;

string login, haslo;
int gpin, ggpin, dzien;
int main()
{
    srand(time(NULL));
    cout<< "-<>-<>-<>-<>-<>-<>-<>-<>-<>-"<<endl;
    cout<< "Witaj, prosze zaloguj sie.." <<endl;
    cout<< "-<>-<>-<>-<>-<>-<>-<>-<>-<>-"<<endl;
    cout<< "LOGIN: ";cin>> login;
    cout<< "HASLO: ";cin>> haslo;
    gpin=(rand()%9001)+1000;

    cout<< "- - - - -"<<endl;
    cout<< gpin<<endl;
    cout<< "- - - - -"<<endl;
    cout<< "WPROWADZ PIN: ";cin>> ggpin;

    if (login == "admin" && haslo == "admin" && gpin == ggpin)
    {
        system("cls");
        for(;;){
        cout<<"Witaj Administratorze! Wybierz dzien (1-7)."<<endl;
        cout<<"Badz wybierz cyfre '8' aby opuscic program."<<endl;
        cin>>dzien;
        switch(dzien)
        {
        case 1:cout<< "Wierze ze najwiekszym celem naszego zycia jest poszukiwanie szczescia... / Dalajlama"<<endl;break;
        case 2:cout<< "Byc, albo nie byc, oto jest pytanie.. / Hamlet Szekspir"<<endl;break;
        case 3:cout<< "Rob to, co uwazasz za stosowne. I tak zawsze znajdzie sie ktos, kto uwaza inaczej... / Michelle Obama"<<endl;break;
        case 4:cout<< "Wznos sie po kazdym upadku, padniesz trupem albo urosna Ci skrzydla... / Maria von Ebner-Eschenbach"<<endl;break;
        case 5:cout<< "Nauczylam sie, ze droga postepu nie jest ani szybka, ani latwa... / Maria Sklodowska-Curie"<<endl;break;
        case 6:cout<< "Zbyt czesto ludzie pracuja ciezko nad niewlasciwa rzecza. Praca nad wlasciwa rzecza jest prawdopodobnie wazniejsze niz ciezka praca... / Caterina Fake"<<endl;break;
        case 7:cout<< "Albo wygram albo zdechne... / Justyna Kowalczyk"<<endl;break;
        case 8:exit(0);
        break;
        default:cout<< "Wpisz cyfrę od 1 do 8!";
        }
        }
    }
    else
    {
        cout<<"Bledne dane! Sproboj -  admin / admin";
        exit(0);
    }

    return 0;
}

1

A próbowałeś wprowadzić błędny pin? :P

3

Kilka uwag na szybko:

  • Nie używaj rand tylko biblioteki random ( https://dsp.krzaq.cc/post/180/nie-uzywaj-rand-cxx-ma-random/ )
  • funckja system nie powinna być do tego stosowana
  • exit w else jest zbędny, ale nie nieprawidłowy
  • naprawde wielki plus za formatowanie, jednocześnie minus za brak formatowania w switch
  • Osobiście unikał bym używania globalnie using namespace std;

Jak na nauke od wczoraj bardzo dobrze, chyba nawet niektórym będę podsyłał ten temat jeśli będą pisali że nie mają czasu na zadanie X :)

Edit:
To teraz masz zadanie rozbić swój kod na funkcje ;)

0

@Agator Jak na naukę od wczoraj całkiem przyzwoicie. Niektórzy nowo przybyli na tym forum twierdzą, że potrzebowali tygodnia by napisać kod o podobnym stopniu złożoności. Do tego co napisał @plx211 dodałbym, żebyś nie używał std::endl jeżeli jedyne czego potrzebujesz to zrobienie nowej linii, zamiast tego dodaj po prostu znak \n do stringa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1