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

question-closed Tabela c++, pętla wstawia liczbę do kolejnego wiersza tabeli

VPS Starter Arubacloud
0 głosów
287 wizyt
pytanie zadane 25 czerwca 2022 w C i C++ przez Motherhacker Nowicjusz (150 p.)
zamknięte 25 czerwca 2022 przez Motherhacker

Witam,

Zacząłem programować od wczoraj i jest to mój pierwszy post tutaj, więc witam wszystkich i przepraszam jeśli umieszczę post w złej kategorii czy coś w tym stylu :) 

Po obejrzeniu odcinka kursu C++ na temat tabel chciałem zrobić swoją, jednak nie mogę wymyśleć dlaczego moja pętla wstawia liczbę do kolejnego wiersza.

#include <iostream>

using namespace std;

float tabela[2][2];

int main()
{
for(int i=0; i<=2; i++)
{
    cout <<"wpisz " <<i+1 <<" liczbe z pierwszego wiersza: ";
    cin >>tabela[0][i];
}
cout <<tabela[0][0] <<" " <<tabela[0][1] <<" " <<tabela[0][2]<<endl;
cout <<tabela[1][0] <<" " <<tabela[1][1] <<" " <<tabela[1][2]<<endl;
cout <<tabela[2][0] <<" " <<tabela[2][1] <<" " <<tabela[2][2]<<endl;
}

Z góry dziękuje za wszystkie odpowiedzi.

komentarz zamknięcia: Rozwiązane
komentarz 26 czerwca 2022 przez VBService Ekspert (251,210 p.)

BTW,

[ on-line ]

#include <iostream>

using namespace std;

int main()
{
    float tabela[2][2];

    for (int i=0; i<2; i++)
        for (int j=0; j<2; j++)
        {
            cout << "Wpisz liczbe dla " << i+1 << " wiersza i " << j+1 <<" kolumny: ";
             cin >> tabela[i][j];
        }

    for (int i=0; i<2; i++)
    {
        for (int j=0; j<2; j++)
            cout << tabela[i][j] << " ";
        cout << endl;    
    }

    return 0;
}

 

komentarz 26 czerwca 2022 przez Motherhacker Nowicjusz (150 p.)

Dziękuję, to właśnie chciałem napisać, prostym i przejrzystym kodem.

Chciałem z ciekawości przerobić kod, żeby można było dodać 3 wymiar i żeby program pokazywał po kolei ściany prostopadłościanu jaki można sobie wyobrazić. Problem w tym, że pętla odpowiedzialna za wyświetlanie liczb nie powtarza się dla kolejnych z i nie wiem co jest tego przyczyną.  

#include <iostream>

using namespace std;

int main()
{

    int oX;
    int oY;
    int oZ;
    cout <<"ilosc wspolrzednych oX: ";  cin >>oX;
    cout <<"ilosc wspolrzednych oY: ";  cin >>oY;
    cout <<"ilosc wspolrzednych oZ: ";  cin >>oZ;

float tabela[oX][oY][oZ];

 for (int z=0; z<oZ; z++)
    for (int y=0; y<oY; y++)
        for (int x=0; x<oX; x++)
        {
            cout <<"Wpisz liczbe "  <<x+1 <<" dla wymiaru oX i "
                                    <<y+1 <<" wymiaru oY i "
                                    <<z+1 <<" wymiaru oZ: ";
             cin >> tabela[x][y][z];
        }

 for(int z=0; z<oZ; z++)
 {
  cout <<"to jest " <<z+1 <<" sciana prostopadloscianu" <<endl;

    for (int y=0; y<oY; y++)
    {
        for (int x=0; x<oX; x++)
            cout << tabela[x][y][z] << " ";

    }
     return 0;
 }
}

 

1 odpowiedź

+3 głosów
odpowiedź 25 czerwca 2022 przez Apled Dyskutant (9,520 p.)
edycja 25 czerwca 2022 przez Apled
 
Najlepsza
Twoja tabela jest 2x2, a próbujesz wpisywać i wypisywać jak do tabeli 3x3.

Rozmiar tabeli zawsze daje indeksy od 0 do N-1, więc mając tablicę 2x2 indeksy to 0,1 dla obu wymiarów, a indeksy 0, 1, 2 implikują, że są 3 elementy w obu rzędach.
komentarz 25 czerwca 2022 przez Motherhacker Nowicjusz (150 p.)
Okej już widzę ten błąd, dzięki

Podobne pytania

0 głosów
1 odpowiedź 401 wizyt
pytanie zadane 4 maja 2018 w PHP przez hiper007 Stary wyjadacz (11,270 p.)
0 głosów
1 odpowiedź 229 wizyt
pytanie zadane 27 października 2017 w JavaScript przez SzymonSmith Użytkownik (870 p.)
0 głosów
2 odpowiedzi 190 wizyt

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...