Page 1 of 1

Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 4:32 pm
by Jani
Yritänpä taas.

Tarkoituksena olisi siis tehdä mahdollisimman monikäyttöinen funktio.

"Sääntöinä" on:
Kieli CoolBasic
Kisa loppuu 24.1 lauantaina.

Palkintona onnittelut ja jos joku tahtoo, niin voi tehdä kuvan.
Yritän oman kuvan saada valmiiksi. (Poistin sen vahingossa)

EDIT:
otto90x: Kyllä. Eli yhdellä funktiolla voi tehdä montaa eri asiaa.

EDIT: voit valita temu92 tai CCE:n kuvan palkinnoksi.
Edit No nyt sain omankin kuvan valmiiksi. Alempana.

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 4:46 pm
by otto90x
Tarkoitatko monikäyttöisellä sellaista äärimmäisen yleiskäyttöistä esim. laskuoperaattorit vai jotain mille on mahdollisimman paljon eri käyttötarkoituksia eli tekee eri parametreillä aivan eri juttuja?

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 5:27 pm
by temu92

Code: Select all

function superfunkkari(str$, x, y, r, g b)
	color r, g, b
	text x, y, str$
endfunction
Tää on monikäyttönen :P

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 5:34 pm
by Character
Palauttaa suurimman kolmesta:

Code: Select all

Function Max3(m1,m2,m3)
    Biggest1=Max(m1,m2)
    Biggest2=Max(Biggest1,m3)
    Return Biggest2
End Function
:lol:

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 5:35 pm
by Koodiapina

Code: Select all

lol("telnet ascii-wm.net 2006")

function lol(wut$)
  execute wut
endfunction
Funktio on todella monikäyttöinen. Sillä voi katsoa vaikkapa jalkapalloa ASCII:na, kuten esimerkistä näkyy B)

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 6:48 pm
by CCE
Tässäpä monikäyttöinen ja helppokäyttöinen funktio, se tarjoilee viihdykettä jopa 531(kliinisesti testattu) kertaa enemmän kuin muut funktiot markkinoilla. Selkeä koodiasu, ja yleishyödyllinen toimintaperiaate mahdollistavat ennennäkemättömän tyydyttävän ja yhteiskunnallisia arvoja kasvattavan funktiointielämyksen! Kokeile!

Code: Select all

 Amuse(1)
Function Amuse(_yes=1)
taikasana$ = "o{{wA665jvt6"
For i=1 To Len(taikasana$)
_n$= StrInsert(_n$,i, Chr(Asc(Mid(taikasana$,i,1))-(Abs(Crc32("media/cow.bmp")) Shr 26)+(3 Shl 1)-Int(Right(taikasana$,1))) ) : Next i
If _yes Then Execute Left(_n$,7)+Chr(120)+Chr(107)+Chr(99)+Chr(25 Shl 2)+Right(_n$,5)+Rand((((Asc(Right(taikasana$,2)))*5)-Asc(Str(1))))
EndFunction

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 7:09 pm
by Jani
CCE wrote:Tässäpä monikäyttöinen ja helppokäyttöinen funktio, se tarjoilee viihdykettä jopa 531(kliinisesti testattu) kertaa enemmän kuin muut funktiot markkinoilla. Selkeä koodiasu, ja yleishyödyllinen toimintaperiaate mahdollistavat ennennäkemättömän tyydyttävän ja yhteiskunnallisia arvoja kasvattavan funktiointielämyksen! Kokeile!

Code: Select all

 Amuse(1)
Function Amuse(_yes=1)
taikasana$ = "o{{wA665jvt6"
For i=1 To Len(taikasana$)
_n$= StrInsert(_n$,i, Chr(Asc(Mid(taikasana$,i,1))-(Abs(Crc32("media/cow.bmp")) Shr 26)+(3 Shl 1)-Int(Right(taikasana$,1))) ) : Next i
If _yes Then Execute Left(_n$,7)+Chr(120)+Chr(107)+Chr(99)+Chr(25 Shl 2)+Right(_n$,5)+Rand((((Asc(Right(taikasana$,2)))*5)-Asc(Str(1))))
EndFunction
Pakko kommentoida. Hauskoja juttuja kyllä, mutta ettäkö selkeä koodiasu?

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 7:51 pm
by CCE
Teinpä voittajalle annettavan bannerin: Image

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 8:19 pm
by temu92
Minä myös tein voittajalle annettavan bannerin: Image

