Keresés

Új hozzászólás Aktív témák

  • kingabo

    őstag

    válasz zsambek #5514 üzenetére

    "...ha 10 lenne, akkor 5 / 10, akkor 5-t kapok? Ha pedig 10.0, akkor 0,5-t kapok..."
    Erre azt tudom javasolni, hogy használd a vs debuggerét! Saját tapasztalatból tudom, hogy sokat tud segíteni nemcsak a hibák feltárásában, de akár a fenti kérdések megválaszolásában. Sőt, sokszor a miértekre is könnyen rá tudsz jönni.
    Az Immediate Window-t is ajánlom, ahol futási időben tudsz utasításokat kiadni és megkapod az eredményt egyből. Sajnos Linq-el nem működik (vs2010-ig biztosan)

  • Karma

    félisten

    válasz zsambek #5514 üzenetére

    1) double-ről intre alakításnál alapvetően ugyanaz a cast és a Convert. Stringnél például már más a helyzet, a sima cast érvénytelen lenne.
    2)-3) Összekevertél két dolgot, de akkor inkább végigmegyek a műveleteken.

    A maradékos osztás (jele: / ), egész számok között működik. Tehát ha egy osztás mindkét oldalán egész számok vannak, az eredmény is egy egész szám lesz.

    Például:
    25 / 5 = 5, 20 / 5 = 4, viszont 19 / 3 = 6 (elveszett az 1 maradék!), és így logikusan 5 / 10 = 0.

    Ha az osztás bármelyik fele valós szám, akkor valós osztásra vált a nyelv.
    25 / 5.0 = 5.0, 20.0 / 5 = 4.0, 19.0 / 3 = 6.333333, 5 / 10.0 = 0.5

    A maradékképzés operátor (%) egészek között működik, és a második osztályos osztásból a maradékot adja vissza.
    25 % 5 = 0, 20 % 5 = 0, 19 % 3 = 1, 5 % 10 = 5

    Ennek az egésznek semmi köze a Math.Ceilinghez.
    Az egy felső egészrész függvény, és pont úgy viselkedik, mint ahogy eredetileg leírtam. Sajnos a fórumon nem tudok ilyen félszögletes zárójeleket írni.

    4) Az egész számokat jól vezetted végig, ez a lényeg.

    50.5-öt akkor kapsz, ha az osztó vagy az osztandó valós. Ezt elérheted a 10.0-val is, meg akkor is, ha egy double változóba teszed az osztandót előtte. És akkor nyilván nem működik a kitalált gondolatmenetem, hiszen amint visszaszorzód tízzel, megint 505 az érték :)

    Az integer természetesen nem tud tizedesjegyeket kezelni, hiszen definíció szerint egész szám :)

Új hozzászólás Aktív témák