[ARHIIV] mängumeistrid
Pole sisse logitud. [Logi sisse ]
Mine lehekülje algusesse
Prinditav versioon | Telli teema e-mailile | Lisa lemmikutesse  
Aritmeetika: n booleanist ühe tehtega mingi üldistus
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 9.4.2011 17:45 Tsiteeri
Aritmeetika: n booleanist ühe tehtega mingi üldistus



On näiteks 20 muutujat, igaühe väärtus on kas 0 või 1.

On vaja arvutada uus muutuja "vastus", mis on 1 kui ükskõik milline neist 20st on 1. Ja 0 kui kõik 20 on 0.

Konks on selles, et if-e ei saa kasutada, sest see kõik toimub SPSS statistikaprogrammis, mis ei ole normaalne programmeerimiskeskkond, ja ma ei oska :)

Kasutada saab:
round(x, [vali täpsus default on 1])
abs(x)
+, -, *, /, sqrt(x)
saab arve lisada avaldisse.
Vajalik muutujate arv (20) on enne teada. Ehk n muutuja korral saab n-i kasutada avaldises.

Kahe booleaniga on lihtne:

vastus = round((muutuja1 + muutuja2) / 2)

Kuidas saaks sama asja mingi suure arvu muutujatega kätte? Põhikooli matemaatika põhimõtteliselt.

Lamps and Megarace - multiplayer strateegia

You've got the boomin' system But it's blasting out doo-doo
You think it's chocolate milk But it's watered down yoo-hoo
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
normann
Level 15
Avatar

Liitunud: 28.4.2006
Postitusi: 1528
[EEMAL]




postitati 9.4.2011 18:15 Tsiteeri


vastus = round((muutuja1 + muutuja2 + muutuja3 + muutuja4) / 4)

?

Vaata kasutaja profiili Saada kasutajale e-mail Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 9.4.2011 19:21 Tsiteeri


Kui muutuja1 = 1 ja muutuja2, muutuja3, muutuja4 = 0 siis tuleb 0, kuigi peaks 1 tulema. Aga nice try
Lamps and Megarace - multiplayer strateegia

You've got the boomin' system But it's blasting out doo-doo
You think it's chocolate milk But it's watered down yoo-hoo
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jnt
Veebiguru
Avatar

Liitunud: 3.2.2005
Postitusi: 731
[EEMAL]




postitati 9.4.2011 20:59 Tsiteeri


aga tee round asemel ceil. ;)
GigAHerZ Web - http://jnt.pri.ee/
Banner Exchange - http://be.jnt.pri.ee/
Mission Possible - http://web.zone.ee/mispos/
Black Nova Traders - http://bnt.jnt.pri.ee/
Aktsioon I: jnt
Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum
normann
Level 15
Avatar

Liitunud: 28.4.2006
Postitusi: 1528
[EEMAL]




postitati 9.4.2011 22:44 Tsiteeri


Tsitaat:

(9:24:24 PM)
Norman: ceil() kasutades ei tuleks õige?
Mihkel: ceili ei ole
Mihkel: round on

Vaata kasutaja profiili Saada kasutajale e-mail Otsi kasutaja postitusi Saada privaatsõnum
Kampsinussu
Level 2


Liitunud: 4.9.2006
Postitusi: 23
[EEMAL]




postitati 10.4.2011 00:11 Tsiteeri


Arvestades, et n=20 korral (muutuja[1] + muutuja[2] + ... + muutuja[n]) / 20 on vahemikus 0.05..1, kui vähemalt üks on 1 (ning 0 ainult siis kui kõik on nullid), siis peaks sobima selline variant:

vastus = round(0.49 + (muutuja[1] + muutuja[2] + ... + muutuja[n]) / 20)

kui aritm. keskmine on 0, siis round(0.49) peaks üldiste ümardamiste reeglite järgi 0 olema, samas, kui vähemalt üks muutujatest on 1, siis 0.49 + 0.05 ehk round(0.54) on 1, sama ka siis kui kõik on 1-d: 0.49 + 1 ehk round(1.49) peaks ka veel edukalt 1 andma.

Kuigi see on ikkagi suht tüütu variant (eriti kui n on teadmata).

Ok.. if-i ei ole, aga äkki on võimalik mingit IIF-i varianti kasutada? midagi stiilis:

IIF(SUM(muutuja[1] + ... + muutuja[n]) > 0, 1, 0)

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jnt
Veebiguru
Avatar

Liitunud: 3.2.2005
Postitusi: 731
[EEMAL]




postitati 10.4.2011 08:59 Tsiteeri


Jup, mõtlesin ka just 0,49 liitmist... ;) Proovi.
GigAHerZ Web - http://jnt.pri.ee/
Banner Exchange - http://be.jnt.pri.ee/
Mission Possible - http://web.zone.ee/mispos/
Black Nova Traders - http://bnt.jnt.pri.ee/
Aktsioon I: jnt
Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 10.4.2011 09:58 Tsiteeri


Tänud, 0.49 liitmine peaks suht ideaalselt töötama! See 20 on pigem ülemine piir muutujate arvus.
Lamps and Megarace - multiplayer strateegia

You've got the boomin' system But it's blasting out doo-doo
You think it's chocolate milk But it's watered down yoo-hoo
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
jnt
Veebiguru
Avatar

Liitunud: 3.2.2005
Postitusi: 731
[EEMAL]




postitati 10.4.2011 12:08 Tsiteeri


kui sul bool'id jmt mängus, kas sul seal OR tehet ple võimalik teha? paned mingi:
var=a1 OR a2 OR a3 OR... ja peaks tulema vastuseks 1, kui vähemalt üks neist on true.

GigAHerZ Web - http://jnt.pri.ee/
Banner Exchange - http://be.jnt.pri.ee/
Mission Possible - http://web.zone.ee/mispos/
Black Nova Traders - http://bnt.jnt.pri.ee/
Aktsioon I: jnt
Vaata kasutaja profiili Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum
batoonike



Liitunud: 2.4.2005
Postitusi: 378
[EEMAL]




postitati 10.4.2011 12:24 Tsiteeri


Nope... Muidugi ei ole tegelikult tegu nii debiilse programmiga ja ma vist leidsin õige koha üles, kus selliseid probleeme lahendada tuleks.
Lamps and Megarace - multiplayer strateegia

You've got the boomin' system But it's blasting out doo-doo
You think it's chocolate milk But it's watered down yoo-hoo
Aktsioon III: batoonike<br>Kambakas II: batoonike, whitepower1, tenno11
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum

Hetkel loevad seda teemat:
Mitte ühtegi - 1 külaline

Mine lehekülje lõppu





Foorumi algbaas põhineb XMB mootoril, modifitseeritud Valter Pundi poolt
Kodulehekülg on tehtud Valter Pundi poolt vpundi ät gmail punkt komm