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

Zamiana funckcji w funkcji....

Ostatnio zmodyfikowano 2009-04-13 21:42
Autor Wiadomość
driver1995
Temat założony przez niniejszego użytkownika
Zamiana funckcji w funkcji....
» 2009-04-13 20:46:45
Witam...
Mam pytanie... Czy da się zrobić w C++ tak, żeby np. w funkcji:
C/C++
void dolars()
{
    dolar1();
    dolar2();
    dolar3();
    dolar4();
    dolar5();
    dolar6();
    dolar7();
    dolar8();
    dolar9();
    dolar10();
    dolar11();
    dolar12();
    dolar13();
    dolar14();
    dolar15();
    dolar16();
    dolar17();
    dolar18();
    dolar19();
    dolar20();
    dolar21();
    dolar22();
    dolar23();
    dolar24();
    dolar25();
    dolar26();
    dolar27();
    dolar28();
    dolar29();
    dolar30();
    dolar31();
    dolar32();
    dolar33();
    dolar34();
    dolar35();
}
powiedzmy np. zamienić dolar1() na dolar36() w np. takim czymś:
C/C++
int main()
{
    dolars(); //wyświetla się dolar() od 1 do 35
    //coś czym zmienia(o ile się da)
    dolars(); //wyświetla się dolar() 36 i od 2 do 35
}
P-5561
DejaVu
» 2009-04-13 20:51:17
Proponuję poczytać o funkcjach i przekazywaniem parametrów do nich. Prawdopodobnie Twoje oczekiwania spełniłoby coś takiego:
C/C++
void dolars( int numer )
{
    switch( numer )
    {
    case 1:
        cout << "numer jeden";
        break;
    case 5:
        cout << "numer piec";
        break;
    default:
        cout << "domyslna wartosc";
        break;
    }
}
//...
int main()
{
    dolars( 1 );
    dolars( 10 );
    dolars( 5 );
    return 0;
}
P-5562
driver1995
Temat założony przez niniejszego użytkownika
» 2009-04-13 21:22:59
No skracało by to zapis poprzedniego kodu... Ale z tą zamianą to mi bardziej chodziło o takie coś(bo chciałem zamienić dolar1() w którym coś jest na dolar36() w którym nic by nie było(może troche głupie, no ale...)):
C/C++
void dolars( int numer )
{
    switch( numer )
    {
    case 1:
        cout << "numer 1";
        break;
    case 3:
        cout << "numer 3";
        break;
    case 20:
        cout << "numer 20";
        break;
    }
}
int main()
{
    bool q = false;
    unsigned char x = getch();
    while( q != true )
    {
        switch( x )
        {
        case 224:
            x = getch();
            switch( x )
            {
            case 80:
                dolars( 1 );
                dolars( 3 );
                dolars( 20 );
                break;
            case 72:
                dolars( 1 );
                //trójki np. nie ma, i jak wrócimy spowrotem do case'u ze strzałką w dół (80) to żeby też jej nie było.......
                dolars( 20 );
                break;
            }
            x = 0;
            break;
        case 27:
            q = true;
            break;
        }
    }
    return 0;
}
P-5566
DejaVu
» 2009-04-13 21:36:00
Dopisz zmienną bool, którą domyślnie masz ustawioną na true. Jak wejdziesz w case 72: ustaw go na false. W case 80 dopisz:
if( twoja_zmienna == true ) dolars( 3 );
i to wszystko.
P-5568
driver1995
Temat założony przez niniejszego użytkownika
» 2009-04-13 21:42:45
Ok, dzięki... Przyznam się, że też o tym myślałem, tylko chciałem to jakoś krócej zrobić, no bo w tym "programiku", który staram się pisać jest tego 35 a nie 3 i każde będzie w kolejnym case'ie kolejno znikać więc trochę pisania będzie, ale dam sobie radę ;) ;) ;) To tyle... Close topic;)
P-5569
« 1 »
  Strona 1 z 1