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 12:11 | IT novinky

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 2
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 4
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 24
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 7
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 19
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 83
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

    Dotaz: divny vystup u jednoduche kalkulacky v C

    Bundas avatar 17.1.2014 17:13 Bundas | skóre: 14 | Pardubice
    divny vystup u jednoduche kalkulacky v C
    Přečteno: 452×
    U tohodle programu mi blbne ta cast u switche. jakmile se program dostane ke switchi tak opet zacne cyklus aniz by to chtelo vstup. jestli mi nerozumite, zkuste si to zkompilovat a pochopite
    int main(){
        puts("Vitejte v bundas kalkulacce\npocitejte:\n");
        int vs1, vs2;
        char b;
            do{
    
            printf("Zadejte prvni cislo: ");
            scanf("%d", &vs1);
            if(vs1 == 666){
                break;
            }
            printf("Zadejte druhe cislo: ");
            scanf("%d", &vs2);
            if(vs2 == 666){
                break;
            }
            printf("\njakou aritmetickou operaci si prejete?\nDELIT ---- /\nNASOBIT ---- *\nSCITAT ---- +\nODCITAT ---- -\n\nVYBER: \n");
            scanf("%c", &b);
            switch(b){
            case '/' : printf("Vysledek je: %d\n", vs1/vs2);
                break;
            case '*' : printf("Vysledek je: %d\n", vs1*vs2);
                break;
            case '+' : printf("Vysledek je: %d\n", vs1+vs2);
                break;
            case '-' : printf("Vysledek je: %d\n", vs1-vs2);
                break;
            case 'e' : printf("aplikace se ukoncuje...");
                break;
    
    
            }
    
    
        }while(1);
        return 0;
    
    }
    
    
    Abe the Messiah has come.

    Odpovědi

    17.1.2014 17:18 chrono
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    Ten tretí príkaz scanf použije znak <enter>, ktorý bol použitý pri zadávaní predchádzajúceho čísla.
    Bundas avatar 17.1.2014 17:25 Bundas | skóre: 14 | Pardubice
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    opravil sem to, ale furt to blbne stejne.
    Abe the Messiah has come.
    17.1.2014 18:05 jekub
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
            scanf("\n%c", &b);
    
            case 'e' : printf("aplikace se ukoncuje...");
                return 0;
    
    17.1.2014 19:15 luky
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    RTFM!
    %c ... The usual skip of leading white space is suppressed. To skip white space first, use an explicit space in the format.
    17.1.2014 22:11 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    Prdni před každý scanf toto:
    while(getchar() != '\n' );
    (Vybereš tím vstupní buffer, minimálně tu desítku co ti tam letí)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    martin-ux avatar 17.1.2014 22:43 martin-ux | skóre: 18 | Bratislava
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    no, tato uloha bola pre zacinajuceho programatora o dost jednoduchsia pri pouziti fcii z conio.h (klasicky getch() ). to som si len tak zaspominal ..
    scanf s pouzitim \n je IMO skor workaround ako riesenie .. ale pre zadanie ulohy staci ..
    ..when you do things right, people won't be sure you've done anything at all..
    21.1.2014 11:37 dword
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    while((c = getchar()) != '\n' && c != EOF);

    I tohle je workaround? Jestli ano, zajimalo by mne proc.
    martin-ux avatar 21.1.2014 18:57 martin-ux | skóre: 18 | Bratislava
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    ja som reagoval na jakubov priklad scanf() .. jeho priklad nie je zly, luky-ho citacia z man-u je to, co hladal .. tj, ci pouzije
    scanf(" %c", &c); 
    scanf("\n%c, &c); 
    
    je to iste .. workaround ale asi nebolo spravne slovo na to riesenie (kedze man o tom pise).

    aby som to uviedol na spravnu mieru, nemal som pravdu ani s tym DOSovskym getch(); "problem" so vstupnym bufferom je rovnaky a ma i rovnake riesenie.
    ..when you do things right, people won't be sure you've done anything at all..
    18.1.2014 00:36 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: divny vystup u jednoduche kalkulacky v C
    Je to jednoduché prostě to chce vyčistit vstupní buffer před dalším čtením.

    Čili přidat: scanf(" %*s");

    Viz zde kde jsme to řešily: [C] Načtení celých čísel

    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.