Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C podmínky

Zdravím, mám tento zdrojový kód:

#include<stdio.h>
int main()      
{
 int a,b;
     printf("zadej první hodnotu: ");
     scanf("/i",&a);
     printf("zadej druhou hodnotu: ");
     scanf("%i",&b);
     if(a>b)
              {
                   printf("\n");
                   printf(" *   *    **\n"); 
                   printf("* *   *   * *\n");
                   printf("* *    *  **\n");
                   printf("***   *   * *\n");
                   printf("* *  *    **\n");  
}
 
    if(a<b)
              {
                   printf("\n");
                   printf("**     *   *\n");
                   printf("* *   *   * *\n");
                   printf("**   *    * *\n");
                   printf("* *   *   ***\n");
                   printf("**     *  * *\n");
}                   
     getchar();getchar();
}

potřeboval bych poradit jak mám udělat aby se podmínky vykonaly až potom co zadám druhou hodnotu.
díky všem za rady .
Změna kategorie, původně: Software (Kurt)

Předmět Autor Datum
Pri čítaní prvého vstupu si uprav /i na %i. A len tak mimochodom, A>B je to isté ako B<A.
los 03.12.2013 22:30
los
sem slepej... díky moc
dental 03.12.2013 22:33
dental
ještě jedna otázka jak mám udělat aby se mi ten program vyresetoval abych mohl zadat další 2 hodnoty…
dental 04.12.2013 14:21
dental
obal to este do cyklu: do..while a bude sa ti vracat na zaciatok napriklad az do vtedy, kym mu nezad…
wam_Spider007 04.12.2013 14:26
wam_Spider007
ehmm jak se to dělá ? :D
dental 04.12.2013 14:27
dental
int main () { do { char k; tvoje prikazy; printf("Chces ukoncit program? (A/N) "); scanf("%s",&k); }…
wam_Spider007 04.12.2013 14:32
wam_Spider007
super :D ale nevím co kterej řádek dělá :D
dental 04.12.2013 14:47
dental
jak to mám zakomponovat do toho svého zdrojáku ?
dental 04.12.2013 14:58
dental
už sem to pochopil díky ... :D
dental 04.12.2013 15:28
dental
potřeboval bych poradit s podmínkou pro toto zadání: "zadej 3 hodnoty a vypiš nejmenší". včem díky z…
dental 16.12.2013 16:48
dental
Nevíš jak porovnat 2 čísla?
Wikan 16.12.2013 16:54
Wikan
3 čísla a aby se vypsalo vždy to nejmenší
dental 16.12.2013 17:00
dental
Porovnávání libovolného počtu čísel se dá rozložit do posloupnosti porovnání 2 čísel.
Wikan 16.12.2013 17:02
Wikan
Mám tento zdroják #include<stdio.h> int main() { int a,b,c; printf("zadej 1 hodnotu: "); scanf("%i"…
dental 16.12.2013 17:05
dental
Když už tak if (a<b && b<c) A co když se ty čísla budou rovnat? Lepší je udělat vyhodnocování hned…
Wikan 16.12.2013 17:13
Wikan
je to uděláný tak že číasla se nikdy rovnat nebudou. chci se zeptat co přesně dělá "&&"
dental 16.12.2013 17:18
dental
Pokiaľ viem znamená to "a zároveň":?:
Rogalo 16.12.2013 17:19
Rogalo
to mi pomohlo ale stále tuje problém že když: if (a<b && b<c) printf("nejmesi hodnota je: %i ",a);…
dental 16.12.2013 18:39
dental
if (a<b && b>c) Dosaď si tam A = 2, B = 3, C = 1. Když už to řešíš přes několik ifů, tak to aspoň dě…
Wikan 16.12.2013 18:45
Wikan
nemůžu tam dat A=2, B=3 C=1 protože když tam zadám nějaký jiný číslo tak to nebude fungovat .
dental 16.12.2013 18:46
dental
Cože?
Wikan 16.12.2013 18:47
Wikan
teď sme se asi nepochopili co si myslel tím dosazení co mám kam dosadit ?
dental 16.12.2013 18:53
dental
Do té podmínky, kterou jsem tam napsal.
Wikan 16.12.2013 18:54
Wikan
udělá to toto:
dental 16.12.2013 18:58
dental
Já vím, co to udělá. Dosaď si ty čísla ručně na papír. Pokud tě to ani potom netrkne, tak už nevím.
Wikan 16.12.2013 19:00
Wikan
vypsal sem si ty kombinace těch čísel... ke každýmu sem si napsal podmínku. ale utoho "c" (třetí čís…
dental 16.12.2013 19:03
dental
Ach jo. if (a<b && b>c) Dosaď si tam A = 2, B = 3, C = 1. 2 < 3 && 3 > 1
Wikan 16.12.2013 19:06
Wikan
vždyť tak to mám v tý druhý podmínce, takže se mi vypíše is tím "C".
dental 16.12.2013 19:10
dental
V té druhé podmínce se vypíše A.
Wikan 16.12.2013 19:12
Wikan
ano to je ok ale když toto "a<b && b>c" dosadím do 5 podminky tak se mi vypíše 5 a 2 podminka
dental 16.12.2013 19:14
dental
můžeš to prosímtě napsat jako pro blbečla ?
dental 16.12.2013 19:17
dental
Potřebuješ pouze 3 ify (případně 2, pokud použiješ i else), ale musí být správně napsané. Ty tvoje n…
Wikan 16.12.2013 19:24
Wikan
musí být nejmenší
dental 16.12.2013 19:34
dental
Tak jinak. Předpokládejme, že nejmenší je číslo B. Jakou musí mít vlastnost ve vztahu k A a jakou ve…
Wikan 16.12.2013 19:52
Wikan
b<a b<c
dental 16.12.2013 19:55
dental
A teď se podívej na svůj kód. Máš tam někde tuhle podmínku?
Wikan 16.12.2013 19:58
Wikan
asi to mám... díky za tvůj čas poslední
dental 16.12.2013 20:07
dental
To je jedno, kolik čísel. Porovnáš první dvě, nižší si poznamenáš. S tím pak porovnáš třetí, opět si…
L-Core 16.12.2013 17:08
L-Core

Mám tento zdroják

#include<stdio.h>
int main()
{
    int a,b,c;
        printf("zadej 1 hodnotu: ");
        scanf("%i",&a);
        printf("zadej 2 hodnotu: ");
        scanf("%i",&b);    
        printf("zadej 3 hodnotu: ");
        scanf("%i",&c);
         
            if (a<b,b<c) printf("nejmesi hodnota je: %i   ",a);
          
            if (a<b,b>c) printf("nejmensi hodnota je: %i   ",a);
            
            if (b<a,a<c) printf("nejmensi hodnota je: %i   ",c);
            
            if (b<a,a>c) printf("nejmensi hodnota je: %i   ",a);

            if (c<a,a>b) printf("nejmensi hodnota je: %i   ",a);

            if (c<a,a<b) printf("nejmensi hodnota je: %i   ",a);   
        getchar();getchar();            
    
    }

ale nedělá to to co bych chtěl .
jak bych to mohl upravit ?

to mi pomohlo ale stále tuje problém že když:

if (a<b && b<c) printf("nejmesi hodnota je: %i ",a);

if (a<b && b>c) printf("nejmensi hodnota je: %i ",a);

if (b<a && a<c) printf("nejmensi hodnota je: %i ",b);

if (b<a && c<a) printf("nejmensi hodnota je: %i ",b);

if (c<a && a<b) printf("nejmensi hodnota je: %i ",c);

if (c<a && a>b) printf("nejmensi hodnota je: %i ",c);
to má vypsat proměnou C tak to vpíše A

To je jedno, kolik čísel. Porovnáš první dvě, nižší si poznamenáš. S tím pak porovnáš třetí, opět si poznamenáš to nižší (buď to bude stejné - nebo přepíšeš původní "zapamatování"). A tak můžeš pokračovat furt pryč. Udělej si na to "programově čistý" cyklus (pro 3 čísla je to na hraně rentability, vím).

Céčko neznám. Ve Fortranu bych to před sto lety napsat uměl.

edit: Wikan mě předběhl

Zpět do poradny Odpovědět na původní otázku Nahoru