Dobry den,
chcel by som nadeklarovat pole v C# napr 100 prvkov, pricom kazdy prvok by predstavoval maticu roznej velkosti (velkost matice zada uzivatel (napr. 5x4)), bolo by dobre keby si mozem pri kazdej matici pamataj aj jej nazov. Vedeli by ste mi prosim pomoct?
Dakujem
C# pole matíc
-
TGiJack
Medium Star
- Príspevky: 419
- Registrovaný: 30 nov 2006, 19:37
- Bydlisko: NO
- Kontaktovať používateľa:
Re: C# pole matíc
C# som nerobil ale tak v jave by som to riesil asi nasledovne:
spravil by som si triedu napriklad "matica" v ktorej by si mal ulozene všetko co potrebujes ako je : nazov danej matice,jej velkost ,hodnoty,atd co ta napadne ...
potom v hlavnom programe by sisi spravil uz len jednoduche jednorozmerne pole do ktoreho by si ukladal "objekt matica"
ne neviem či sa da v C# programovat objektovo(fakt s týmto jasikom nemam ani zakladne skusenosti
) a ci vies programovat objektovo 
spravil by som si triedu napriklad "matica" v ktorej by si mal ulozene všetko co potrebujes ako je : nazov danej matice,jej velkost ,hodnoty,atd co ta napadne ...
potom v hlavnom programe by sisi spravil uz len jednoduche jednorozmerne pole do ktoreho by si ukladal "objekt matica"
ne neviem či sa da v C# programovat objektovo(fakt s týmto jasikom nemam ani zakladne skusenosti
Re: C# pole matíc
class Matice
{
public string nazov;
public int dlzka;
public int sirka;
public int[,] pole;
public Matice()
{
int [,] pole = new int[dlzka, sirka];
}
public Matice(string nazov_hodnota, int dlzka_hodnota, int sirka_hodnota)
{
nazov = nazov_hodnota;
dlzka = dlzka_hodnota;
sirka = sirka_hodnota;
}
}
-------------------------------------
hl. program
--------------------------------------
Matice [] array = new Matice [100];
nejako takto?
a ako budem pridavat hodnoty?
Viete poradit prosim?
{
public string nazov;
public int dlzka;
public int sirka;
public int[,] pole;
public Matice()
{
int [,] pole = new int[dlzka, sirka];
}
public Matice(string nazov_hodnota, int dlzka_hodnota, int sirka_hodnota)
{
nazov = nazov_hodnota;
dlzka = dlzka_hodnota;
sirka = sirka_hodnota;
}
}
-------------------------------------
hl. program
--------------------------------------
Matice [] array = new Matice [100];
nejako takto?
a ako budem pridavat hodnoty?
Viete poradit prosim?
-
TGiJack
Medium Star
- Príspevky: 419
- Registrovaný: 30 nov 2006, 19:37
- Bydlisko: NO
- Kontaktovať používateľa:
Re: C# pole matíc
jj takto nejako by to mohlo byt
takze v tej triede matica si sprav metodu a teraz mas na vyber
1. co ti naplni nahodne tu maticu (odporucam)
2. budes zadavat po jednom(v hlavnom programe) napriklad matica[2].pridaj(riadok,stlpec,hodnota);
3. alebo v tej triede dorobis k tej 2moznosti cyklus kde sa ta bude postupne už len pitat na hodnoty a v 2 cykloch by si mal niečo taketo pridaj(z_cyklu_riadok,z_cyklu_stlpec,z_konzoly_hodnota);
v jave by si to potom volalo nasledovne ... matica[2].nazovMatice;
Prepac ako toto je jednoduche a hned by som Ti tu hodil celý source ale
Re: C# pole matíc
No ked chces aj nazov matice, tak dobre riesenie je pouzitie Dictionary...teda
a k matici podla nazvu pristupis uz len cez
Keby si niecomu v kode nechapal tak sa pytaj...
Kód: Vybrať všetko
Dictionary<string, int[,]> aArray = new Dictionary<string, int[,]>();
int[,] aFirst = new int[2, 3] {{ 1, 2, 3}, { 4, 5, 6 }};
int[,] aSecond = new int[3, 3] {{ 1, 2, 3 }, { 4, 5, 6 }, {7, 8, 9}};
aArray.Add("FirstMatrix", aFirst);
aArray.Add("SecondMatrix", aSecond);Kód: Vybrať všetko
int[,] aNew = aArray["FirstMatrix"]