abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

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

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 3
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

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

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

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

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 729 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: getchar v programu?

    8.1.2020 21:20 Dooyer
    getchar v programu?
    Přečteno: 425×
    case 1:
    	getchar();
    	printf("Zadejte obsah nebo objem:");
    		gets(vyber);
    		if (!strcmp(vyber, "obsah"))	{	
    		printf("Napis delku stranu: ");
    		scanf("%f",&num1);
    			if (num1 > 0){
       			double result = pow(num1,3);
     			printf("Vysledek: %lf\n", result);
         	   	 }
        		else{
    			printf("Chybne zadana strana");
    		}
    	}
    	
    		else if (!strcmp(vyber, "objem")){	
    		printf("\nNapis delku stranu: ");
    		scanf("%f%f%f",&num1,&num2,&num3);
           		if (num1 > 0 && num2 >0 && num3 >0){
           		double result = num1*num2*num3;
           		 printf("Vysledek: %lf\n", result);
               		 }
    			else{
    			printf("Chybne zadana strana");
    				}
    			}
    		else{
    		printf("Chybne zadany vyber!");}
    	break;
    Chci se zeptat proč bez getchar(); to nefunguje a po vypsání ,,Zadejte obsah nebo objem,, vyhodí chybný výběr? přece to má napsat ,,Zadejte obsah nebo objem,, a nechat mě to něco napsat a pak načíst do řetězce pomocí gets ne?

    PS: je to jen část kodu zbytek sem neposlal zajímá mě jen tohle chyba je jen tu

    Odpovědi

    8.1.2020 21:39 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: getchar v programu?
    V buffri pre stdin niečo je a ten getchar() to odtiaľ vyberie.

    Tipol by som, že to niečo, je znak nového riadku, z nejakého predchádzajúceho vstupu. Resp. niečo čo predchádzajúce čítanie vstupu neprečítalo.

    Navrhujem zistiť, čo ten getchar() vráti.
    Jendа avatar 8.1.2020 21:48 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: getchar v programu?
    Tak si obsah vyber vypiš, ne? A to buď pomocí printf, nebo „jako profík“ se nauč používat debugger, nastavt breakpoint za to gets a nech si tu proměnnou zobrazit.
    Gréta avatar 9.1.2020 17:03 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: getchar v programu?

    taky zdroják jako profík formátuj se ty závorky nedaj skoro číst jak jsou jako pořád jněkde jinde. jsem to u sebe lechce přeformátovala ;D

    a jestli chceš bejt jednou jako bohatej profík tak používej misto tabulátoru mezery hele ;D

    jakej používáš editor nebo IDE na psaní zdrojáčků??

    case 1:
        getchar();
        printf("Zadejte obsah nebo objem:");
        gets ( vyber );
        if ( !strcmp ( vyber, "obsah" ) )
        {
            printf ( "Napis delku stranu: " );
            scanf ( "%f",&num1 );
            if ( num1 > 0 ) {
                double result = pow ( num1,3 );
                printf ( "Vysledek: %lf\n", result );
            } else {
                printf ( "Chybne zadana strana" );
            }
        }
        else if (!strcmp(vyber, "objem"))
        {
            printf ( "\nNapis delku stranu: " );
            scanf ( "%f%f%f",&num1,&num2,&num3 );
            if ( num1 > 0 && num2 >0 && num3 >0 ) {
                double result = num1*num2*num3;
                printf ( "Vysledek: %lf\n", result );
            } else {
                printf ( "Chybne zadana strana" );
            }
        }
        else
        {
        printf("Chybne zadany vyber!");
        }
        break;
    
    Jendа avatar 9.1.2020 21:09 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: getchar v programu?
    a jestli chceš bejt jednou jako bohatej profík tak používej misto tabulátoru mezery hele ;D
    Já používám mezery proto, protože se mi zaboha nepodařilo donutit vim, aby do terminálu vypisoval taby (a to ještě s šířkou 2) -- konvertuje to na mezery, takže když to potom zkopíruju a pastnu, tak jsou to mezery a pak mám mix tabů a mezer. Když je to někde striktní, tak před commitem mezery za taby nahrazuju.
    10.1.2020 08:42 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: getchar v programu?
    a jestli chceš bejt jednou jako bohatej profík tak používej misto tabulátoru mezery
    To ma ranilo :-(
    Gréta avatar 11.1.2020 12:24 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: getchar v programu?

    se asi neschodnem jestli jsou jako lepší mezery nebo taby :D :D si ale myslim že se snad schodnem žeby se to nemělo zbytečně moc míchat vzlášť když ten zdrojáček jako chceme někde ukazovat ;D

    Jendа avatar 11.1.2020 12:30 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: getchar v programu?
    No každopádně jsem článek ukázal v práci a všichni přešli na mezery.
    Gréta avatar 11.1.2020 12:46 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: getchar v programu?
    8.1.2020 22:02 debian+
    Rozbalit Rozbalit vše Re: getchar v programu?
    Zalezi od programu pred. Spravne nema tam byt getchar.

    A miesto gets() pouzi fgets().

    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.