Hirdetés
- V.Milán: Lapdiffúzor nyomáseloszlása: gondoltad volna?
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Luck Dragon: Asszociációs játék. :)
- GoodSpeed: Nem vénnek való vidék - Berettyóújfalu
- sziku69: Fűzzük össze a szavakat :)
- GoodSpeed: Ebes, a megtervezett falu!
- sziku69: Szólánc.
- gban: Ingyen kellene, de tegnapra
- Brogyi: CTEK akkumulátor töltő és másolatai
- Carmageddon 2
Új hozzászólás Aktív témák
-
válasz
#36268800
#5230
üzenetére
"A kérdésem az volna ezzel kapcsolatban, hogy mi a különbség az egyszerű "if" és az "else-if" között?"
Az, hogy sima if-eknél (megfelelő feltételek esetén) a program akár az összes if-be belemehet, if-else-eknél viszont legfeljebb csak egybe. Neked itt pont az else-if kell, mert egymást kölcsönösen kizáró feltételeid vannak.
"Esetleg valamelyik gyorsabban lefut?"
Ez is benne van, ha if-else-eknél belemegy valamelyik ágba, akkor utána a komplett blokk végére ugrik, nem nézi meg a többi feltételt. Mondjuk ez olyan különbség, ami tipikusan olyan kicsi, hogy mérések sem mutatják ki.
"A Microsoft Visual Studio-t használom, hol találom benne a program gyorsaságát?"
VS 2013-ban van profiler, de őszintén szólva nem hiszem, hogy jelenleg neked erre bármi szükséged lenne. Az ekkora programok futási ideje bőven mérési hibán belül van.
"Mi a véleményetek a kódom tagoltságáról?"
Így azért jóval olvashatóbb (ez az else-if szokásos írásmódja):
int main(void)
{
float num1, num2;
printf("Enter two numbers\nFirst: "); scanf("%f", &num1);
printf("Second: "); scanf("%f", &num2);
if (num1 == num2)
{
printf("They are equal: %f = %f", num1, num2);
}
else if (num1 > num2)
{
printf("They are not equal, %f > %f", num1, num2);
}
else
{
printf("They are not equal, %f < %f", num1, num2);
}
getch();
return 0;
}Ezen túlmenően ekkora kódnál azért különösebb tagoltságról nem lehet beszélni

ÁLtalános megjegyzésként még annyi, hogy lebegőpontos számoknál a == csak nagyon korlátozottan használható (itt mondjuk pont igen), mert ott a kerekítési hibák miatt előfordulhat, hogy két érték, aminek elméletben azonosnak kellene lennie, mégsem lesz pont ugyanannyi.
-
válasz
#36268800
#5230
üzenetére
Az else ág csak akkor hajtódik végre, ha az if-ben szereplő állítás hamis volt. Mivel itt egymást kizáró feltételek vannak, lehet külön is írni az if-eket, mindig csak egy lesz igaz, így mindkét esetben azt csinálja a program, amit szeretnénk, de az if-else megoldás a jobb (nem vizsgáljuk mindig mind a három feltételt feleslegesen).
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- SnowRunner
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Kormányok / autós szimulátorok topikja
- Milyen egeret válasszak?
- Pánik a memóriapiacon
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- V.Milán: Lapdiffúzor nyomáseloszlása: gondoltad volna?
- PlayStation 5
- Sütés, főzés és konyhai praktikák
- További aktív témák...
- NVIDIA Quadro P5000 GPU 16GB GDDR5X memóriával
- Microsoft Surface Laptop 4 13.5" i7-1185G7 16GB 512GB 1 év garancia
- Gamer szék ASUS ROG Destrier Ergo SL400
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 12 Pro Max 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3940, 100% Akku
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


