NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Proc to nejde?

V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
dfdfdf
Člen
Avatar
dfdfdf:6.11.2016 14:57

Dobry den.Proc tento program nespravne funguje?

Editováno 6.11.2016 14:58
 
Odpovědět
6.11.2016 14:57
Avatar
DarkCoder
Člen
Avatar
Odpovídá na dfdfdf
DarkCoder:6.11.2016 15:53

Důvod proč to nefunguje je ten, že výrazy v podmíněném příkazu se vyhodnocují postupně. Výsledkem porovnání dvou výrazů je logická 1 nebo 0. Tu chybně porovnáváš s hodnotou která taková není.

Pro načtení celočíselné proměnné se nepoužívá formátování %g, ale %d nebo %i.

Na závěr dvě rady:

  1. Závorkuj
  2. Dodržuj štábní kulturu podmíněných příkazů IF-ELSE
Nahoru Odpovědět
6.11.2016 15:53
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Odpovídá na DarkCoder
Neaktivní uživatel:6.11.2016 16:06

Takže takhle nějak...

#include <stdio.h>

int main(void)
{
        int a, b, c, d;


        printf("a =", &a);
        scanf("%d", &a);

        printf("b =", &b);
        scanf("%d", &b);

        printf("c =", &c);
        scanf("%d", &c);

        printf("d =", &d);
        scanf("%d", &d);

        if ((d - c == c - b) && (c - b == b - a))
                printf("Aritmeticka posloupnost");
        else if ((d / c == c / b) && ( c / b == b / a))
                printf("Geometricka posloupnost");
        else
                printf("Ani jedno");
        return 0;
}
Nahoru Odpovědět
6.11.2016 16:06
Neaktivní uživatelský účet
Avatar
dfdfdf
Člen
Avatar
Odpovídá na DarkCoder
dfdfdf:6.11.2016 16:10

nepochopil jsem jak to upravit

 
Nahoru Odpovědět
6.11.2016 16:10
Avatar
Odpovídá na dfdfdf
Neaktivní uživatel:6.11.2016 16:12

Eh...Proto jsem přiložil svůj kód...

Nahoru Odpovědět
6.11.2016 16:12
Neaktivní uživatelský účet
Avatar
dfdfdf
Člen
Avatar
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.