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

Sprawdzenie długości tekstu w if'ie

Object Storage Arubacloud
0 głosów
172 wizyt
pytanie zadane 26 grudnia 2016 w C i C++ przez xnangan Nowicjusz (150 p.)

Cześć. Mam pytanie, jak w if'ie pokazać, że jeśli długość PIN'u jest krótsza niż 4 znaki, to wykonują sie poszczególne operacje. Podam kod i będzie to myśle bardziej zrozumiałe

#include <iostream>

using namespace std;

string PIN;

int main()
{
    cout << "Witaj!" << endl;
    cout << "Podaj swoj PIN: ";
    cin >> PIN;


    if(PIN=="1729")
        {
            cout << "Poprawny PIN";
        }
    if(PIN.size<4)
        {
            cout << "Zbyt krotki PIN";
        }
    else
        {
            cout << "Niepoprawny PIN";
        }


    return 0;
}

 

komentarz 26 grudnia 2016 przez Chess Szeryf (76,710 p.)
 if(PIN.size<4)
        {
            cout << "Zbyt krotki PIN";
            // (...) Twoje operacje
           // 
        }

Musisz po prostu pod tym cout'em napisać jakieś instrukcje?

komentarz 26 grudnia 2016 przez xnangan Nowicjusz (150 p.)
chodzi jedynie, żeby odsyłało do tego if'a, kiedy PIN, podany przez użytkownika będzie krótszy niż 4 znaki i wtedy ma wyświetlić ze PIN jest zbyt krótki, nic więcej

1 odpowiedź

+1 głos
odpowiedź 26 grudnia 2016 przez Fenix Nałogowiec (26,750 p.)
wybrane 26 grudnia 2016 przez xnangan
 
Najlepsza
Dokumentacja, Twój pin jest stringiem, wpisujesz w dokumentacji string, szukasz wybranej przez Ciebie metody w tym wypadku length().

 

http://www.cplusplus.com/reference/string/string/length/

 

Oprócz tego napisałeś 2 warunki if, zamiast zagnieździć wszystko w jednym (else if(warunek)). Dlatego gdy pin jest dłuższy od 3, a jest niepoprawny nie wyskakuje komunikat.
komentarz 26 grudnia 2016 przez unknown Nałogowiec (39,560 p.)
Lepiej jest używać metody size bo jest wspólna dla wszystkich kontenerów z STL.
komentarz 26 grudnia 2016 przez Fenix Nałogowiec (26,750 p.)
Nie do końca mogę się zgodzić do tego że size jest lepszym wyborem akurat w przypadku zwykłego tekstu. Człowiek myśląc o tekście nie myśli o jego wielkości tylko długości, przez co kod jest bardziej intuicyjny. Chyba że mnie zaskoczysz, i udowodnisz mi że to ma również znaczenie wydajnościowe. W innym wypadku jest to czysta konwencja.
komentarz 26 grudnia 2016 przez xnangan Nowicjusz (150 p.)
może inaczej jeszcze, chodzi mi po prostu o to, żeby kiedy PIN jest krótszy niż 4 znaki program pokazywał komunikat "Zbyt krótki PIN", bo ogólnie to nie działa :/
komentarz 26 grudnia 2016 przez Fenix Nałogowiec (26,750 p.)
W linijce 18, przed if wstaw else.

Podobne pytania

0 głosów
5 odpowiedzi 743 wizyt
pytanie zadane 19 marca 2016 w C i C++ przez luparuwka Początkujący (400 p.)
0 głosów
0 odpowiedzi 483 wizyt
0 głosów
1 odpowiedź 267 wizyt
pytanie zadane 12 lipca 2022 w C i C++ przez cpp_lover Początkujący (290 p.)

92,551 zapytań

141,393 odpowiedzi

319,523 komentarzy

61,936 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...