abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
dnes 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
dnes 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
dnes 00:11 | Zajímavý článek

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
dnes 00:08 | Pozvánky

V sobotu 18. 2. se v Praze v prostorách VŠE uskuteční od 9:30 již 4. ročník největší české konference o open source redakčním systému WordPress (WP) - WordCamp Praha 2017.

… více »
smíťa | Komentářů: 0
včera 23:58 | Komunita

Kryptoměnová komunita zahájila nový rok spuštěním projektu Blockchain.cz, jehož cílem je kolektivně nalézt ideální překlad pro čím dál frekventovanější slovo „blockchain“. Přispět návrhem může kdokoli. Sběr bude trvat až do konce září 2017. Následně bude probíhat dvoutýdenní veřejné hlasování, které bude zakončeno výběrem toho nejlepšího návrhu.

xHire | Komentářů: 5
včera 15:55 | Bezpečnostní upozornění

Společnost Oracle vydala čtvrtletní bezpečnostní aktualizaci svých softwarových produktů (CPU, Critical Patch Update). Opraveno je celkově 270 bezpečnostních chyb. V Oracle Java SE je například opraveno 17 bezpečnostních chyb. Vzdáleně zneužitelných bez autentizace je 16 z nich. V Oracle MySQL je opraveno 27 bezpečnostních chyb. Vzdáleně zneužitelných bez autentizace je 5 z nich.

Ladislav Hagara | Komentářů: 0
včera 02:48 | Nová verze

Po půl roce od vydání verze 9.0 (zprávička) byla vydána verze 10.0 zvukového serveru PulseAudio. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 27
včera 00:33 | Komunita Ladislav Hagara | Komentářů: 8
18.1. 17:30 | Zajímavý článek

Mozilla.cz informuje, že webový prohlížeč Firefox bude od verze 53 obsahovat integrovaný prohlížeč dat ve formátu JSON. Firefox kromě strukturovaného prohlížení nabídne také možnost filtrace a uložení na disk. Dle plánu by měl Firefox 53 vyjít 18. 4. 2017.