Nimimerkillä tylsistynyt.

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 9:00 pm
by Jani
Sain oman kuvan valmiiksi :)

Image

Liian yksinkertainen... Voittaja valitsee ;)

EDIT: vähän isompi:
Image

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 9:28 pm
by nevssons
Yksinkertaisesti monikäyttöisin functio:

Code: Select all

Function Lasku(num,p1,p2=0)
  Select num
    Case 1
      Return RoundUp(p1)
    Case 2
      Return RoundDown(p1)
    Case 3
      Return Abs(p1)  
    Case 4
      Return Sin(p1)
    Case 5
      Return Cos(p1)
    Case 6
      Return Rnd(p1,p2) 
    Case 7
      Return Rand(p1,p2)
    Case 8
      Return Min(p1,p2)
    Case 9
      Return Max(p1,p2)
    Case 10
      Return GetAngle2(p1,p2)
    End Select 
EndFunction 
Siinä on 10 functiota yhdessä!

parametrit:
num: mikä functio
1=RoundUp()
2=RoundDown()
3=Abs()
4=Sin()
5=Cos()
6=Rnd()
7=Rand()
8=Min()
9=Max
10=Getangle2()
p1,p2: parametrit. Toista parametriä tarvitsee vain viidessä viimeisessä functiossa.

Voitto on minun? :mrgreen:

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 9:39 pm
by Jani
ei... Ei ainakaan vielä.
Mietis nyt vähän. Kisa-aikaa on vielä viikko.

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 9:41 pm
by Olwi
Jani wrote:Sain oman kuvan valmiiksi :)
Even most epic

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 10:09 pm
by TheDuck
Jotta tätä kisaa ei pilattaisi kaikkien muiden turhilla ja pikaisesti hutaistuilla funktioilla, on aika tuoda esiin tekemäni ällistyttävä ja maailmanhistorian mullistava funktio MakeGame() tuhansien uteliaitten ihmisten ulottuville. Pelientekoko muka vaikeaa? MakeGame funktiolla saa tällä hetkellä tehtyä 4 erityylistä klassista CoolBasic-peliä.

Jotta yleisö ei kyllästyisi turhiin jaaritteluihin ja kymmeniä rivejä pitkiin monologeihin, niin tässä se on, maailmanhistorian mullistava ja silmät päästä pudottava, kerta kaikkiaan ällistyttävä funktio, MakeGame():

Code: Select all

//0 = räiskintäpeli
//1 = autopeli
//2 = action-peli
//3 = älypeli
Function MakeGame(id)
    Select id
        Case 0
            MakeError "Memory Access Violation"
        Case 1
            MakeError "Executable error (&FF_23A78DD)."
        Case 2
            MakeError "Paintobject failed!"
        Case 3
            MakeError "LoadImage failed!"
        Default
            MakeError "MakeGame failed!"
    EndSelect
EndFunction
Nauttikaa!vpenis++

Re: Monikäyttöisin funktio

Posted: Sat Jan 17, 2009 10:15 pm
by valscion
TheDuck, sun räiskintäpelissäs on bugi.

Re: Monikäyttöisin funktio

Posted: Sun Jan 18, 2009 12:17 am
by Dibalo
Joo-o.. Ei pahalla, mutta tämä on aivan tuhoontuomittu kisa.
  • Säännöistä todella huonot.
  • Epämääräinen aihe.
Mikäli ketjun aloittaja saa jollain ihmeen tavalla häkäistyä minut privaviesteillä tämän kilpailun tärkeydestä, voin avata lukituksen.