začiatočnícky priklad z jazyka C
vstup - zadaj 3 reálne čisla
výstup - najväčšie z nich je: ...
mam dve riešenia ktoré sú rovnaké len inak sú napísane. Ktoré z nich by ste si vybrali a prečo ? (jedno z nich som napísal ja :-))
(vyjadrite sa len ty ktorý tomu rozumiete)
riešenie 1 #include <stdio.h>
int main()
{
double x, y, z, max;
printf("Zadajte 3 cisla:\n");
scanf("%lf%lf%lf", &x, &y, &z);
if (x > y) {
if (x > z)
max = x;
else
max = z;
}
else {
if (y < z)
max = z;
else
max = y;
}
printf("najvatsie cislo je: %.2lf", max);
return 0;
} riešenie 2 #include <stdio.h>
int main()
{
double x, y, z, max;
printf("Zadajte 3 cisla:\n");
scanf("%lf%lf%lf", &x, &y, &z);
if (x > y && x > z)
max = x;
else
if (y > x && y > z)
max = y;
else
if (z > x && z > y)
max = z;
printf("najvatsie cislo je: %.2lf", max);
return 0;
}
Pre pridávanie komentárov sa musíte prihlásiť.
tommq: Druhé, ale bez tej pravopisnej chyby. Prečo? Už na prvý pohľad je to kratšie, prehľadnejšie a zrozumiteľnejšie.
Proste, treba sa snazit udrziavat kod co najjednoduchsi.
Viem, že je to veľmi stará diskusia, ale nedá mi neukázať začiatočnícký spôsob:
#include <stdio>
int main(void)
{
double a, b, c;
printf("Zadajte 3 cisla:\n");
scanf("%lf%lf%lf",&a,&b,&c);
printf("Najvacsie cislo je: %lg\n", (a > b && a > c) ? a : (b > a && b > c) ? b : c);
return 0;
}
a zajtra ti povedia, ze tych cisel bude 1000000. preto jednoznacne pole...
Vychádzal som zo zadania v prvom príspevku, ale pole tiež nie je problém. ;-)
Navyše som rád, že som to tu našiel, zaujala ma knižnica stdarg.h, ešte som s ňou nerobil.
Samuel - to si robíš srandu? Takto by si to učil? A potom ako by si riešil zápis a čítanie do/zo súboru?
Mimochodom na stredných školách sa učí prevažne Pascal
Neviem ako vám, ale mne správne nefunguje táto časť kódu:
</pre>
Malo by mi to vyhubovať keď zadám iný počet čísiel, ale nepracuje to tak. Hľadal som na nete nejakú radu, ale nenašiel som nič.
oprav na:
Ale to nič nerieši. Skús zadať 4 čísla oddelené medzerou v jednom riadku.