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

Dynamiczna macierz.

Ostatnio zmodyfikowano 2013-06-24 15:48
Autor Wiadomość
bartosz.adamiak
Temat założony przez niniejszego użytkownika
Dynamiczna macierz.
» 2013-06-23 14:18:18
Witam mam takie zadanie "Za pomocą funkcji wypełnij jedynkami stworzoną dynamicznie macierz dwuwymiarową
(10x7)." W jaki sposób mam wypełnić tą macierz? Myślę że muszę użyć dwa razy pętli for, do poruszania się po wierszach i kolumnach. Ale jak wypełnić ją jedynkami. Może mi ktoś podpowiedzieć bo już ręce mi opadają. Tylko proszę bez głupich odpowiedzi typu zobacz tu, albo tu.

 for(int i = 0;  i<10; i++)
   for(int j = 0; i<7; i++)
P-85988
cyklopek11
» 2013-06-23 14:43:07
Wypełnij jedynką czyli == przypisz "komórce macierzy" jedynkę. Pętle masz więc jeszcze:
C/C++
macierz[ i ][ j ] = 1;
P-85989
bartosz.adamiak
Temat założony przez niniejszego użytkownika
» 2013-06-23 14:49:28
aa dzięki:) a jak wyświetlić tą całą macierz?

cout << tab[ i ][ j ];
P-85991
lechk
Dodaj FOR
» 2013-06-23 15:10:16
Napisz te fory tak jak u góry a na końcu wpisz tego cout.
Zasada działania taka sama jak do zapisu, tyle ze nie wpisujesz a czytasz.
P-85994
bartosz.adamiak
Temat założony przez niniejszego użytkownika
» 2013-06-23 17:48:24
Zrobiłem coś takiego, ale nie działa tak jak powinno:/ Nie wiem jak wypełnianie macierzy umieścić w funkcji:/

C/C++
//---------------------------------------------------------------------------
#include <conio.h>
#include <stdio.h>
#include <vcl.h>
#include<iostream>


int main()

{
    using namespace std;
    int k = 1;
    int a[ 10 ][ 7 ];
    cout << "Tablica pierwsza" << endl;
    for( int i = 0; i < 10; i++ )
    { cout << endl;
        for( int j = 0; j < 7; j++ )
        {
            a[ i ][ j ] = 1;
           
            cout << a[ i ][ j ];
           
        }
    }
   
   
   
    getch();
    return 0;
}
//---------------------------------------------------------------------------
P-86027
Sheil
» 2013-06-23 18:48:40
C/C++
#include <iostream>

using namespace std;
int main()

{
    int k = 1;
    int a[ 10 ][ 7 ];
    cout << "Tablica pierwsza" << endl;
    for( int i = 0; i < 10; i++ )
    { cout << endl;
        for( int j = 0; j < 7; j++ )
        {
            a[ i ][ j ] = 1;
           
            cout << a[ i ][ j ];
           
        }
    }
   
    return 0;
}

//using namespace musi byc nad mainem. teraz dziala to co napiasales i kombinuj dalej :)
// po za tym, to nie jest dynamicznie :)
// tablica dynamiczna jednowymiarowa w C++ tworzona jest w sposób następujący:

int * tablica = new int[ n ];

Kod ten tworzy tablicę zawierającą liczby typu int o rozmiarze n. Tablic takich używa się tak samo jak tablic statycznych więc zapis i odczyt wygląda tak:

C/C++
tablica[ 0 ] = 1;
cout << tablica[ 0 ];

Tablica dynamiczna dwuwymiarowa w C++ tworzona jest w sposób analogiczny:

C/C++
int ** tablica = new int *[ n ];
for( int j = 0; j < n; j++ ) {
    tablica[ j ] = new int[ n ];
}
P-86030
bartosz.adamiak
Temat założony przez niniejszego użytkownika
» 2013-06-23 18:56:55
Dzięki masz racje, jestem początkujący i jeszcze się gubię w tym wszystkim:) a w funkcji mam umieścić wypełnianie tablicy? A w funkcji głównej co zamieścić?
P-86031
bartosz.adamiak
Temat założony przez niniejszego użytkownika
» 2013-06-24 14:31:51
Zrobiłem wszystko tak jak powinno być ale jedynki ustawia mi w jedynej linii, co jest nie tak?

C/C++
//---------------------------------------------------------------------------
#include <vcl.h>
#include <stdio.h>
#include <conio.h>
#include <iostream>
using namespace std;

int main()
{
   
   
    int ** tablica = new int *[ 10 ];
    for( int i = 0; i < 10; i++ )
   
    {
        tablica[ i ] = new int[ 7 ];
       
       
    }
    int k = 1;
    for( int i = 0; i < 7; i++ )
   
   
    {
        for( int j = 0; j < 10; j++ )
       
        {
            tablica[ i ][ j ] = 1;
           
           
            cout << tablica[ i ][ j ];
           
        }
    }
    getch();
}
//---------------------------------------------------------------------------
P-86073
« 1 » 2
  Strona 1 z 2 Następna strona