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 19:55 | Zajímavý článek

Byly zveřejněny (pdf) podrobnosti o kritické bezpečnostní chybě CVE-2017-12542 v HPE iLO 4 (Integrated Lights-Out), tj. v proprietárním řešení společnosti Hewlett Packard Enterprise pro vzdálenou správu jejich serverů. Bezpečnostní chyba zneužitelná k obejití autentizace a k vzdálenému spuštění libovolného kódu byla opravena již v květnu loňského roku ve verzi 2.53.

Ladislav Hagara | Komentářů: 0
dnes 17:55 | Zajímavý projekt

CSIRT.CZ informuje o CTF (Capture the Flag) platformě ZSIS CTF s úlohami pro procvičování praktických dovedností z oblasti kybernetické bezpečnosti a upozorňuje na soutěž Google Capture the Flag 2018, kde je možné vyhrát zajímavé ceny.

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

Byly zveřejněny prezentace a videozáznamy přednášek z prvního československého setkání síťových operátorů CSNOG konaného 11. a 12. června v Brně a semináře IPv6 2018 uskutečněného 6. června v Praze.

Ladislav Hagara | Komentářů: 0
dnes 16:11 | Komunita

Svobodný unixový operační systém FreeBSD slaví 25 let. Přesně před pětadvaceti lety, tj. 19. června 1993, byl vybrán název FreeBSD.

Ladislav Hagara | Komentářů: 0
dnes 15:11 | Komunita

Oficiální YouTube kanál Blenderu je již několik dní blokován. Nadace Blender Foundation informuje, že od společnosti Google dostala šestistránkový návrh nové smlouvy (pdf). Zdá se, že podmínkou další spolupráce je zapnutí reklam na kanálu, tj. zpeněžení obsahu.

Ladislav Hagara | Komentářů: 19
dnes 01:55 | Nová verze

Byla vydána verze 1.13 multiplatformního open source textového editoru Brackets (Wikipedie, GitHub). Přehled novinek v oficiálním oznámení a v poznámkách k vydání. Brackets je nově dostupný také jako balíček ve formátu Flatpak z oficiálního repozitáře Flathub.

Ladislav Hagara | Komentářů: 3
včera 18:44 | Komunita

Oficiální YouTube kanál Blenderu je již několik dní blokován. Důvody jsou zatím nejasné. Pravděpodobně chyba YouTube. Dění lze sledovat na Twitteru Tona Roosendaala.

Ladislav Hagara | Komentářů: 18
včera 17:55 | Zajímavý software

Na GitHubu byly pod open source licencí LLVM zveřejněny zdrojové kódy překladače programovacího jazyka C++ Zapcc vycházejícího z Clangu/LLVM. Překlad pomocí Zapccu je díky lepšímu kešování obvykle několikrát rychlejší než překlad pomocí Clangu. V březnu loňského roku byl vydán Zapcc ve verzi 1.0.

Ladislav Hagara | Komentářů: 0
včera 17:22 | Pozvánky

Červnový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 21. 6. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát na téma: F-Droid, aneb svobodný software do vašeho mobilu. Kromě toho budou k vidění i vývojové desky HiFive1 se svobodným/otevřeným čipem RISC-V.

xkucf03 | Komentářů: 1
15.6. 22:44 | Zajímavý článek

Na blogu projektu NeoPG (GitHub), kryptografického softwaru vycházejícího z GnuPG, byly zveřejněny 4 příspěvky detailně popisující aktuální bezpečnostní problémy v GnuPG a souvisejících softwarových produktech. V prvním příspěvku je ukázáno, že je možné vytvořit zprávu, o které budou Earlybird, Evolution, Mutt nebo Outlook tvrdit, že jí dešifrovali a přitom ale zpráva vůbec zašifrována nebyla. V druhém příspěvku je popsána

… více »
Ladislav Hagara | Komentářů: 7
Jak čtete delší texty z webových stránek?
 (78%)
 (22%)
 (4%)
 (7%)
 (2%)
 (11%)
