Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 16. 02. 2011 16:00

hradecek
Příspěvky: 772
Pozice: Student
Reputace:   25 
Web
 

Prostredné z troch čísel...

Ahoj,
Hľadám algoritmus, ktorý nájde z troch čísel prostredné:
teda ak sú tri čísla x, y, z  a platí y < x < z tak hľadané číslo je x...

Chcel by som to iba s podmienkami, teda žiadne polia alebo vstavané funkcie...
Toto som zatiaľ urobil v C-éčku, nedalo by sa to ešte nejako zjednodušiť ?

Code:

if(c1 > c2) {
    if(c2 > c3)
        printf("%d", c2);
    else if(c1 < c3)
        printf("%d", c1);
    else
        printf("%d", c3);
}
else {
    if(c2 < c3)
        printf("%d", c2);
    else if(c1 > c3)
        printf("%d", c1);
    else
        printf("%d", c3);
}

Netrápte sa nad svojimi problémami s matematikou, môžem vás uistiť, že tie moje sú ešte väčšie. ~~Albert Einstein~~
Jak spozná člověk, že není pitomec ? - Moudrý člověk to nepozná nikdy a blbci je to jedno. ~~Jak přicházejí básnici o iluze~~
Někteří lidi se nikdy nezmění. Anebo se rychle změní a pak se zase rychle změní nazpátek. ~~Homer Simpson~~

Offline

  • (téma jako vyřešené označil(a) hradecek)

#2 16. 02. 2011 16:42

Lumikodlak
Místo: Praha
Příspěvky: 212
Pozice: Programator nebo tak neco :-)
Reputace:   19 
 

Re: Prostredné z troch čísel...

Napada me akorat treba neco v tomto stylu:

Code:

if ((c1 > c2) + (c1 > c3) == 1)
    printf ("%d", c1);
else{
    if ((c2 > c1) + (c2 > c3) == 1)
        printf ("%d", c2);
    else
        printf ("%d", c3);
}

Ale nevim, jestli neco takoveho se ti zda v poradku a jestli je to jednodussi :-)

Offline

 

#3 16. 02. 2011 16:52 — Editoval gladiator01 (16. 02. 2011 17:26)

gladiator01
Místo: Jindřichův Hradec
Příspěvky: 1587
Škola: ZČU FAV - SWI
Pozice: absolvent
Reputace:   53 
Web
 

Re: Prostredné z troch čísel...

↑ hradecek:
A co takto - tedy nevim jestli je to jednoduší.

Code:

    //y < x < z || z < x < y- pros = x
    //x < y < z || z < y < x- pros = y
    //x < z < y || y < z < x- pros = z

    int x=5,y=3,z=2,pros;
    if((y < x && x < z) || (z < x && x < x)) 
        pros=x; 
    else if((x < y && y < z) || (z < y && y < x)) 
        pros=y;
    else if((x < z && z < y) || (y < z && z < x)) 
        pros=z;
    else
    {
       printf("nektere z cisel se rovnaji\n"); 
       pros=0;
    }        
    printf("%i\n",pros);

Naděje jako svíce jas, potěší srdce štvané, čím temnější je noční čas, tím zářivěji plane.
VIVERE - MILITARE EST (Seneca)
Vím, že nic nevím. - Sokrates

Offline

 

#4 16. 02. 2011 21:52

hradecek
Příspěvky: 772
Pozice: Student
Reputace:   25 
Web
 

Re: Prostredné z troch čísel...

↑ Lumikodlak:
Hmmm, toto sa mi celkom páči...
↑ gladiator01:
Toto sa mi tiež dosť páči, a riešiť situáciu že sa 2 rovnajú ma nenapadlo :/...

Vďaka.


Netrápte sa nad svojimi problémami s matematikou, môžem vás uistiť, že tie moje sú ešte väčšie. ~~Albert Einstein~~
Jak spozná člověk, že není pitomec ? - Moudrý člověk to nepozná nikdy a blbci je to jedno. ~~Jak přicházejí básnici o iluze~~
Někteří lidi se nikdy nezmění. Anebo se rychle změní a pak se zase rychle změní nazpátek. ~~Homer Simpson~~

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson