Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

kako upisati i izčitati polje u stack

[es] :: .NET :: kako upisati i izčitati polje u stack

[ Pregleda: 3439 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Neznalica_sa_ugla
split

Član broj: 83282
Poruke: 390
*.xnet.hr.



Profil

icon kako upisati i izčitati polje u stack03.05.2007. u 12:09 - pre 206 meseci
Da li se može celo polje( vrednosti) dvodimenzionalno upisati u stack i iz njega vratiti ponovo u polje .Nacin da upisujem preko petnji u vise navrata mi se ne čine baš elegantno .

hvala
 
Odgovor na temu

bjevta
Bratislav Jevtic
http://www.tojesoft.co.rs
Beograd

Član broj: 5216
Poruke: 367
*.dynamic.sbb.co.yu.

Sajt: www.tojesoft.co.rs


+5 Profil

icon Re: kako upisati i izčitati polje u stack04.05.2007. u 11:19 - pre 206 meseci
moram da primetim da mi opšte nije jasno šta želiš. može li to malo preciznije i detaljnjije, pa da vidimo?
Acta, non verba!
 
Odgovor na temu

Glogov_Kolac
Aleksandar Atanasovski
Nis

Član broj: 97920
Poruke: 101
*.adsl.beotel.net.



Profil

icon Re: kako upisati i izčitati polje u stack04.05.2007. u 21:02 - pre 206 meseci
Ti izgleda hoces da upises matricu u stek.Za stek postoji klasa u prostoru imena Collectons(ako se ne varam) a mozes i sam da implementiras stek.A to kako da upisujes vrednosti iz matrice u stek zavisi od tvog konkretnog problema jer je stek jednodimenzionalan.Moras detaljnije da opises sta ti treba!
 
Odgovor na temu

bjevta
Bratislav Jevtic
http://www.tojesoft.co.rs
Beograd

Član broj: 5216
Poruke: 367
*.dynamic.sbb.co.yu.

Sajt: www.tojesoft.co.rs


+5 Profil

icon Re: kako upisati i izčitati polje u stack06.05.2007. u 07:47 - pre 206 meseci
evo, pogledah .Net help i vidim da je System.Collections.Stack metoda:

public virtual void Push ( Object obj )

to znači da na stek možeš staviti bilo šta, a posle ga kastuj.
-------------
gornju varijantu NE preporučujem - to je više old-fashion style. Mnogo je bolje koristiti generic kolekcije, u tvom primeru: System.Collections.Generic.Stack

primer: ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.en/cpref2/html/T_System_Collections_Generic_Stack`1.htm

Acta, non verba!
 
Odgovor na temu

Neznalica_sa_ugla
split

Član broj: 83282
Poruke: 390
*.xnet.hr.



Profil

icon Re: kako upisati i izčitati polje u stack06.05.2007. u 09:00 - pre 206 meseci
Upravo tako , želim staviti (object ) u ovom slučaju polje i kada uzimam sa steka da mi se sve vrednosti vrate u polje .Do sada sam koristio
public static void push()
{
for(int prv=0;prv<15;prv++)
{
for (int dru=0;dru<25;dru++)
{
stek.Push(aPrikazPodatak[prv, dru]);
}

}

}

public static void pop()
{
for(int prv=14;prv>=0;prv--)
{
for (int dru=24;dru >= 0 ;dru--)
{

try
{
aPrikazPodatak[prv, dru] = stek.Pop().ToString();
}
catch
{
aPrikazPodatak[prv, dru] = null;
}


}


}
}

ali mi ovo izgleda trapavo i ima neki problem ,Kod pop() stane gotovo 2-3 sec da vrati podatak ,Misli da bi bilo jednostavnije staviti polji vratiti ga
al mi
stek.Push(aPrikazPodatak) jednostavnio ne prolazi..

 
Odgovor na temu

Pharos
Pančevo

Član broj: 20664
Poruke: 1029
*.adsl-2.sezampro.yu.



+2 Profil

icon Re: kako upisati i izčitati polje u stack06.05.2007. u 09:13 - pre 206 meseci
Ne znam da li želiš više matrica da staviš na stek ili samo jednu matricu.
Ako je samo jedna, ne vidim logiku. Samo ubacuješ elemente jedne matrice tipa int u stack i... šta onda? U čemu je poenta?

Ukoliko želiš više matrica da smestiš na stek, prvo što moraš da uradiš jeste da napraviš neku svoju klasu koja se zove matrica.
Code:

public class Matrica() { ... }

Kad si napravio matricu, onda je smeštaš u stek.
Code:

Stack<Matrica> st = new Stack<Matrica>();
st.Push(...)...


I dalje sa stekom radiš šta hoćeš i kako hoćeš.
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
 
Odgovor na temu

Pharos
Pančevo

Član broj: 20664
Poruke: 1029
*.adsl-2.sezampro.yu.



+2 Profil

icon Re: kako upisati i izčitati polje u stack06.05.2007. u 10:24 - pre 206 meseci
Evo ti nešto na brzinu da se ne mučiš preterano.
Kod je rađen na brzinu, pa ako se potkrala neka greška ili kod nije najoptimizovaniji, ne zamerite.

Klasa matrica
Code:

using System;
using System.Collections.Generic;
using System.Text;

namespace Matrice
{
    class Matrica
    {
        private int _i, _j;
        private int[,] _n;

        public int i
        {
            get { return _i; }
        }

        public int j
        {
            get { return _j; }
        }

        public Matrica()
        {
            _i = 0; _j = 0; _n = new int[0,0];
        }

        public Matrica(int i, int j, params int[] n)
        {
            _i = i; _j = j; _n = new int[i, j];
            int k = 0;
            for (int ii = 0; ii < _i; ii++)
                for (int jj = 0; jj < _j; jj++)
                    _n[ii, jj] = n[k++];
        }

        public override string ToString()
        {
            if (i == 0)
                return "[,]";
            else
            {
                string s = string.Empty;
                for (int ii = 0; ii < i; ii++)
                {
                    for (int jj = 0; jj < j; jj++)
                    {
                        s += string.Format("{0,-3}", _n[ii, jj]);
                    }
                    s += Environment.NewLine;
                }
                return s;
            }
        }

        public int dohvati(int ii, int jj)
        {
            return _n[ii, jj];
        }
    }
}


Program
Code:

using System;
using System.Collections.Generic;
using System.Text;

namespace Matrice
{
    class Program
    {
        static void Main(string[] args)
        {
            Stack<Matrica> st = new Stack<Matrica>();
            Console.Write("Unesi broj matrica: ");
            int n;
            int.TryParse(Console.ReadLine(), out n);
            for (int i = 0; i < n; i++)
            {
                Console.WriteLine("Matrica [{0}]: ", i + 1);
                Console.Write("i? : ");
                int ii;
                int.TryParse(Console.ReadLine(), out ii);
                Console.Write("j? : ");
                int jj;
                int.TryParse(Console.ReadLine(), out jj);
                if (ii == 0 || jj == 0)
                {
                    Matrica m = new Matrica();
                    st.Push(m);
                }
                else
                {
                    int[] niz = new int[ii * jj];
                    Console.WriteLine("Unesite elemente matrice: ");
                    for (int x = 0; x < niz.Length; x++)
                        int.TryParse(Console.ReadLine(), out niz[x]);
                    Matrica m = new Matrica(ii, jj, niz);
                    st.Push(m);
                }
            }
            // I sad radis sa stekom sta hoces
            if (st.Count > 0)
            {
                Matrica mat = st.Pop();
                Console.WriteLine("Ovo je matrica:\n{0}", mat);
            }
            else
            {
                Console.WriteLine("Stek je prazan");
            }
        }
    }
}

77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
 
Odgovor na temu

[es] :: .NET :: kako upisati i izčitati polje u stack

[ Pregleda: 3439 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.