Celkem 212 hlasů
 Komentářů: 36, poslední včera 21:16
    Rozcestník

    Dotaz: java - pole

    14.6.2009 14:28 salik
    java - pole
    Přečteno: 1011×
    Příloha:

    Na vstupu je n náhodných čísel z intervalu <-10;10> zjistěte jejich průměrnou hodnotu, součet, součet sudých a lichých čísel

     

    Odpovědi

    14.6.2009 14:30 salik
    Rozbalit Rozbalit vše Re: java - pole

    jo a dotaz je ze bch rad vedel proc to nefunguje..hlavne jak vyresit ty sudy a lichy cisla

    oroborus avatar 14.6.2009 15:15 oroborus | skóre: 20 | blog: Bulanci
    Rozbalit Rozbalit vše Re: java - pole
    Příloha:

    Hned na zaciatku ma zarazilo, skade beries tu istotu, ze parnych/neparnych cisel

    bude polovica celkovych cisel  int suda[] = new int[pocet/2];

    To je iba statisticky/teoreticky, ale realne sa na to spoliehat nemozes.

    oroborus avatar 14.6.2009 15:18 oroborus | skóre: 20 | blog: Bulanci
    Rozbalit Rozbalit vše Re: java - pole

    BTW samozrejme, v mojom kode ma byt "public class Cisla" namiesto "public class Hello"

     

    ( zobralo mi to staru verziu :) )

    Jan Zahornadsky avatar 14.6.2009 15:26 Jan Zahornadsky | skóre: 22 | blog: hans_blog
    Rozbalit Rozbalit vše Re: java - pole
    A ten průměr bych počítal avg/pocet, ne avg/10 ;-) Jinak (snad) OK.
    Actually, I was half an hour into the pointer scripting documentation when she got dressed and left.
    oroborus avatar 14.6.2009 15:33 oroborus | skóre: 20 | blog: Bulanci
    Rozbalit Rozbalit vše Re: java - pole

    Ops, to som sa sekol :)

    Ono by sa to dalo este efektivnejsie: (parne+neparne)/pocet // vsimol som si to az teraz

    a s avg premennou by sa vobec nepracovalo, ani by neexistovala

    14.6.2009 15:38 salik
    Rozbalit Rozbalit vše Re: java - pole

    dikes

    default avatar 14.6.2009 21:20 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: java - pole
    Přílohy:

    Na vstupu je n náhodných čísel

    Nechci se do toho plést, ale je-li na vstupu n prvků, pak (staticky či dynamicky alokované) pole není dobrý nápad. Tento problém jde řešit iterativně. Kód v příloze načítá čísla ze standardního vstupu. Každé číslo na novém řádku.

    $ javac Generator.java Numbers.java 
    $ java -cp . Generator 2000000 | java -cp . Numbers 
    oddSum     : -897333472733
    oddCount   : 1000023
    evenSum    : -1471369732372
    evenCount  : 999977
    totalSum   : -2368703205105
    totalCount : 2000000
    oddAvg     : -897312.83
    evenAvg    : -1471403.57
    totalAvg   : -1184351.60
    $ 
    
    14.6.2009 22:03 saslik
    Rozbalit Rozbalit vše Re: java - pole

    Pouzit pro pocet cisel BigDecimal je hodne spatny napad, za ktery by se asi od zkousky vyhazovalo:-)  Ze by se pocet cisel na vstupu nevesel napr. do long je totiz v tomto vesmiru nepravdepodobne. Vzhledem k tomu, ze BigDecimal je immutable, vznikne ohromne mnozstvi zcela zbytecnych objektu, navic se pro scitani vola metoda, proste bude to tragicky pomale. Pouziti BigDecimal pro soucet ma mozna trochu smysl, ale pro takovouto ulohu je to podle mne rovnez zbytecne, long by asi mohl stacit. Nehodlam to prilis zkoumat, ale ty vypsane vysledky jsou na prvni pohled nesmyslne, takze asi tam nekde bude i vecna chyba.

    default avatar 14.6.2009 22:11 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: java - pole

    Tak to se hochu pleteš! Mám tady na starosti aplikaci, která si neporadí se souborem, protože používá java.lang.Integer. S tím, že výpočty jsou pomalé, souhlasím. S věcnou chybou nikoli. Přepočítával jsem alternativním programem.

    Spíš bych hledal způsob, jak obejít to dělení. Co se výkonu týče, dva miliony čísel to udělá za 13 sekund. Šlo by to udělat lépe, ale to by nikdo nepochopil. Šlo mi spíš o to ukázat, že když je na vstupu neznámý počet čísel, pole není dost cool. Zkusi si naalokovat pole intů o dvou milionech prvcích. :-D

    14.6.2009 22:26 saslik
    Rozbalit Rozbalit vše Re: java - pole

    No prumer cisel z intervalu -10 az +10 musi byt asi rovnez z tohoto intervalu, takze mam proste podezreni na chybu. Deleni se provadi trikrat, scitani pro kazdy prvek, takze v deleni urcite vykonnostni problem nemuze byt. Naopak je v nesmyslnem vytvoreni nekolika milionu instanci BigDecimal pro pocet cisel na vstupu. long je podstatne vetsi nez integer, takze jako paranoik bych pouzil ten, prece jen integer uz je dneska trochu maly. Neni zadny problem naalokovat pole o dvou milionech integeru, takove pole ma par megabajtu. Samozrejme pri cteni ze stand. vstupu nema smysl delat nejake pole, nicmene pokud by se mela cisla uchovat, tak se tomu stejne neda vyhnout, nebo pouzit nejakou kolekci, coz ale pro cisla do deseti bude ohromne plytvani pameti.

    default avatar 15.6.2009 09:20 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: java - pole

    Použil jsem Copy/Paste. Proto je takový šílený.

    Průměr nemusí být z intervalu <-10;+10>, protože Generator negeneruje čísla z tohoto intervalu.

    Nechtěl jsem udělat state-of-the-art solution. Chtěl jsem jen poukázat na to, že vzhledem k tomu, že nevíme, kolik vstupních dat máme, pole není podle mého názoru dobrý nápad. Lze to řešit iterativně s mnohem menší paměťovou náročností. Nic víc, nic míň.

    To, že jsem zvolil nesmyslné datové typy, si plně uvědomuji. O tom žádná. Ale lidé by si měli zvyknout, že zadání pro software má vypadat úplně jinak. Když to dotáhnu podle zadání do extrémů, tak ani ten BigDecimal nestačí.

    Nedošlo mi, že se najde nějakej vtipálek, kterej se v tom bude vrtat. Ale to je holt cena za to, že se člověk snaží a obtěžuje se s funkčním příkladem namísto obyčejných chytrých řečí. To je další chyba, kterou jsem udělal. Základní myšlenku ten kód pokrývá a to by mělo stačit. :-D

    15.6.2009 09:54 saslik
    Rozbalit Rozbalit vše Re: java - pole

    Zadani ma mozna vypadat jinak (naprikald neni vubec receno jak je vstup realizovan), nicmene ze jde o cisla z intervalu -10 az +10 tam je uvedeno. Jestli to tak Generator nedela, tak to rozhodne neni problem zadani. Ja jsem se generatorem vubec nezabyval, predpokladal jsem, ze dela to co delat ma.

    Ja na to reaguju proto, ze jsi sem umistil zdrojak, ktery ma na prvni pohled velmi zavazne nedostatky - BigDeciamal pro cela cisla misto BigInteger (kdyz uz tedy nestaci ten long), BigDecimal jako citac (to je naprosty humus, ktery nema NIKDY pravo na zivot), urceni lichosti udesnym zpusobem delenim nejakych BigDecimal instanci (kdyz uz tak lze pouzit treba BigInteger.testBit). Opravdu bych se nerad v praci v budocnosti setkal s programatorem, ktery pouzije BigDecimal jako citac, protoze to nekde "radil'  nejaky odbornik...

    Funkci priklad, ktery je chybny, coz si dokonce sam uvedomujes ("To, že jsem zvolil nesmyslné datové typy, si plně uvědomuji"), nema vubec zadny prinos (leda kdybys k nemu pripsal "takto to vypadat nema") a naopak muze nejakeho zacatecnika zmast. Proto mam potrebu uvest takovy "priklad" na pravou miru. Kdybys zustal u "chytych reci" a pouze vysvetlil, proc se ti nelibi pouziti pole, nemel bych proti tomu zadne namitky.

    default avatar 15.6.2009 10:16 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: java - pole

    No jo no. Chybami se člověk učí.

    15.6.2009 11:20 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: java - pole
    Prý chybami. Jestli by někoho měli vyrazit od zkoušky, tak člověka, který takový problém řeší tím, že si všechny vstupy zapamatuje! BigDecimal je tady spíš vtip :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    xkucf03 avatar 16.6.2009 23:25 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše vtip

    Ještě by se to dalo krásně vyřešit pomocí SQL* – vytvořís tabulku, naINSERTuješ čísla a pomocí agregačních funkcí spočítáš výsledek. Standardní vstup a výstup by samozřejmě probíhal pomocí XML.

    :-D

    *) ani na to není potřeba PostgreSQL nebo Oracle, stačí javovská hSQL nebo Derby.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    18.6.2009 22:10 deadmail
    Rozbalit Rozbalit vše Re: java - pole
    Priemer cisel z intervalu -10 az +10 je tiez z tohto intervalu, ale pri vypocte sa pocita najprv sucet - a ten uz moze prekrocit hranice datoveho typu
    19.6.2009 10:07 saslik
    Rozbalit Rozbalit vše Re: java - pole

    To s mym prispevkem nijak nesouvisi. Ja jsem poukazoval na to, ze pokud ten prumer vysel mimo interval, asi se pocita spatne. To se pozdeji vysvetlilo tak, ze na vstupu byla cisla, ktera  neodpovidala zadani, takze ani vysledny prumer nebyl takovy, jak by se podle zadani ocekavalo. A dale na to, ze pro citac poctu cisel na vstupu staci (a je nejvhodnejsi) long, na cemz si dovolim trvat. Stejne tak si myslim, ze v tomto pripade staci long i pro soucet, ale to jsem v prispevku nepsal.

    BTW kontrolni otazka - kolik cisel z intervalu -10 az +10 by muselo byt na vstupu, aby se jejich soucet nevesel do promenne typu long?

    14.6.2009 22:30 saslik
    Rozbalit Rozbalit vše Re: java - pole

    BTW proc by nikdo nepochopil program scitajici dva miliony cisel za mene nez 13 sekund? Ja spis nechapu program, kteremu to trva tech 13 sekund:-) Samozrejme zalezi na hardwaru, ale asi vis kam mirim.

    14.6.2009 21:49 saslik
    Rozbalit Rozbalit vše Re: java - pole

    Promenna by se nemelal jmenovat avg, kdyz se do ni pocita soucet. Muze byt vygenerovano cislo -11, coz je v rozporu se zadanim (vhodnejsi je zde ostatne pouzit java.util.Random).  Pouziti absolutni hodnoty je zbytecne, operator % lze pouzivat i pro zaporna cisla.

    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.