PC Ekspert Forum

PC Ekspert Forum (https://forum.pcekspert.com/index.php)
-   Web dizajn, programiranje i ostalo (https://forum.pcekspert.com/forumdisplay.php?f=39)
-   -   [C++] Maskiranje passworda (https://forum.pcekspert.com/showthread.php?t=138093)

svebee 10.02.2009. 21:41

[C++] Maskiranje passworda
 
Radim program u C++ i trebao bih malu pomoć. Radi se o tome da računalo čeka input korisika (radi se o riječi (samo slova su u igri tj. nema brojeva)) koji može biti koliko god dugačak (npr. 8 slova).

Dok on utipkava tu riječ ona se maskira - tj. umjesto riječi od 8 slova dobijemo 8 znakova "*" -> ********. Nakon toga računalo provjerava/analizira svaki znak posebno u toj riječi koja je unešena te ih unese u neke varijable (?).

Nakon toga korisnik unese neki znak (npr. b) i računalo testira je li taj znak sadržan u riječi unešenoj prije (tj. je li taj unešen znak jedak bilo kojoj varijabli ove gore riječi (?)). Ako je radi nešto, ako nije radi nešto drugo.

Evo kako bi to nekako trebalo izgledati.

Code:

Unesi riječ: ********* (piše pcekspert)
Unesi slovo: z
    Tog slova nema.
Unesi slovo: p
    Pogodio si slovo.

Kako to riješiti? Tražio sam netom i ima dosta tih "password masking" ali sve je valjda pisano za C ili sl. jer većina ne radi, u većini slučaja spominje se getch(); ali ja ne razumijem kako se to koristi :D
Npr. našao ovaj primjer:

Code:

#include
#include

using namespace std;

int main() {
    string password = "";
    char c = ' ';
   
    while(c != 13)
      {
      c = getch();
      password += c;
      cout << "*";
      }
}

ali baci grešku na getch()? Gdje je problem? Shvatio sam samo da getch "čupa" posebne znakove iz neke varijable. Ali kako ga (is)koristiti?

Također našao sam i cctype ali ne vidim kako bi to koristio, te C++ Array
koji valjda može svako slovo pojedinačno prepoznati, ali neznam kako da testiram bilo koju riječ (tj. da je neovisno o duljini same riječi tj. količini slova).

Zahvaljujem za bilo kakvu pomoć :) Koristim Dev C++.


p.s. ne, ne radi se o nikakvoj zadaći, nego hoću sam kreirati igru Vješala - našao ja neke na netu, ali to mi je samo hrpa znakova :D ja bi htel napravit sam da znam o čem se radi i kak se radi.

JuiceBox 10.02.2009. 21:50

Ja mislim da ti uz getch treba naredba #include

Dancho 13.02.2009. 11:46

evo zapocni s ovim snipetom:


Code:

#include
#include
#include // not standard header
using namespace std;

int main()
{
        string word="";
        unsigned int c=0;
       
        cout<<"Unesi rijec:";
        while(true)
        {
                c=_getch();
                if(c==0x0D)
                        break;
                if( (c<'a' && c>'z') || (c<'A' && c>'Z') )
                        continue;
                else
                {
                        word+=c;
                        _putch('*');
                }
        }
       
        cout<
        cout<<"Upisana rijec je:"<
        return 0;
}



Sva vremena su GMT +2. Sada je 12:20.

Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 1999-2024 PC Ekspert - Sva prava pridržana ISSN 1334-2940
Ad Management by RedTyger