Hirdetés

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

  • sztanozs
    veterán

    Jól sejtem, hogy valami ilyesmi lesz a megoldás? :U


    sztanozs:
    az x db elem és az x 30%-al jöjjön vissza között van valami korreláció, vagy csak véletlenül használtad ugyanazt a 'változót' két külön dologra?
    Véletlen volt. :B

    Példa:
    Van egy zsák, amiben van körte, alma és szilva. Ha belenyúlok a zsákba, akkor véletlenszerűen kapok egy gyümölcsöt. Én azt szeretném, ha belenyúlok, akkor 30% valószínűséggel legyen alma, 50% valószínűséggel körte és 20% valószínűséggel legyen szilva.
    Emiatt gondoltam, hogy felöltöm előre a zsákot és akkor elvileg ezt kapom meg.

    Utólag gondoltam, hogy lehet nem kellene feltölteni. Hanem kérek egy random számot, ez lenne a százalék és ebből adom meg, hogy az alma, szilva vagy körte. Kicsit fordított logika, de a kód sokkal rövidebb lett.

    Csak egy apróság - ha már az erőforrásigény érdekel. Az aláhúzott rész felesleges:
    function getValue() {
    var result = Math.floor(Math.random() * 10) + 1;
    if(result<=3) {
    return 1;
    } else if(result>3 && result<=7) {
    return 2;
    } else {
    return 3;
    }
    }

    document.getElementById('result').value = getValue();

    Amúgy a Math.floor, meg a +1 is felesleges. Ja és nem 7, hanem 8 (30% + 50% = 80%) :D
    function getValue() {
    var result = Math.random();
    if(result<0.3) {
    return 1;
    } else if(result<0.8) {
    return 2;
    } else {
    return 3;
    }
    }

    document.getElementById('result').value = getValue();

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