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

Jak dopisać w pętli for dane do tablicy dwuwymiarowej typu int za pomocą cin?

Ostatnio zmodyfikowano 2011-06-07 12:35
Autor Wiadomość
mykosik
Temat założony przez niniejszego użytkownika
Jak dopisać w pętli for dane do tablicy dwuwymiarowej typu int za pomocą cin?
» 2011-06-05 23:55:29
Witam z jednym wymiarem to proste ale z dwu lub więcej to nie mam pojęcia . Gdzie szukać wskazówek?Czy to pętla w pętli? 
P-33899
malan
» 2011-06-06 00:17:55
Gdzie szukać wskazówek?
W kursie :)

Czy to pętla w pętli?
Zgadza się :)
P-33900
mykosik
Temat założony przez niniejszego użytkownika
» 2011-06-06 00:46:25
P-33901
dmx81
» 2011-06-06 18:35:16
np mozna zrobic petle w petli - dla dwoch roznych "licznikow" - jeden dla pierwszego wymiaru, drugi dla drugiego wymiaru:
C/C++
for( unsigned int i = 0; i < tabsize1; i++ )
{
    for( unsigned int j = 0; j < tabsize2; j++ )
    {
        cin >> tab[ i ][ j ];
    }
}

jak przeanalizujesz, to zobaczysz, ze najpierw wpisujesz w pozycji tab[0][0], pozniej tab[0][1] az do tab[0][tabsize-1] , pozniej zaczynasz od tab[1][0], tab[1][1]... pisalem w pospiechu, wiec mogla wyskoczyc gdzies jakas literowka, ale mniej wiecej sens ci przedstawilem
P-33918
mykosik
Temat założony przez niniejszego użytkownika
» 2011-06-06 22:12:52
Diekuję za pomoc , trochę się nadumałem nad tym.
Jest jeszcze jeden problem. Program wczytuje liczby ale gdy próbuje wyświetlić 1 wiersz z 4 liczbami to wyskakują jakieś śmieci.
C/C++
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
    int tabsize1 = 2;
    int tabsize2 = 4;
    int tab[ tabsize1 ][ tabsize2 ];
    //wprowadzam 8 liczb
    for( unsigned int i = 0; i < tabsize1; i++ )
    {
        for( unsigned int j = 0; j < tabsize2; j++ )
        {
            cout << "Podaj liczbe: ";
            cin >> tab[ i ][ j ];
        }
    }
    //wyświetlanie liczb jest poprawne
   
    for( unsigned int i = 0; i < tabsize1; i++ )
    {
        for( unsigned int j = 0; j < tabsize2; j++ )
        {
            cout << tab[ i ][ j ] << endl;
        }
    }
   
    cout << tab[ 0 ]; //przy próbie wyświetlenia 1 wiersza wypisuje śmieci, co jest nie tak?
   
   
    getch();
    return 0;
}
P-33922
absflg
» 2011-06-06 22:16:38
@up To tak nie działa. Żeby wyświetlić 1 wiersz musisz wyświetlić po kolei każdą liczbę z niego.

EDIT
Sprawdziłem.
tab[ n ]
 to wskaźnik na pierwszy element n-tego wiersza.
P-33923
mykosik
Temat założony przez niniejszego użytkownika
» 2011-06-07 12:35:39
Dziękuję , potwierdziłeś to co przypuszczałem.Z dwuwymiarową tablicą znaków to działa ale nie  w tym przypadku tablic liczbowych.
Pozdrawiam wszystkich i dziękuję.
P-33932
« 1 »
  Strona 1 z 1