Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++, QB: Tekoälyn porttaus QBasic --> C++

Sivun loppuun

hunajavohveli [11.06.2004 12:36:31]

#

Kuten tekoälyn keskusteluaiheesta voi lukea, QB:n kääntäjä rupesi sekoilemaan, ja joudun nyt porttaamaan tekoälyni C++:lle. Koska en kuitenkaan C++:aa kovin hyvin hallitse, joudun esittämään monia kysymyksiä. Ja tässä on ensimmäinen:

Miten voin määritellä kaksiulotteisen taulukon niin, että alkiot ovat -5:stä 55:een, niin kuin QB:ssä:

DIM taulukko(-5 TO 55, -5 TO 55)

firebug [11.06.2004 12:51:28]

#

Et mitenkään. Taulukon alkiot alkavat aina nollasta ja päättyvät kohtaan taulukon koko - 1.

hunajavohveli [11.06.2004 13:00:29]

#

Pahin pelkoni toteutui. Nyt meni TODELLA vaikeaksi.

T.M. [11.06.2004 13:00:35]

#

int taulukko[60][60];

Eiköhän se tolla hoidu? Eli tuo luo kaksiulotteisen taulukon jonka viimeinen alkio on 59 ja ensimmäinen 0...

hunajavohveli [11.06.2004 13:01:48]

#

No hoituu tietysti, mutta porttauksen kannalta erittäin vaikeaa.

T.M. [11.06.2004 13:04:15]

#

Noh, ihmettelen kyllä miksi sitä QB:tä edes pitää käyttää nykyään :)
Käytä vaikka PHP:tä mielummin... Tai sitten CoolBasicia, sekin on parempi valinta kuin QB.

hunajavohveli [11.06.2004 13:10:28]

#

T.M. kirjoitti:

Noh, ihmettelen kyllä miksi sitä QB:tä edes pitää käyttää nykyään :)
Käytä vaikka PHP:tä mielummin... Tai sitten CoolBasicia, sekin on parempi valinta kuin QB.

Minulla on 20 päivää aikaa saada tekoäly portattu, ja siihen voi mennä kauemminkin, jos ruvetaan vetämään off-topiciksi. Kai tajuat, että asia nyt myöhäistä korjata. Sitä paitsi olenkin siirtymässä QB:stä C++:aan. PHP:tä en ainakaan vielä kokeile. CoolBasic (joka ei suoriudu edes lausekkeesta: Dim muuttuja As Integer) ei kyllä auta minua tässä tekoälyssä enempää kuin QB, päinvastoin. Jos jotain muuta Basicia käyttäisin, niin se olisi Visual Basic.
Edit: Miksi minä sen vasta nyt keksin? Tietysti! Porttaan tekoälyni Visual Basicille! :D

firebug [11.06.2004 13:11:06]

#

Mihin edes tarvitset alkioita -5:stä 55:een? Eikö nollasta 60:een olisi parempi?

hunajavohveli [11.06.2004 13:14:32]

#

firebug kirjoitti:

Mihin edes tarvitset alkioita -5:stä 55:een? Eikö nollasta 60:een olisi parempi?

Kerron sitten, kun kilpailu on ohi. Ennalta en aio paljastaa vielä mitään.

acorn [11.06.2004 13:30:34]

#

int taulukko[60][60];
int taulu(int x, int y)
{
    return taulu[x+5][y+5];
}

Tiedot ladataan muuttujaan taulukko ja tarkistetaan sieltä funktion taulu avulla. Esim. taulu(-5, -5) toimii nyt. Tällainen olisi yksi mahdollisuus.

hunajavohveli [11.06.2004 16:12:37]

#

Tarkoitat luultavasti kuitenkin:

return taulukko[x+5][y+5];

eikä

return taulu[x+5][y+5];

Todella kekseliäs ratkaisu. Täytyy pitää tuo mielessä, kun seuraavan kerran tarvitsen negatiivisia alkioita C++:ssa, mutta sain kuitenkin jo portattua tekoälyni Visual Basicille, ja exe toimii nyt, kuten pitää.


Sivun alkuun

Vastaus

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

Tietoa sivustosta