hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.27. 22:14



Jelenlévő felhasználók

Jelenleg 536 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 535 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 6 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: C++ Alapok (3.) - Feltételek(if)
HozzászólásElküldve: 2016.09.11. 18:30 
Offline
SM Fejlesztő
Avatar

Csatlakozott: 2012.10.18. 15:58
Hozzászólások: 2486
Megköszönt másnak: 28 alkalommal
Megköszönték neki: 132 alkalommal
C++ Alapok (3.) - Feltételek(if)

Elsősorban nem is nevezném el szivem szerint annak, aminek elneveztem, hisz a programnyelvek 97.1%-ában (google), ugyan igy működik.
Azonban ez kezdőknek szól, igyhát vágjunk bele, lesz akinek unalmas lesz, s lesz akinek igenis hasznos. (Ismétlés a tudás...)

IFEK MŰKÖDÉSE
Minden feltétel az alábbi módon épül fel.

  1. if(kifejezés) {
  2.     //TODO
  3.         return 1;
  4. }


Ez most lehet hülyeségnek látszik, de igazából nem az.

Ahhoz hogy magát a feltételt megértsük, meg kell ismerkednünk az operátorokkal is.
► Spoiler mutatása


Ezeket úgy kell tudni használni, hogy biztosan eltudjuk dönteni a feltétel kifejezéséről, hogy igaz vagy hamis (0 vagy 1, mert az alapján dolgozik az egész c++)

Igy már érthetőbb lesz szerintem:

  1. if(11 != 12)
  2. {
  3.        return 0;
  4. }


Ez egy eldönthető feltétel, hisz nincs az az ország, vallás, hit, földrész, bolygó ahol 11 egyenlő lenne 12-vel.

Egy konkrét példa:

  1. int main() {
  2.     int a=3,b=3;
  3.     if(a == b)
  4.     {
  5.         cout<<"a = b"; //végre is hajtódik, hisz 'a' értéke 3 csakúgy mint a 'b'-nek.
  6.     }
  7. }


ELSE ÁG

Minden feltételnek létezik egy else ága ami akkor hivódik meg, ha a feltétel nem igaz.
Ezt a program nem szigoritja ránk, hogy kötelező legyen megadni, igy kihagyható, de csak abban az esetben ha te nem akarsz csinálni semmit ha a feltétel nem igaz.

Konkrét példa:

  1. int main() {
  2.     int a=3,b=4;
  3.     if(a > b) {
  4.         cout<<"a > b";
  5.     }
  6.     else {
  7.         cout<<"a < b";
  8.     }
  9. }


Ez eddig működőképes, de még van egy olyan eshetőség, ha a mi példánkat vesszük, hogy az 'a' és a 'b' egyenlő.
Ezt az alábbiak kombinálásával meg lehet valósitani.

Konkrét kód:

  1. int main() {
  2.     int a=3,b=3;
  3.     if(a > b) {
  4.         cout<<"a > b"; /* HA 'a' NAGYOBB MINT 'b' -> Nem fog lefutni. */
  5.     }
  6.     else if(a < b) {
  7.         cout<<"a < b"; /* HA 'a' KISEBB MINT 'b' -> Nem fog lefutni esetünkben. */
  8.     }
  9.     else {
  10.         cout<<"a = b"; /* EGY VARIÁCIÓ MARADT. -> HA 'a' EGYENLŐ 'b' -VEL  => LE FOG FUTNI! */
  11.     }
  12. }


Maxi

_________________
www.akosvagyok.hu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: C++ Alapok (3.) - Feltételek(if)
HozzászólásElküldve: 2016.09.14. 21:40 
Offline
Nagyúr

Csatlakozott: 2016.03.03. 17:37
Hozzászólások: 530
Megköszönt másnak: 4 alkalommal
Megköszönték neki: 65 alkalommal
Lehet nem ehez a részhez tartozik, viszont lenne egy kérdésem.
Van tegyük fel egy számológépes részem.
Beírom a 2 számot, stb.... és miután kiszámolta azt szeretném, hogy ne zárodjon be hanem térjen vissza, és írhassak még 2 számot.


Kód:
Kód:
#include <stdio.h>
#include <conio.h>
main()
{
int a,b
printf("Irj be 2 szamot:");
scanf("%d",&a");
scanf("%d",&b");
printf("%d + %d = %d", a,b,a+b);
getch();

És itt térjen vissza az elejére, vagyis ne zárja be, hanem kérjen új számot.

_________________
DeteCT0R írta:
Van egy kis baj a pluginnal :DEs orulnek ha a kockak megneznek egy csepet:D

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: C++ Alapok (3.) - Feltételek(if)
HozzászólásElküldve: 2016.09.14. 22:11 
Offline
SM Fejlesztő
Avatar

Csatlakozott: 2012.10.18. 15:58
Hozzászólások: 2486
Megköszönt másnak: 28 alkalommal
Megköszönték neki: 132 alkalommal
  1. int a[2];
  2. for(int i=0; i<2; i++) {
  3.     /*
  4.         0-1
  5.         1-2
  6.     */
  7.     cout<<"Irj be egy szamot."<<endl;
  8.     cin>>a[i];
  9. }
  10. for(int k=0; k<2; k++) {
  11.     cout<<a[k]<<endl;
  12. }

_________________
www.akosvagyok.hu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: C++ Alapok (3.) - Feltételek(if)
HozzászólásElküldve: 2016.09.16. 20:07 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
  1. int main() {
  2.     int a=3,b=3;
  3.     if(a == b)
  4.     {
  5.         cout<<"a = b"; //végre is hajtódik, hisz 'a' értéke 3 csakúgy mint a 'b'-nek.
  6.     }
  7. }

Ez nem helyes. Itt csak értéket adsz és nem összehasonlítod.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: C++ Alapok (3.) - Feltételek(if)
HozzászólásElküldve: 2016.09.17. 09:14 
Offline
Nagyúr
Avatar

Csatlakozott: 2014.08.24. 18:28
Hozzászólások: 584
Megköszönt másnak: 122 alkalommal
Megköszönték neki: 120 alkalommal
Kicsit vicces, hogy a SmallC [GYK:Pawn] fórumon a CPP-t az alapok alapjától kell tanítani. :D


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: C++ Alapok (3.) - Feltételek(if)
HozzászólásElküldve: 2016.09.17. 11:42 
Offline
SM Fejlesztő
Avatar

Csatlakozott: 2012.10.18. 15:58
Hozzászólások: 2486
Megköszönt másnak: 28 alkalommal
Megköszönték neki: 132 alkalommal
Látod, hogy azt kell. Kedves előtted lévő sem jól mutat rá dolgokra.
LyleChriss írta:
Kicsit vicces, hogy a SmallC [GYK:Pawn] fórumon a CPP-t az alapok alapjától kell tanítani. :D

_________________
www.akosvagyok.hu


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 6 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole