Aktualizacja tablicy o wprowadzoną wartość

Graku
2016-12-06 15:41
Graku
0

Witam,
Z c++ zaczynam od zera i mam pytanie jak zaktualizować tablicę o tę wartość którą wprowadziłem ?

void plansza (int tablica[]) {               // rysowanie planszy

    for(int i=0;i<=8;i++) {
        tablica[i]=i;
    }

    cout << "           |===========================|" << endl;
    cout << "           |    " << tablica[0] << "    |   " << tablica[1] << "    |   " << tablica[2] << "    |" << endl;
    cout << "           |---------------------------|" << endl;
    cout << "           |    " << tablica[3] << "    |   " << tablica[4] << "    |   " << tablica[5] << "    |" << endl;
    cout << "           |---------------------------|" << endl;
    cout << "           |    " << tablica[6] << "    |   " << tablica[7] << "    |   " << tablica[8] << "    |" << endl;
    cout << "           |===========================|" << endl;

}void ruch(int tablica[]) {

    int wybor;
    cout << "Wybierz 1 lub 2 " << endl;
    cin >> wybor;
    if (wybor == 1 )
    tablica[0]='1';

}

int main()
{
int tablica[9];
//Welcome();
plansza(tablica);
ruch(tablica);
plansza(tablica);
} 

Pozostało 580 znaków

2016-12-06 15:50

Rejestracja: 8 lat temu

Ostatnio: 3 dni temu

0

tablice masz typu int wiec nie mozesz wpisac tak

tablica[0]='1';

probujesz tutaj wpisac char.

Ja polecilbym Ci skorzystac z std::vector zamiast tablic. Ulatwisz sobie zycie

nie możesz - e tam, może, tyle że potem będzie się dziwić czemu ma np. 49 ;p - twonek 2016-12-06 15:57
zapomnialem, ze sie castuje automatycznie do tablicy ascii - fasadin 2016-12-06 15:58

Pozostało 580 znaków

Graku
2016-12-06 16:02
Graku
0

Czyli jeżeli chciałbym przypisać X (początki kółko krzyżyk) muszę zdefiniować tablicę jako zmienna char ?

Pozostało 580 znaków

2016-12-06 16:11

Rejestracja: 8 lat temu

Ostatnio: 9 godzin temu

0

Wystarczy użyć angielskiego w wyszukiwarce:

Hasło: "c how to change array element in function"
Odzew: http://stackoverflow.com/ques[...]ge-an-int-array-in-a-function


Szacuje się, że w Polsce brakuje 50 tys. programistów

Pozostało 580 znaków

2016-12-06 16:12

Rejestracja: 8 lat temu

Ostatnio: 3 dni temu

0

tak, albo jako std::string (co bardzo polecam)

Pozostało 580 znaków

2016-12-06 16:14

Rejestracja: 4 lata temu

Ostatnio: 7 godzin temu

0

Co? Do gry w kółko i krzyżyk chcesz stringów? Po co? Tam z definicji będzie dokładnie jedna litera na element tablicy…

edytowany 1x, ostatnio: Althorion, 2016-12-06 16:15

Pozostało 580 znaków

2016-12-06 16:25

Rejestracja: 8 lat temu

Ostatnio: 3 dni temu

1

Twoja odpowiedz powinna byc komentarzem, ale skoro chcesz tak dyskutowac to pewnie

A czemu nie? Po co meczyc sie z charem skoro mozna skorzystac z fajnego stringa?
Bo zaoszczedzisz bajty pamieci?
Czy moze bedzie szybsze (choc nie koniecznie) o paredziesiat cykli procesora?

Czym argumentujesz ze tablica i char jest lepsze od std::vector i std::string

Tylko pamietaj, jest to C++ a nie C (zanim bedziesz pisac, ze warto te rzeczy znac... na samym poczatku...)

Pokaż pozostałe 4 komentarze
@fasadin: uznałem, że skoro komentarz o tym, że std::string pasuje bardziej był na temat (więc jako osobny post), to zapytanie dlaczego on, a nie string, też jest na temat (więc też powinno być osobno). Ale OK. Zgadzam się co do std:array na charach jest najlepsze, przy czym twierdzę, że tablica charów jest zaraz za tym. A twierdzę tak dlatego, że nie widzę absolutnie żadnej rzeczy, którą przejście w tym konkretnym programie na stringi miałoby ułatwić. To będą z góry znane stałe, a jedyną wykorzystywaną metodą będzie ==. (brakło miejsca, ciach) - Althorion 2016-12-06 22:58
(reszta) Argumentuję więc, że char jest lepszy od std::stringa, bo jest tak samo prosty dla programisty w użyciu (w tym konkretnym kontekście), a minimalnie prostszy w zrozumieniu dla początkującego. Wydajnością przy grze w kółko i krzyżyk przejmować się nie mam zamiaru. Zauważę jednak, że użycie tutaj stringa nie daje żadnej okazji do nauki czegoś nowego, bo jak pisałem wyżej, jedyną użytą metodą tej klasy będzie operator ==. Nie pojmuję więc, dlaczego string miałby być fajny, a char miałby być męczący. - Althorion 2016-12-06 23:02
Chociaż z tego względu że jak zrobi imiona graczy to będzie robił to na tablicy charow zamiast na stringu. I im dalej w Las (menu np.) Tym mniej wygodniej z charami. - fasadin 2016-12-07 07:20
Nie czuję się przekonany. Do różnych rzeczy potrzeba różnych typów, próba oblecenie wszystkiego jednym zazwyczaj bywa karkołomna. Twoje podejście mi trochę przypomina taką „przedwczesną anty‑optymalizację”, gdzie typ się wybiera nie pod to, co faktycznie ma reprezentować, ale pod potencjalne przyszłe użycia w zupełnie innych kontekstach. I można to pociągnąć dalej — bo skoro std::string, to czemu nie od razu załączyć ICU, który i tak się wcześniej czy później przyda przy stringach do obsługi Unikodu? - Althorion 2016-12-07 07:30
Bo jest to poczatkujacy programista, ktory bedzie sie przejmowal tablica charow i przejmowaniem sie zarzadzaniem ich. Dla niego, w tej sytuacji moim zdaniem bedzie lepsze std::string. Jezeli by to napisal @vpiotr czy @spartanPAGE czy ktokolwiek inny bardziej zaawansowany wtedy krytyka bylaby na poziomie piszacego. - fasadin 2016-12-07 08:11

Pozostało 580 znaków

Graku
2016-12-06 16:30
Graku
0

Dziękuję za pomoc. Postaram się wykorzystać porady

Pozostało 580 znaków

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0