Ladislav Hagara | Komentářů: 1
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (11%)
Celkem 332 hlasů
 Komentářů: 24, poslední 17.1. 10:14
    Rozcestník
    Reklama
    Štítky: není přiřazen žádný štítek

    Dotaz: posun prvku matice

    26.11.2009 13:39 Pavel
    posun prvku matice
    Přečteno: 441×
    Zdravim, potreboval bych poradit, jak posunout prvky matice o jeden dopredu......?

    Ukazka:

    1 2 3 4 5 6

    =>

    6 1 2 3 4 5

    Praci s polema uz celkem zvladam, ale na tohle nejak nemuzu prijit:-(....

    predem diky za rady

    Odpovědi

    26.11.2009 14:08 Zdenek
    Rozbalit Rozbalit vše Re: posun prvku matice
    Uz zase domaci ukol? A co s tema polema zvladas? Umis uz zasit obili?
    26.11.2009 14:30 Pavel
    Rozbalit Rozbalit vše Re: posun prvku matice
    no, co se tyce poli tak sem si zkousel bublinkove trideni, prohazovani radku, sloupcu, hledani maxima,..........

    necekam ze mi to nekdo napise za me.....jen poradi, jak na to......
    26.11.2009 14:37 rastos | skóre: 60 | blog: rastos
    Rozbalit Rozbalit vše Re: posun prvku matice
    1 2 3 4 5 6
    
    1 2 3 4 5 6     6
    1 2 3 4 5→5
    1 2 3 4→4 5
    1 2 3→3 4 5
    1 2→2 3 4 5
    1→1 2 3 4 5
    
    6 1 2 3 4 5
    26.11.2009 14:46 Zdenek
    Rozbalit Rozbalit vše Re: posun prvku matice
    Hezke. Ja radil tohle :-)
    1 2 3 4 5 6
    
    1 2 3 4 5←6
    1 2 3 4←6 5
    1 2 3←6 4 5
    1 2←6 3 4 5
    1←6 2 3 4 5
    
    6 1 2 3 4 5
    
    26.11.2009 14:39 Zdenek
    Rozbalit Rozbalit vše Re: posun prvku matice
    Kdyz uz umis tridit tak posun je prece hracka. Nebo to "zkousel jsem" znamena, ze to za tebe nekdo napsal a tys to spustil? No, ale abys nerekl, ze neporadim tak pro zacatek bys mohl treba prohodit par sloupcu, to uz prece umis, co ty na to?
    26.11.2009 15:02 Pavel
    Rozbalit Rozbalit vše Re: posun prvku matice
    no tohle je neco jineho nez trideni - tohle je Dvourozmerna matice , kde na vstupu zadavam jeji rozmery.....muzu sem dat ukazku kodu, ale nefunguje:-(.....
    26.11.2009 17:37 Zdenek
    Rozbalit Rozbalit vše Re: posun prvku matice
    Jen ho sem dej, neco s nim udelame a hlavne se dozvime v jakem ze to ma byt jazyku :-)
    26.11.2009 19:14 Pavel
    Rozbalit Rozbalit vše Re: posun prvku matice
    tak se davam ten kod, nemam tam komentare, tak trochu vysvetlim jak by to melo fungovat....

    http://pastebin.com/m72f07962 http://pastebin.com/m33bca2b5

    mam dve tridy - trida Matice a Main

    Matice obsahuje: konstruktor pro vytvoreni dvou matic(rozmery zadane uzivatelem) a druhou - pomocnou, do ktere budu ukladat "orotovanou" matici.....dale obsahuje metody pro naplneni matice, vypis, a orotovani(coz se mi bohuzel nedari:-()

    ve tride Main si nejprve vytvorim objekt(pomocnou matici a tu, kterou uzivatel zada), dale ji naplnim, vypisu, pak volam metodu "orotuj" a pak vypisuju orotovanou......nevim vcem je problem, ostatni ukoly jsem zvladl, ale tenhle se mi nedari...

    predem moc dekuju za pomoc...

    26.11.2009 20:49 Zdenek
    Rozbalit Rozbalit vše Re: posun prvku matice
    Proc u obou for cyklu odecitas jednicku v testovaci podmince?
    
            public void orotujMatici() {
                int predchozi = 1;
                for (int i = 0; i < zadanaMatice.length - 1; i++) {
                for (int j = 0; j < zadanaMatice[0].length - 1; j++) {
                   if((i == 0) && (j == 0)) predchozi = zadanaMatice[pocetRadku - 1][pocetSloupcu - 1];
                   if((j == 0) && (i != 0)) predchozi = zadanaMatice[i-1][pocetSloupcu - 1];
                   if(j != 0) predchozi = zadanaMatice[i][j - 1];
    
                   orotovanaMatice[i][j] = predchozi;
                }
              }
            }
    
    26.11.2009 21:32 Pavel
    Rozbalit Rozbalit vše Re: posun prvku matice
    no myslel sem ze zadanaMatice.lenght mi vraci int pocet (treba ze ma 2 sloupce), ale jelikoz pole se mi indexuje od 0, tak (abych "nepretekl") to odecitam....

    pole ktere ma 2 sloupce, ma prece maximalni index 1......

    vidim, ze bez toho to funguje, ale nejak sem si vtiom uhdelal gulas......:-(
    26.11.2009 21:41 Zdenek
    Rozbalit Rozbalit vše Re: posun prvku matice
    To sis myslel dobre, ale pak si nemel pouzit podminku "mensi nez" :-)
    26.11.2009 22:07 Pavel
    Rozbalit Rozbalit vše Re: posun prvku matice
    nechapu....pak by tom bylo mensi nebo rovno??
    26.11.2009 23:00 vencas | skóre: 32
    Rozbalit Rozbalit vše Re: posun prvku matice
    Spočítej si na prstech, jakých hodnot bude i nabývat... (nápověda: Zdeněk má pravdu a pochopils to správně)
    27.11.2009 11:43 Pavel
    Rozbalit Rozbalit vše Re: posun prvku matice
    uz to chapu, musel sem si tu matici nakreslit na papir....

    este mam ale dotaz: je to hodne prasacky napsany?? jak byste to resili Vy profici?? (nechci celej kod, jen popsat, jak byste to podle toho zadani resili Vy???)

    Diky
    27.11.2009 19:14 extremni lama | skóre: 14 | blog: e_lama
    Rozbalit Rozbalit vše Re: posun prvku matice
    Ja bych to resil nejak takhle: (je to jenom pseudo-kod)
    class Matice:
    
            Matice (pocet_radku, pocet_sloupcu):
                    M = new int[pocet_radku * pocet_sloupcu];
                    offset = 0
    
            int prvek(int radek, int slupec):
                    return M[ (pocet_sloupcu * radek + sloupec + offset) % (pocet_radku * pocet_sloupcu) ];
    
            void orotuj():
                    offset += pocet_radku * pocet_sloupcu - 1;
                    offset %= pocet_radku * pocet_sloupcu;
    
    
    a obesel bych se uplne bez kopirovani pameti.

    Samozrejme v realny aplikaci by volba konkretniho algoritmu zalezela na spouste dalsich faktoru ( napr. jak casto budu provadet tuhle operaci a jak casto nejaky jiny ? je tahle reprezentace matice vhodna i pro ostatni operace s ni ? atd. ... )
    The enemy of my enemy is still my enemy.
    27.11.2009 08:24 rastos | skóre: 60 | blog: rastos
    Rozbalit Rozbalit vše Re: posun prvku matice
    Ak tomu dobre rozumiem tak metoda orotujMatici() pri j==0 a i==0 urobi

    orotovanaMatice[0][0]= zadanaMatice[pocetRadku - 1][pocetSloupcu - 1]

    Ale tak, ako som to pôvodne pochopil, by malo byť možné použiť systém, kedy máš metódu, ktorá zarotuje len jeden riadok a túto metódu postupne zavolať na všetky riadky. Inými slovami, nemá dochádzať k presunu medzi riadkami (a fungovanie takej metódy som navrhol vyššie). Ako je to? Daj príklad, na maticu, ktorá má viac ako jeden riadok.

    Zdenek: pri tvojom riešení vymieňaš prvky. To znamená 3 priradenia na jeden krok. Pri mojom riešení, je to len jedno.

    masomlejn avatar 26.11.2009 16:46 masomlejn | skóre: 16
    Rozbalit Rozbalit vše Re: posun prvku matice
    
    program shift_array
      implicit none
      integer, parameter :: max=6 
      integer            :: i, j
      integer            :: a(max)
    
      a = (/1, 2, 3, 4, 5, 6/)
      print'(a12,x,6(i2,1x))',"A(puvodni)= ",(a(i), i=1,max)
      a = cshift(a,-1)
      print'(a12,x,6(i2,1x))',"A(nova)= ",(a(i), i=1,max)
    end program shift_array
    
    
    A potom
    [milan@penguin-shift-array]$ gfortran -o shift-array shift-array.f90
    [milan@penguin-shift-array]$ ./shift-array
    A(puvodni)=   1  2  3  4  5  6
       A(nova)=   6  1  2  3  4  5
    [milan@penguin-shift-array]$
    
    29.11.2009 10:41 Kill_Bill
    Rozbalit Rozbalit vše Re: posun prvku matice
    Jen technicka poznamka, kdyz vidim "Class Matice..." - profi. resice soustav rovnic se dodnes pisi ve Fortranu. Objekty jsou proste fajn ale ta rezie...

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.