3d πίνακας σε C

Συζητήσεις για την γλώσσα C και C++

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
lefta4klik
Δημοσιεύσεις: 191
Εγγραφή: 08 Ιαν 2013 18:51
Επικοινωνία:

3d πίνακας σε C

Δημοσίευση από lefta4klik » 28 Απρ 2013 15:51

#include <stdio.h>
void main()
{
int tridiagonios[5][5]={{16,38},{85,79,15},{0,55,45,56},{0,0,35,90,51},{0,0,0,18,99}};
int i,j;
for(i=0;i<5;i++)
{
for (j=0;j<5;j++)
{
printf("%3d",tridiagonios[j]);
}
printf("\n");
}
}
έχω το πιο πάνω πίνακα πώς μπορώ να πάρω και να αρχικοποιήσω μόνο τα στοιχεία των τριών διαγωνίων του.
και γενικά αν ξέρει κάποιος πως μπορούμε να παρουμε απο ενα nxn πίνακα τα διαγώνια στοιχεία

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

3d πίνακας σε C

Δημοσίευση από gvre » 28 Απρ 2013 17:20

Στη διαγώνιο πάνω από την κύρια θα πάρεις το στοιχείο όταν i == j - 1.
Στην κύρια διαγώνιο θα πάρεις το στοιχείο όταν i == j.
Στη διαγώνιο κάτω από την κύρια θα πάρεις το στοιχείο όταν i == j + 1.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

3d πίνακας σε C

Δημοσίευση από dva_dev » 28 Απρ 2013 23:17

int tridiagonios[5] = Μονοδιάστατος (1D)
int tridiagonios[5][5] = Διδιάστατος (2D)
int tridiagonios[5][5][5] = Τριδιάστατος (3D)

Κάτι σου λείπει για να γίνει 3d πίνακας, εκτός αν έχεις όντως 2d πίνακα, όποτε δεν μπορείς να έχεις 3 διαγωνίους

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

3d πίνακας σε C

Δημοσίευση από gvre » 28 Απρ 2013 23:24

Ο πίνακας που έχει είναι διδιάστατος και θέλει την κύρια διαγώνιο και αυτές που είναι πάνω και κάτω από αυτή.

Άβαταρ μέλους
lefta4klik
Δημοσιεύσεις: 191
Εγγραφή: 08 Ιαν 2013 18:51
Επικοινωνία:

3d πίνακας σε C

Δημοσίευση από lefta4klik » 29 Απρ 2013 00:14

Αυτό ήθελα gvre, ευχαριστώ

Απάντηση

Επιστροφή στο “C, C++”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης