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 03:33 | Komunita

    Konference Installfest 2026 proběhne o víkendu 28. a 29. března v budově FELu na Karlově náměstí v Praze. Přihlásit přednášku nebo workshop týkající se Linuxu, otevřených technologií, sítí, bezpečnosti, vývoje, programování a podobně lze do 18. února 0:15.

    Ladislav Hagara | Komentářů: 0
    dnes 03:22 | Komunita

    Fedora Flock 2026, tj. konference pro přispěvatele a příznivce Fedory, bude opět v Praze. Proběhne od 14. do 16. června. Na Flock navazuje DevConf.CZ 2026, který se uskuteční 18. a 19. června v Brně. Organizátoři konferencí hledají přednášející, vyhlásili Call for Proposals (CfP).

    Ladislav Hagara | Komentářů: 0
    dnes 03:11 | Zajímavý software

    Z80-μLM je jazykový model 'konverzační umělé inteligence' optimalizovaný pro běh na 8-bitovém 4Mhz procesoru Z80 s 64kB RAM, technologii z roku 1976. Model používá 2-bitovou kvantizaci a trigramové hashování do 128 položek, což umožňuje zpracování textu i při velmi omezené paměti. Natrénovaný model se vejde do binárního souboru velkého pouhých 40 KB. Tento jazykový model patrně neprojde Turingovým testem 😅.

    NUKE GAZA! 🎆 | Komentářů: 1
    včera 17:44 | IT novinky

    Digitální a informační agentura (DIA) na přelomu roku dokončila rozsáhlou modernizaci hardwarové infrastruktury základních registrů. Projekt za 236 milionů korun by měl zabránit výpadkům digitálních služeb státu, tak jako při loňských parlamentních volbách. Základní registry, tedy Registr práv a povinností (RPP), Informační systém základních registrů (ISZR) a Registr obyvatel (ROB), jsou jedním z pilířů veřejné správy. Denně

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 17:33 | IT novinky

    Evropská komise (EK) zahájila nové vyšetřování americké internetové platformy 𝕏 miliardáře Elona Muska, a to podle unijního nařízení o digitálních službách (DSA). Vyšetřování souvisí se skandálem, kdy chatbot s umělou inteligencí (AI) Grok na žádost uživatelů na síti 𝕏 generoval sexualizované fotografie žen a dětí. Komise o tom dnes informovala ve svém sdělení. Americký podnik je podezřelý, že řádně neposoudil a nezmírnil rizika spojená se zavedením své umělé inteligence na on-line platformě.

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | Komunita

    Bratislava OpenCamp pokračuje vo svojej tradícii a fanúšikovia otvorených technológií sa môžu tešiť na 4. ročník, ktorý sa uskutoční 25. 4. 2026 na FIIT STU v Bratislave. V súčasnosti prebieha prihlasovanie prednášok a workshopov – ak máte nápad, projekt, myšlienku, o ktoré sa chcete podeliť s komunitou, OpenCamp je správne miesto pre vás.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | IT novinky

    Krádež není inovace (Stealing Isn't Innovation). Koalice umělců, spisovatelů a tvůrců protestuje proti používání autorsky chráněných děl velkými technologickými společnostmi pro trénování AI systémů bez povolení či kompenzace.

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

    Stát, potažmo ministerstvo vnitra plánuje zřízení nového, neveřejného virtuálního operátora, který by byl primárně určený na zajištěni kritické infrastruktury státu. Cílem je zajistit udržitelné, bezpečné, mobilní, vysokorychlostní datové a hlasové služby umožňující přístup ke kritickým aplikacím IZS a krizového řízení.

    karkar | Komentářů: 8
    včera 01:44 | Nová verze

    Byla vydána nová verze 10.0 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze nové balíčky ownCloud Infinite Scale a Uptime-Kuma.

    Ladislav Hagara | Komentářů: 0
    25.1. 20:22 | Nová verze

    Enkodér a dekodér SVT-AV1 (Scalable Video Technology for AV1) byl vydán v nové major verzi 4.0.0.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (10%)
     (22%)
     (3%)
     (5%)
     (2%)
     (11%)
     (33%)
    Celkem 635 hlasů
     Komentářů: 17, poslední 22.1. 15:24
    Rozcestník

    Dotaz: Ukazatele a pole v C

    7.12.2019 18:55 Dooyer
    Ukazatele a pole v C
    Přečteno: 1298×

    Dobrý den poradil by někdo s následujícím úkolem? (programovani v C)

    mam zadané:

    int cislo1[10]
    int cislo1[10]
    int soucin[10]
    int soucet[10]
    int rozdil[10]
    int podil[10]

    bude se to počítat přes ukazatele, udelat uvedéné aritmeticke operace s dvěma čísly (cislo1,cislo2) a nevím jak na to, nějaké rady?


    Řešení dotazu:


    Odpovědi

    7.12.2019 19:30 .
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Težko takhle zhruba hádat, co je myšleno počítáním přes ukazatele a nějak tě nasměrovat. Upřesni.
    xkucf03 avatar 7.12.2019 20:13 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    Jak vypadá kompletní zadání? Takhle se dá jen hádat.

    Asi iterovat v cyklu for (int i = 0; i < 10; i++) a dělat výpočty s cislo1[i] … a ukládat do soucin[i]

    Před tím potřebuješ zkontrolovat, že jsou všechna pole správně dlouhá…

    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-DK, Relational pipes
    7.12.2019 20:38 _
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Jedna z nejdůležitěj3ích schopností programátora je exaktní formulace problému. Takže si sedni ke stolku a napiš to znova, aby to zadání šlo pochopit {příkladem nikdy neurazíš}.
    7.12.2019 20:54 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    Domnievam sa, že ide o použitie pointrovej matematiky k prístupu k prvokom poľa. V tom prípade:

    1. Ak a je pole a i je index prvku v tom poli, tak platí, že prvok poľa a[i] je na adrese a+i.

    2. Keď máš adresu p, tak to, čo je na tej adrese získaš cez *p.

    Z toho vyplýva, že a[i] je to isté ako *(a+i). Analogicky a[3] je to isté ako *(a+3). A teda napr. a[5]+a[6] je to isté ako (*(a+5)+*(a+6)).

    Uvedené informácie by mali stačiť na to, aby si úlohu vyriešil.

    Řešení 1× (xkucf03)
    NUKE GAZA! 🎆 avatar 8.12.2019 00:44 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    jako já za tebe ten domácák udělám ale ty zase musíš udělat muj domácák na pondělí na čédinu ;D

    tady je muj domácák

    Proveďte grafický rozbor zadaných vět (větného pavouka)
    1. Vím, že vás zajímá cizí literatura a že se s ní snažíte  seznámit české čtenáře, a proto vám doporučuji tuto zajímavou práci,  která obsahuje příspěvky k otázkám překládání.
    2. Časem se naučil pracovat tak úsporně, že si všechno dobře  rozvrhl, a proto mu ještě zbyl čas k tomu, aby se podíval na  představení, které v divadle právě hráli.
    3. Protože němečtí vojáci přiváděli stále posily, postavili proti  nim Pražané barikády a statečně se bránili, ač měli prázdné ruce.

    tady je tvuj domácák

    #include <stdio.h>
    #include <stdlib.h>
    
    #define DELKA_POLE 10
    
    int main()
    {
        
        //hádám že je máš zadaný předem jako
    
        int cislaA[DELKA_POLE]={-4,-3,-2,-1,0,1,2,3,4,5};
        int cislaB[DELKA_POLE]={-4,-3,-2,-1,0,1,2,3,4,5};
        
        int soucet[DELKA_POLE];
        int soucin[DELKA_POLE];
        int rozdil[DELKA_POLE];
        int podil[DELKA_POLE];
        
        unsigned int iterace;
        
        //předpokládám že s čísílkama pracuješ v párech
        //jinak bys tam jako musel vnořit ještě jeden cyklík aby to bylo každej s každým
        for(iterace=0;iterace<DELKA_POLE;iterace++)
        {
            //tohlencto je to skoro to samý jako int A=cislaA[iterace]
            int A=*(cislaA+iterace);
            int B=*(cislaB+iterace);
            
            //takhle zase schováme čísílko do ukazatele
            //je to jakože to samý co soucet[iterace]=A+B
            *(soucet+iterace)=A+B;
            *(soucin+iterace)=A*B;
            *(rozdil+iterace)=A-B;
            
            //se tě určitě šišlavej jouda na výpočetku pokusí napálit dělením nuličkou a nuličkou dělit normálně nejde :'(
            if(B!=0)
            *(podil+iterace)=A/B;
            else
            {
                printf("nulickou nejde delit ty kantore jeden hloupej pitomej!!!\n");
                exit(EXIT_FAILURE);
            }
            
            
            //ještě to v tý samým cyklu mužeme vypisovat a koukat na to
            printf("A = %d  B = %d\n",A,B);
            printf("soucet[%d] = %d\n",iterace,*(soucet+iterace));
            printf("soucin[%d] = %d\n",iterace,*(soucin+iterace));
            printf("rozdil[%d] = %d\n",iterace,*(rozdil+iterace));
            printf("podil[%d] = %d\n\n",iterace,*(podil+iterace));
        }
        
        
        
        exit(EXIT_SUCCESS);
    }
    
    
    8.12.2019 22:26 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Pomocí ukazatelů načtěte čísla dopolí cisli1[] s cidlo2[] a dále pomocí ukazatelů proveďte jednotlivé výpočty a výsledky umístěte do příslušných polí. Výpis hodnot proveďte opět pomocí ukazatelů
    8.12.2019 14:39 Radovan
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Jiné řešení.

    Ale úplné zadání by mě také zajímalo, protože z tohohle popisu bych asi také nevěděl jak na to.
    DaBler avatar 8.12.2019 14:55 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Těžko říct, co si představuejte pod ukazatelem, ale řešení by mohlo vypadat nějak takhle:
    int cislo1[10] = { 1, 4, 2, 8, 5, 6, 6, 8, 9, 9 };
    int cislo2[10] = { 1, 2, 2, 4, 5, 6, 3, 8, 9, 3 };
    int soucin[10];
    int soucet[10];
    int rozdil[10];
    int podil[10];
    
    #include <stddef.h>
    #include <stdio.h>
    
    int main()
    {
    	size_t i;
    
    	for (i = 0; i < sizeof cislo1 / sizeof *cislo1; ++i) {
    		i[soucet] = i[cislo1] + i[cislo2];
    		i[rozdil] = i[cislo1] - i[cislo2];
    		i[soucin] = i[cislo1] * i[cislo2];
    		i[podil]  = i[cislo1] / i[cislo2];
    		
    		printf("cislo1=%i cislo2=%i soucet=%i rozdil=%i soucin=%i podil=%i\n", i[cislo1], i[cislo2], i[soucet], i[rozdil], i[soucin], i[podil]);
    	}
    
    	return 0;
    }
    
    8.12.2019 15:14 debian+
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    bude se to počítat přes ukazatele
    bude se to počítat přes ukazatele
    bude se to počítat přes ukazatele
    bude se to počítat přes ukazatele
    bude se to počítat přes ukazatele
    DaBler avatar 8.12.2019 15:24 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    A četl jste někdy standard C (ISO/IEC 9899-1990)? ukazatel = pole = adresa

    Obzvláště doporučuji sekci 6.3.2.1 Array subscripting:
    The definition of the subscript operator [] is that E1[E2] is identical to (*(E1+(E2))) Because of the conversion rules that apply to the binary + operator. it E1 is an array object (equivalently. a pointer to the initial element of an array object) and E2 is an integer. E1[E2] designates the E2-th element of E1 (counting from zero).
    NUKE GAZA! 🎆 avatar 8.12.2019 17:17 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    si myslim že se po nás jako fakt chce pointrová aritmetička ;D

    DaBler avatar 8.12.2019 18:30 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Dobře, pokus číslo 2:
    #include <stddef.h>
    #include <stdio.h>
    
    int cislo1[10] = { 1, 4, 2, 8, 5, 6, 6, 8, 9, 9 };
    int cislo2[10] = { 1, 2, 2, 4, 5, 6, 3, 8, 9, 3 };
    int soucin[10];
    int soucet[10];
    int rozdil[10];
    int podil[10];
    
    int main()
    {
    	int *p_cislo1 = cislo1;
    	int *p_cislo2 = cislo2;
    	int *p_soucin = soucin;
    	int *p_soucet = soucet;
    	int *p_rozdil = rozdil;
    	int *p_podil = podil;
    	
    	for (; p_cislo1 < cislo1 + 10; ++p_cislo1, ++p_cislo2, ++p_soucin, ++p_soucet, ++p_rozdil, ++p_podil) {
    		0[p_soucet] = 0[p_cislo1] + 0[p_cislo2];
    		0[p_rozdil] = 0[p_cislo1] - 0[p_cislo2];
    		0[p_soucin] = 0[p_cislo1] * 0[p_cislo2];
    		0[p_podil ] = 0[p_cislo1] / 0[p_cislo2];
    		
    		printf("cislo1=%i cislo2=%i soucet=%i rozdil=%i soucin=%i podil=%i\n", 0[p_cislo1], 0[p_cislo2], 0[p_soucet], 0[p_rozdil], 0[p_soucin], 0[p_podil]);
    	}
    
    	return 0;
    }
    
    xkucf03 avatar 8.12.2019 15:26 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    Ta věta končila otazníkem – těžko říct, jestli to byla jen tazatelova domněnka nebo zadání. Proto se tu lidi ptali na původní zadání úkolu.

    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-DK, Relational pipes
    NUKE GAZA! 🎆 avatar 8.12.2019 17:11 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    si myslim že napsal misto teček čárky jak byl jako zamyšlenej. když si tam ty tečky přectavíš tak to bude jakože dávat smysl ;D

    8.12.2019 21:10 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    Ůůůfff. Podobně jako někteří předřečníci, i já cítím potřebu odcitovat ze zadání ještě jednou:

    bude se to počítat přes ukazatele

    Takže je mi fakt záhadou, proč se tu objevují "řešení", ve kterých se to hemží hranatými závorkami.

    Pokud jde o úkol na pointerovou aritmetiku, je rozumné předpokládat, že se má použít přímo pointerová aritmetika, ne syntactic sugar s hranatými závorkami.

    Tady je to bez hranatých závorek (s výjimkou deklarací, samozřejmě):

    #include <stddef.h>
    #include <stdio.h>
    
    void vypiš_pole(const char *const název,
                    const int *const začátek, const size_t velikost) {
      printf("%s: {", název);
      const int *const konec = začátek + velikost;
      const int *u = začátek;
      if (u < konec) {
        printf("%d", *u);
        for (++u; u < konec; ++u) { printf(", %d", *u); }
      }
      puts("}");
    }
    
    int main() {
      const int číslo1[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
      const int číslo2[10] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1};
      int součin[10];
      int součet[10];
      int rozdíl[10];
      int podíl[10];
    
      int *součin_ukazatel = součin;
      int *součet_ukazatel = součet;
      int *rozdíl_ukazatel = rozdíl;
      int *podíl_ukazatel = podíl;
    
      const int *const číslo1_konec = číslo1 + sizeof(číslo1) / sizeof(int);
    
      for (const int *číslo1_ukazatel = číslo1, *číslo2_ukazatel = číslo2;
           číslo1_ukazatel < číslo1_konec;
           ++číslo1_ukazatel, ++číslo2_ukazatel) {
        *součin_ukazatel++ = *číslo1_ukazatel * *číslo2_ukazatel;
        *součet_ukazatel++ = *číslo1_ukazatel + *číslo2_ukazatel;
        *rozdíl_ukazatel++ = *číslo1_ukazatel - *číslo2_ukazatel;
        *podíl_ukazatel++ = *číslo1_ukazatel / *číslo2_ukazatel;
      }
    
      vypiš_pole("číslo1", číslo1, sizeof(číslo1) / sizeof(int));
      vypiš_pole("číslo2", číslo2, sizeof(číslo2) / sizeof(int));
      vypiš_pole("součin", součin, sizeof(součin) / sizeof(int));
      vypiš_pole("součet", součet, sizeof(součet) / sizeof(int));
      vypiš_pole("rozdíl", rozdíl, sizeof(rozdíl) / sizeof(int));
      vypiš_pole("podíl", podíl, sizeof(podíl) / sizeof(int));
    }
    

    (Mimochodem, kdyby se to náhodou někomu (zase, tradičně, klasicky) nedařilo přeložit kvůli UCN, může si
    (a) nainstalovat překladač hodný 21. století, který UCN zvládne (příklad: clang),
    (b) přejmenovat identifikátory do angličtiny, která nevyžaduje diakritiku, nebo
    (c) políbit prdel.)

    DaBler avatar 8.12.2019 21:30 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Jednoduché: důvod je ten, že ukazatel je (ve vašem kódu) ten součin_ukazatel. Jestli ho dereferencujete pomocí operátoru * nebo pomocí pomocí syntactic sugar s hranatými závorkami je úplně jedno.
    9.12.2019 00:48 Peter
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Přečti si standard blbečku, někdo ho výše vypsal.
    9.12.2019 04:55 .
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Ona hlavně taková formulace sama o sobě nic neznamená.
    NUKE GAZA! 🎆 avatar 9.12.2019 09:13 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    8.12.2019 22:17 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    zadání bylo: Pomocí ukazatelů načtěte čísla dopolí cisli1[] s cislo2[] a dále pomocí ukazatelů proveďte jednotlivé výpočty a výsledky umístěte do příslušných polí. Výpis hodnot proveďte opět pomocí ukazatelů
    8.12.2019 22:59 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Jak načíst čísla do polí pomocí ukazatelů?
    Jendа avatar 8.12.2019 23:12 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    scanf("%i", ukazatel);
    9.12.2019 01:05 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Příloha:
    Splnil sem tímhle programem zadání ukolu? viz. Příloha
    9.12.2019 04:53 .
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Ani náhodou. A navíc to máš blbě :)
    NUKE GAZA! 🎆 avatar 9.12.2019 09:11 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    uplně blbě jako!!!!!!!  >:C   >:C    >:C

    odkud se ty čísla maj jako načítat?? mají se nějak zadat jako argument toho programu při spuštění nebo ze standatrního vstupu?? to dělení je celošíselný nebo z tou jakože plovoucí čárkou?? je fakt těch čícel co se má zadat deset?? musíš nám o tom zadání říct jako víc tohleto je fakt jako vaření z vody :'(

     

    upravila jsem svuj předchozí zdrojáček

     

    #include <stdio.h>
    #include <stdlib.h>
     
    //TODO:fakt jich má bejt deset?? nemá se nás to nejdřiv zeptat kolik jich tam chceme strčit??
    #define DELKA_POLE 10
     
    int main()
    {
     
        int cislaA[DELKA_POLE];
        int cislaB[DELKA_POLE];
         
        int soucet[DELKA_POLE];
        int soucin[DELKA_POLE];
        int rozdil[DELKA_POLE];
        int podil[DELKA_POLE];//TODO:má to bejt celočíselný dělení nebo ne?? vtom tvým výsřižku je double
        
        unsigned int iterace;
        
        //nejdřiv si naplníme ty políčka čísílkama ze standartního vstupu
        //to jako znamená že si to pustíš v terminálku a bude to po tobě chtít
        //ty čísílka zadávat
        for(iterace=0;iterace<DELKA_POLE;iterace++)
        {
            printf("zadej %d. cislo A: ",iterace+1);
            scanf("%d",(cislaA+iterace));
            printf("zadej %d. cislo B: ",iterace+1);
            scanf("%d",(cislaB+iterace));
        }
        
        //předpokládám že s čísílkama pracuješ v párech
        //jinak bys tam jako musel vnořit ještě jeden cyklík aby to bylo každej s každým
        for(iterace=0;iterace<DELKA_POLE;iterace++)
        {
            //tohlencto je to skoro to samý jako int A=cislaA[iterace]
            int A=*(cislaA+iterace);
            int B=*(cislaB+iterace);
             
            //takhle zase schováme čísílko do ukazatele
            //je to jakože to samý co soucet[iterace]=A+B
            *(soucet+iterace)=A+B;
            *(soucin+iterace)=A*B;
            *(rozdil+iterace)=A-B;
             
            //se tě určitě šišlavej jouda na výpočetku pokusí napálit dělením nuličkou a nuličkou dělit normálně nejde :'(
            if(B!=0)
            *(podil+iterace)=A/B;
            else
            {
                printf("nulickou nejde delit ty kantore jeden hloupej pitomej!!!\n");
                exit(EXIT_FAILURE);
            }
             
            //ještě to v tý samým cyklu mužeme vypisovat a koukat na to
            printf("A = %d  B = %d\n",A,B);
            printf("soucet[%d] = %d\n",iterace,*(soucet+iterace));
            printf("soucin[%d] = %d\n",iterace,*(soucin+iterace));
            printf("rozdil[%d] = %d\n",iterace,*(rozdil+iterace));
            printf("podil[%d] = %d\n\n",iterace,*(podil+iterace));
        }
         
    
        exit(EXIT_SUCCESS);
    }
    
    
    9.12.2019 12:58 debian+
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Este existuje aj toto:
    int i;
    int pole[10];
    long int sum;
    
    int *p;
    
    sum=0;
    p=pole;
    for(i=0; i<10; i++, p++)
    	sum+=*p;
    
    
    9.12.2019 16:15 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    a ty čísla si tam načetla pomocí ukazatelů jo?
    10.12.2019 20:36 debian+
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Ty nevies, ze C standartne nenuluju pamet (zalezi od pouzitej implementacie zakladu C standardnej kniznice), tj. su tam nahodne z pred pouziviania pamete.
    Jendа avatar 9.12.2019 10:37 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Troll.
    NUKE GAZA! 🎆 avatar 9.12.2019 10:49 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    nevim je to tak 50:50 si myslim ;D

    NUKE GAZA! 🎆 avatar 9.12.2019 18:27 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    neregistrovanej dooyer je určo trol ale nemusí to jako bejt původní tazatel ;D

    9.12.2019 23:30 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Nejsem troll, jste hrozně skeptičtí vůči trollům asi vás tu dost otravují :D každopádně díky za ten upravenej příklad už sem to pochopil jak na to stačilo mi pochopit co je u těch polí adresa a co ukazatel na adresu pole
    NUKE GAZA! 🎆 avatar 10.12.2019 12:44 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    jako že to tady je zatrolený by věděl jenom pravidelnej náštěvník abclinuxu a žádnej pravidelnej náštěvník abclinuxu by neměl s domácákem z cčka problém. si teda jako aspoň myslim že to tak je ;D

    jóóóóóóóóóóó domácák z čédiny to je uplně něco jinýho. už ho máš udělanej?? sem si ho teda už dávno včera obšlehla o přestávce před čédinou ale stejně ho chci ještě jednou udělat vod tebe. kšeft je kšeft ;D

    Jendа avatar 10.12.2019 16:36 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    a žádnej pravidelnej náštěvník abclinuxu by neměl s domácákem z cčka problém. si teda jako aspoň myslim že to tak je
    Není, prudím tady od 2007, a uvedený úkol bych zvládl až někdy od 2014.
    NUKE GAZA! 🎆 avatar 10.12.2019 20:19 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    ti ale cčkovej domácák nikdo taky nezadal ne?? si ale myslim že kdybys to tenkrát jako musel udělat tak bys to prostě udělal ;D

    Jendа avatar 10.12.2019 20:27 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Ano, vygooglil bych to nějak a slepil. Což je zdá se něco, co spousta lidí (například tazatel) neumí. Ale to nepovažuju za to že bych s tím „neměl problém“.
    10.12.2019 17:02 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    nerozumim zadání :D
    NUKE GAZA! 🎆 avatar 10.12.2019 20:20 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    11.12.2019 19:39 Radovan
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Hele, s tou čédinou, dáš tohle? >:->
    V ob_lném pol_ u b_lé v_l_ v_lné v_l_ chv_l_ b_l_ z ob_l_ v_nk_ v_l_ a churav_ ps_ na ně z v_l_ kv_l_vě v_l_, jako b_ je v_l_ v té chv_l_ b_val_ b_l_ b_l_.
    A konečně jsem měl čas trochu si pohrát a ke zde uvedeným špatným řešením přidat svoje, také špatné :-D
    #include <stdio.h>
    #include <limits.h>
    
    #define N (10)
    
    
    
    int i, cislo1[N]={0}, cislo2[N]={0}, soucet[N], rozdil[N], soucin[N], podil[N];
    
    
    
    int main(void)
        {
        printf("Zadej první sadu: ");
        for (i=0; i<N; ++i) scanf("%d", cislo1+i);
        printf("Zadej druhou sadu: ");
        for (i=0; i<N; ++i) scanf("%d", cislo2+i);
    
        for (i=0;i<N;++i)
            *(soucet+i) = *(cislo1+i) + *(cislo2+i),
            *(rozdil+i) = *(cislo1+i) - *(cislo2+i),
            *(soucin+i) = *(cislo1+i) * *(cislo2+i),
            *(podil+i) = *(cislo2+i)? *(cislo1+i) / *(cislo2+i): INT_MAX;
    
        printf("\nsoucet\trozdil\tsoucin\tpodil\n");
        for (i=0; i<N; ++i) printf("%d\t%d\t%d\t%d\n", soucet[i], rozdil[i], soucin[i], podil[i]);
    
        return 0;
        }
    NUKE GAZA! 🎆 avatar 12.12.2019 19:54 NUKE GAZA! 🎆 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C

    brnkačka jako :D :D

     

    V obilném poli u bělé volá volné vole chvělo bylo z obělu venku válí a churavě psa na ně z vole kválově válo, jako by je vole v té chvále bývalo bylo bilo.

    12.12.2019 20:56 Radovan
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Nó, měl jsem kdysi učitele, který dával i šestky a sedmičky. Naštěstí to nebyl češtinář, protože tohle by ohodnotil něčím kolem třicítky :-D
    DaBler avatar 13.12.2019 08:16 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    To dává smysl, dostat jednou za 2 a podrujhé za 6 vychází na průměrnou známku 4.
    13.12.2019 19:58 Radovan
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Šestku počítal za dvě pětky a sedmičku za dvě šestky. Pokud někdo slíznul v únoru dvě sedmičky, měl sakra co opravovat, aby na konci roku dostal aspoň trojku :-D
    DaBler avatar 13.12.2019 20:06 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Jo takhle, tak to je logaritmická stupnice. To je pěkný :)
    9.12.2019 15:23 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Zadání už sem napsal, je to zadání úkolu přímo od učitele.. co byste ještě chtěli vědět:D
    9.12.2019 15:26 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Co je na tom blbě? program funguje
    9.12.2019 17:03 _
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    To bych se dost divil, kdyby to fungovalo. To padá jen se na to člověk podívá.
    9.12.2019 18:14 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    mě to jede :D
    9.12.2019 15:38 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Pomocí ukazatelů načtěte čísla dopolí cisli1[] s cislo2[]
    9.12.2019 16:00 Dooyer
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    když mám načíst čísla do polí cislo1[] cislo2[] tak tímhle

    printf("zadej %d cislo A: ",i+1); scanf("%d",(cislaA+i)); printf("zadej %d cislo B: ",i+1); scanf(" %d",(cislaB+i));

    sem to vlastně splnil ne? to (cislaA+i) je ten ukazatel? ja ze to má být *
    12.12.2019 12:05 sad
    Rozbalit Rozbalit vše Re: Ukazatele a pole v C
    Můj způsob:
    #include <stdio.h>
    
    enum {N = 10};
    
    void input(int n, int *n1, int *n2)
    {    
        while (n-- > 0) 
            scanf("%d%d", n1++, n2++);        
    }
    
    void calc(int n, int *n1, int *n2,
              int *a, int *s, int *m, int *d) {
        while (n-- > 0) {
            *a++ = *n1 + *n2;
            *s++ = *n1 - *n2;
            *m++ = *n1 * *n2;
            *d++ = *n1++ / *n2++;
        }                
    }
    
    void print(int n, int *n1, int *n2,
              int *a, int *s, int *m, int *d) {
        while (n-- > 0) {         
            printf("%d + %d = %d\n", *n1, *n2, *a++); 
            printf("%d - %d = %d\n", *n1, *n2, *s++);
            printf("%d * %d = %d\n", *n1, *n2, *m++);
            printf("%d / %d = %d\n\n", *n1++, *n2++, *d++);
        }
    }
    
    int main()
    {    
        int cislo1[N];
        int cislo2[N];
        int soucet[N];
        int rozdil[N];
        int soucin[N];
        int podil[N];
        
        input(N, cislo1, cislo2);    
        calc(N, cislo1, cislo2, soucet, 
            rozdil, soucin, podil); 
        print(N, cislo1, cislo2, soucet, 
            rozdil, soucin, podil);     
    
        return 0;
    }
    

    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.