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 21:00 | IT novinky

    Zemřel průkopník videoherní hudby Bobby Prince (Wikipedie). Složil hudbu pro hry Wolfenstein 3D, Doom, Doom II, Duke Nukem II a Duke Nukem 3D.

    Ladislav Hagara | Komentářů: 3
    včera 15:55 | IT novinky

    Počítačová hra Operace Flashpoint (Arma: Cold War Assault) od společnosti Bohemia Interactive slaví 25 let. Při této příležitosti bylo publikováno bezplatné hratelné Arma: Cold War Assault Remastered Demo a na GitHubu byly zveřejněny zdrojové kódy.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | IT novinky

    Na trh v České republice přichází HP EliteBoard G1a. Jde o plnohodnotný AI počítač integrovaný přímo do těla klávesnice, tedy zařízení, které na první pohled vypadá jako minimalistická klávesnice, ale ve skutečnosti nahrazuje klasickou počítačovou jednotku.

    Ladislav Hagara | Komentářů: 12
    včera 10:55 | Nová verze

    V lednu bylo oznámeno, že desktopové prostředí Xfce bude mít vlastní kompozitor pro Wayland s názvem xfwl4. O víkendu byla vydána první preview verze.

    Ladislav Hagara | Komentářů: 0
    22.6. 23:44 | Nová verze

    Minulý týden byl oficiálně vydán Android 17. Detaily na blogu a stránkách věnovaných vývojářům.

    Ladislav Hagara | Komentářů: 5
    22.6. 20:00 | IT novinky

    Dnes jde do prodeje zařízení Steam Machine. Steam Machine 512 GB za 1 039 EUR a Steam Machine 2 TB za 1 359 EUR. Do čtvrtka 25. června do 19:00 se lze zapsat na seznamy. Ty budou jednorázově náhodně slosovány, čímž bude určeno pořadí rezervací a čekacích listin.

    Ladislav Hagara | Komentářů: 16
    22.6. 14:44 | Nová verze

    Vývojáři OpenMW (Wikipedie) oznámili vydání verze 0.51.0 této svobodné implementace enginu pro hru The Elder Scrolls III: Morrowind. Přehled novinek v oznámení o vydání a také na YouTube a PeerTube.

    Ladislav Hagara | Komentářů: 0
    22.6. 13:33 | Nová verze

    Byla vydána nová verze 2026.3.0 "Carousels & Killer Whales" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu.

    Ladislav Hagara | Komentářů: 1
    22.6. 12:22 | IT novinky

    Tento týden (24. a 27. června) vyprší platnost Microsoft certifikátu v UEFI vydaných v roce 2011. Nové certifikáty byly vydány v roce 2023. Kdo na počítačích, i virtuálních, používá zabezpečené spouštění (Secure Boot), měl by si ověřit, že má certifikáty aktualizovány, viz např. články na Red Hat nebo Fedora. Pro stávající systémy se nic nemění. Nadále se budou normálně spouštět. Zavaděče podepsané pouze klíčem z 2023 se ale na počítačích s pouze certifikátem 2011 nespustí. Ve Fedoře je zavaděč shim ve verzi 16.1-6 podepsán klíči 2011 i 2023.

    Ladislav Hagara | Komentářů: 7
    21.6. 19:55 | Zajímavý software

    Uživatelé mobilních telefonů s Linuxem si nyní mohou nainstalovat aplikaci Mobilní Datovka. Díky tomu je přístup k datovým schránkám dostupný i na zařízeních s mobilními linuxovými distribucemi, jako jsou například Mobian, NixOS Mobile, pmOS atd. Aplikace je dostupná na Flathubu.

    David Heidelberg | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (2%)
     (16%)
     (26%)
    Celkem 1974 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: C++ problémek s polem

    28.3.2013 10:39 jaguar
    C++ problémek s polem
    Přečteno: 417×

    Dobrý den, jsem samozřejmě v C++ celkem začátečník a teď přišel jeden menší zásek. Popíšu vám můj problém:

    Potřebuju udělat pole, které má nějakou velikost a za určitých okolností se naplňuje hodnotami:

     

    ...
    int id=0;
    int array[500];
    int main(){
    if(podmínka){
    id++;
    array[id]=5;
    }
    }

    Takže teď má array s indexem 1 hodnotu 5. Potřeboval bych udělat, aby kdyby uživatel

    cin >> i;
    if(i==5){
    cout << "Hodnotu 5 má pole s indexem 1";
    }

    Problém je v tom, že nevím jak :) Jak podle hodnoty poznat, k jakému indexu pole je přiřazena? Nevím jestli chápete můj problém, kdyžtak nejasnosti dovysvětlím. Děkuji za případnou pomoc.

    Odpovědi

    28.3.2013 11:18 MadCatX
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    Jedině projít celé pole a zjistit, který prvek má hledanou hodnotu.
    Beda0 avatar 28.3.2013 11:29 Beda0 | skóre: 29
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    Jestli jsem správně pochopil, tak potřebuješ vyhledat v poli podle hodnoty. To je možné udělat ručně - projít všechny prvky pole a porovnávat hodnotu každého prvku s hledanou. Je třeba vyřešit, co se má stát, pokud pole obsahuje víc stejných prvků.

    Druhá možnost je použít find a trochu upravit příklad z manuálu, který najde první výskyt hledaného prvku.
    #include <iostream>     // std::cout
    #include <algorithm>    // std::find
    
    int main () {
      int myints[] = { 10, 20, 30 ,40, 50, 60, 70, 80, 40 };
      int * p;
    
      // pointer to array element:
      p = std::find (myints,myints+9,40);
      if(p != myints+9)
            std::cout << "Found at position " << p-myints << '\n';
      else
            std::cout << "Not found" << '\n';
    
      return 0;
    }
    Ukázky kódu se vkládají do tagů <pre> a <code>, aby byly lépe čitelné.
    29.3.2013 16:57 jaguar
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    Díky, tohle je super, akorát to samé potřebuju udělat i s char arrayem a s ním to nefunguje, nevím jestli by vůbec mělo. Zkoušel jsem
    std::binary_search
    ale opět bez výsledku, tak buď dělám něco špatně, nebo se to má dělat ještě jinak.
    29.3.2013 17:19 Zadejte vaše jméno
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    memmem() bude fungovat pro vsechno :P
    29.3.2013 19:24 jaguar
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    Tak s charama jsem to nakonec někde našel a vyřešil takto:
    
    char findf(char arr[], int arrSize, char seek){
    
    	for(int i=0; i < arrSize; i++){
    		if(arr[i] == seek) return i;
    		}
    	return -1;
    
    }
    
    ...
    
    int x = findf(array, arraySize, char)
    
    
    28.3.2013 12:29 jekub
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    c++, místo int array[] std::vector<int>. Pro vyhledání použít find (sekvenční), nebo std::map
    29.3.2013 20:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: C++ problémek s polem
    Správně, nicméně já mám taky rád C+ :-).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    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.