• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed SPOJ - Moc Hasła - program nie sprawdza dalszych znaków jeżeli hasło zawiera spację.

0 głosów
423 wizyt
pytanie zadane 28 lipca 2020 w C i C++ przez gnu_ewm Gaduła (3,340 p.)
zamknięte 28 lipca 2020 przez gnu_ewm

Zadanie: https://pl.spoj.com/problems/FR_05_02/

Pętla, która sprawdza podane hasło znak po znaku:

for(int j = 0; j < haslo[i].length(); j++)
        {
            if(isdigit(haslo[i].at(j))) cyfra = true;
            else cyfra = false;

            if(isupper(haslo[i].at(j))) wielka = false;
            else wielka = false;

            if(islower(haslo[i].at(j))) mala = false;
            else mala = false;

            if(haslo[i].at(j) > 31 && haslo[i].at(j) < 48 || haslo[i].at(j) > 57 && haslo[i].at(j) < 65 || haslo[i].at(j) > 122)  inne = true;
            else inne = false;
        }

 

komentarz zamknięcia: Zadanie rozwiązane

1 odpowiedź

+1 głos
odpowiedź 28 lipca 2020 przez j23 Mędrzec (195,220 p.)
wybrane 28 lipca 2020 przez gnu_ewm
 
Najlepsza
bool cyfra = false;
bool wielka = false;
bool mala = false;
bool reszta = false;

for (char c : haslo[i]) {
    if (isdigit(c)) cyfra = true;
    else if (isupper(c)) wielka = true;
    else if (islower(c)) mala = true;
    else reszta = true;
}

if (cyfra && wielka && mala && reszta) {
   std::cout << haslo[i] << '\n';
}

Nie wiem, po co czytasz hasła do tablicy, skoro można od razu sprawdzać przeczytane hasło.

Podobne pytania

0 głosów
2 odpowiedzi 223 wizyt
pytanie zadane 24 września 2020 w C i C++ przez Pelo Użytkownik (520 p.)
–1 głos
0 odpowiedzi 1,107 wizyt
0 głosów
2 odpowiedzi 1,158 wizyt

93,742 zapytań

142,678 odpowiedzi

323,297 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...