|
![]() |
#1 |
/
Datum registracije: Oct 2006
Lokacija: /
Postovi: 2,053
|
[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. ![]() Npr. našao ovaj primjer: Code:
#include <cstdlib> #include <iostream> using namespace std; int main() { string password = ""; char c = ' '; while(c != 13) { c = getch(); password += c; cout << "*"; } } 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ć ![]() 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 ![]() |
![]() |
![]() |
![]() |
#2 |
Xulos :)
Datum registracije: Sep 2007
Lokacija: Osijek
Postovi: 7,541
|
Ja mislim da ti uz getch treba naredba #include <conio.h>
__________________
The Rich pays to win. The Poor spends to lose. |
![]() |
![]() |
|
|
Oglas
|
|
![]() |
#3 |
Registered User
Datum registracije: Jun 2007
Lokacija: cro
Postovi: 42
|
evo zapocni s ovim snipetom: Code:
#include <iostream> #include <string> #include <conio.h> // 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<<endl; cout<<"Upisana rijec je:"<<word<<endl; return 0; } |
![]() |
![]() |
|
|
Oglas
|
|
![]() |
|
|