Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Sprawdzanie elementów jedenj tablicy względem drugiej tablicy

Ostatnio zmodyfikowano 2014-06-05 11:22
Autor Wiadomość
mgrD
Temat założony przez niniejszego użytkownika
Sprawdzanie elementów jedenj tablicy względem drugiej tablicy
» 2014-06-05 10:46:28
Witam, zastanawiam się nad tym:
Chciałbym sprawdzić czy tablica string jeden zawiera znaki TYLKO z tablicy string dwa.
np: string jeden = "01AB" czy zawiera tylko znaki z tablicy string dwa[4] = {"A", "B", "0", "1"); i tutaj mamy prawdę, natomiast tu:
string jeden = "1054AZ" czy zawiera tylko znaki z tablicy string dwa[10] = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "0"}; i tu byłoby false.

Moja próba:
C/C++
std::string dwa = { "0123456789" };
std::string jeden;
int Check( std::string base2 );

int main()
{
   
    std::cout << "Podaj licze:";
    std::cin >> jeden;
    int yo = Check( jeden );
    std::cout << std::endl << "zgadza sie? : " << yo;
    return 0;
}

int Check( std::string base2 )
{
    for( int i = 0; i < base2.length(); i++ )
    {
        for( int j = 0; j < 10; j++ )
        {
            if( base2[ i ] == dwa[ j ] )
            {
                std::cout << "zgadza sie: " << i << std::endl;
            }
            else
            {
                if( j == 10 )
                {
                    std::cout << "NIE zgadza sie: " << i << std::endl;
                    return 0;
                }
            }
        }
        if( i == base2.length() ) return 1;
       
    }
    return 0;
}
P-111464
pekfos
» 2014-06-05 11:14:54
Użyj std::string::find_first_not_of().

W twoim kodzie, wszystkie warunki przy returnach są zawsze fałszywe.
P-111469
mgrD
Temat założony przez niniejszego użytkownika
» 2014-06-05 11:22:45
Bo właśnie miałem kłopot z tym, by zwrócić prawdę ;/

Ale mimo to dzięki, twój sposób okazał się dużo prostszy, szybszy i fajniejszy, dzięki : )
P-111471
« 1 »
  Strona 1 z 1