Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: dna *QB*

juhaz [27.08.2003 22:15:55]

#

Yksi tekoäly projekti, jota teen huvikseni, että ei ole tarkoitusta edes yleiseen jakoon sitä laittaa, mutta ajattelin kehittää sille DNA:n joka myös kehittyisi ja siitä voisi syntyä uusi "eliö", jolla on vanhempien DNA.

Sanotaan nyt vaikka niin, että minulla on kaksi ohjelmaa, joille on annettu nimet mies01 ja nainen01 ja niillä kummallakin on DNA vaikka näin

mies01:
1
q
a
z

nainen01:
2
q
s
x

ja tarkoittavat
1-3 = Hiusten väri (1 = Vaalea, 2 = punertava 3 = tumma)
q-e = Ihon väri (q = vaalea, w = tumma, e = aasialaismallinen "keltaihoinen")
a-d = Silmien väri (a = sininen, s = vihreä, d = ruskea)
z-c = älykkyys (z = älykäs, x = normaali, c = tyhmä)

Ohjelma tuntee nämä ja se katsoo mitä sieltä dna:sta löytyy ja jos vaikkapa tuo nainen01:n dna:ssa olisi muutakin kuin vain "2qs" niin ohjelma laskisi mikä piirre olisi vahvin ja sen mukaan kertoisi "ihmisen" ominaisuudet eli ihon värin, silmien värin ja hiusten värin.

Toinen juttu olisi se, kun minä annan vaikkapa nainen01 nimiselle käskyn "join mies01" niin se yhdistää nämä dna:t uudeksi ja se kysyy nimeä niin mä annan nimeksi vaikka "lapsi01" niin siltä löytyy kummankin dna:ta ja jos kummankin ominaisuudet ovat ihan erilaisia niin se pyrkisi yhdistämään sitten käyttäjälle ymmärrettävään muotoon eli sanotaan vaikka tuo ihon väri eli jos mies01 olisi tumma ja nainen01 vaalea niin se sanoisi ihon väriksi vaaleantumma... tjs miksi sitten normaalisti kutsutaan ihmisen ihon väriä, josta löytyy vaaleaa ja tummaa (mulatti... tjs?) ja tietenkin siis laskemaan mitkä ominaisuudet ovat vahvimmillaan eli jos tyhmää geeniä C löytyy enemmän kuin noita normaalia ja älykästä niin tämä uusi lapsi01 olisi sitten tyhmä eikä älykäs :)

juhaz [28.08.2003 17:12:29]

#

no kertokaas kuinka mä saan laskettua tiedostosta eri asioita ja sen mukaan näyttämään isoimman (laskujen mukaan), kuten tuossa DNA:ssa, että jos q:ta olisi 8 kpl (valkoinen geeni... tjs), e:tä olisi 2 kpl ja w:tä 1 kpl niin se näyttäisi ihonväriksi valkoinen tai tietenkin ihon väriin liittyvistä geeneistä vahvimman ominaisuuden ja näitähän oli nämä kolme (valkoinen, tumma ja aasialaismallinen) ja tietenkin noille muillekkin sama juttu.


edit: Ja miksipäs tässä sitten uutta keskustelua avaamaan, kun entiseenkin voi laittaa kirjoitusta vielä, eli kuinkas onnistuu sillainen, että ohjelma avaa tiedoston, jossa on keskusteluita / jotain tekstiä vaikkapa tyyliin
"moi
hei
mitä kuuluu?
mitä?
kuuluu
?
mun
nimi
on
mun nimi on" jne.... niin kuinka ohjelman saa avaamaan ton tiedoston ja valikoimaan mitä se näyttää eli siitä tulisi jonkin sortin chat simu... tjs...

T.M. [28.08.2003 21:28:32]

#

hmm... en tiiä kyl QB:lle yhtään mitään... mutta kiitos mielenkiintoisesta ideasta ;)
PHP:lle vois koittaa tehä...

juhaz [30.08.2003 21:44:52]

#

Miten lasketaan eri kirjaimien määrä tiedostossa?
Esimerkiksi jos tiedostossa lukee "pappilan apupapin papupata porisee" niin pitäisi laskea kaikki kirjaimet erikseen ja jokaisen kirjaimen määrä näyttää erikseen.

Pekka Kauppila [30.08.2003 22:11:01]

#

Tuo koodi lukee tiedoston merkki merkiltä läpi ja kasvattaa arvoa taulukkoon b aina sen merkin kohdalle joka tiedostosta löytyy.

Dim a As String * 1
Dim b(255) As Integer

Open "tiedosto.txt" For Binary As #1
Do Until EOF(1)
Get #1, , a
b(Asc(a)) = b(Asc(a)) + 1
Loop
Close #1

'A kirjaimia...
Print b(65)

En tiedä sitten toimiiko, kun kirjoittelin sen vain tähän ja jätin testaamatta...

juhaz [30.08.2003 22:21:26]

#

näyttää, että olisi 0 a kirjainta

Pekka Kauppila [30.08.2003 22:30:54]

#

No siis tuossa taulukossa on siis nyt kaikkien mahdollisten merkkien merkkien määrä. Esim:

'Tulostetaan isojen A ja pienien a kirjaimen yhteismäärä
PRINT b(ASC("A")) + b(ASC("a"))

Voihan tuon toteutta tietysti muullakin tavalla jos ei ole tarvetta laskea noiden kaikki merkkien määrä. Halutun merkin määrä löytyy taulukosta sen ASCII-koodin kohdalta.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta