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í
×
    včera 14:55 | Zajímavý software

    Makepad dospěl do verze 1.0 (𝕏). Jedná se o multiplatformní open source UI framework pro Rust napsaný v Rustu.

    Ladislav Hagara | Komentářů: 1
    16.5. 17:11 | Komunita

    Konference OpenAlt 2025 hledá přednášející. Proběhne o víkendu 1. a 2. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

    Ladislav Hagara | Komentářů: 0
    16.5. 15:33 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 153 (pdf)

    Ladislav Hagara | Komentářů: 0
    16.5. 12:22 | Komunita

    Byl publikován květnový přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    15.5. 21:33 | Nová verze

    Programovací jazyk Rust (Wikipedie) dnes slaví 10 let od vydání verze 1.0. Přímo na oslavě byla vydána nová verze 1.87.0. Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    15.5. 14:44 | IT novinky

    Evropská komise obvinila provozovatele čínské platformy TikTok z porušování pravidel EU kvůli netransparentnosti v reklamě. Komise, která v EU plní i funkci antimonopolního úřadu, to dnes uvedla v tiskové zprávě. TikTok, který patří čínské firmě ByteDance, se může k předběžnému nálezu vyjádřit. Pokud ale podezření komise nevyvrátí, hrozí mu pokuta až do šesti procent z ročního globálního obratu.

    Ladislav Hagara | Komentářů: 20
    14.5. 20:44 | Komunita

    Sovereign Tech Agency (Wikipedie), tj. agentura zabezpečující financování svobodného a otevřeného softwaru německou vládou, podpoří GFortran částkou 360 000 eur.

    Ladislav Hagara | Komentářů: 0
    14.5. 14:00 | IT novinky

    Microsoft hodlá zrušit zhruba tři procenta pracovních míst. Microsoft na konci loňského června zaměstnával kolem 228.000 lidí. Tři procenta z tohoto počtu představují téměř 7000 pracovních míst.

    Ladislav Hagara | Komentářů: 16
    14.5. 13:33 | IT novinky

    V říjnu loňského roku provedl Úřad pro ochranu hospodářské soutěže (ÚOHS) místní šetření u společnosti Seznam.cz. Krajský soud v Brně tento týden konstatoval, že toto šetření bylo nezákonné.

    Ladislav Hagara | Komentářů: 16
    13.5. 22:22 | Bezpečnostní upozornění

    Branch Privilege Injection (CVE-2024-45332, Paper) je nejnovější bezpečnostní problém procesorů Intel. Intel jej řeší ve včerejším opravném vydání 20250512 mikrokódů pro své procesory. Neprivilegovaný uživatel si například může přečíst /etc/shadow (YouTube).

    Ladislav Hagara | Komentářů: 2
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (7%)
     (23%)
     (4%)
     (2%)
     (3%)
     (1%)
     (0%)
     (3%)
    Celkem 637 hlasů
     Komentářů: 27, poslední včera 11:11
    Rozcestník
    Š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: 465×
    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: 63 | 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 ::: | 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. ... )
    27.11.2009 08:24 rastos | skóre: 63 | 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.