Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Miten jatkan tästä?

Sivun loppuun

TrueMagus [29.11.2010 20:56:21]

#

Heippa! Olen siis opetellut C kielen perusteet (Funktiot, muuttujat if, else while sekä do loopit) Nyt en tiedä miten jatkan tästä. Haluaisin ehkä jonkunlaista korttipeliä ruveta väsäämään mutta en oikein tiedä mistä alottaa.

tepokas [29.11.2010 22:44:58]

#

Hellou
Opettele mallintamaan maalimaa ja sitten muuttamaan se malli siksi c-koodiksi. Siitä se alkaa, koodarin ura.

Korttipelistä on hyvä aloittaa, kunhan opettelet ensin ymmärtämään hiukka sitä mallinnusta ja sitten sitä mallin muuttamista koodiksi.

TrueMagus [29.11.2010 23:38:36]

#

Kiitos vastauksesta. Missä voisin opetalla tätä mallinnusta? Onko sinulla jotain linkkiä?

ankzilla [29.11.2010 23:46:18]

#

Itse suosittelisin tekemään tekstipohjaisen korttipelin, aloittelevalle löytyy sopivasti haastettakin. Päivän kirjastoksi suosittelisin cursesia.

Siinä se kokemus karttuu.

punppis [30.11.2010 03:47:05]

#

Suosittelen kanssa jotain tekstipohjaista peliä, tai vaikkapa useampaa. Tämän jälkeen kannattaa kokeilla vaikka jonkun yksinkertaisen 2d-pelin (vaikkapa se korttipeli) tekemistä vaikka SDL:llä tai Microsoftin XNA:lla (C#), joka on sangen aloittelijaystävällinen.

TrueMagus [30.11.2010 12:38:26]

#

Anteeksi osaamattomuuteni, mutta en tiedä missä voin opetella noita kirjastoja. Osaisiko joku vielä sen verran auttaa?

nomic [30.11.2010 13:21:19]

#

Cursesista tuli mieleeni tämä. Muutenkin Ohjelmointiputkan oppaita on hyvä selata, se kun ei ole vaikeaa. :)

TrueMagus [30.11.2010 13:42:54]

#

Tuo curses ei tunnu toimivan minun kääntäjässäni. Käytän siis DevC++.
Edit: Jos asennan tuon SDL multimediakirjaston, niin saanko sitten cursesin käyttöön? En oikeen teidä kaikkea vielä.

Blaze [30.11.2010 14:03:05]

#

TrueMagus kirjoitti:

Jos asennan tuon SDL multimediakirjaston, niin saanko sitten cursesin käyttöön? En oikeen teidä kaikkea vielä.

SDL:llä ja Cursesilla ei oo mitään tekemistä toistensa kans.

nomic [30.11.2010 14:03:07]

#

Millä tavoin se ei toimi sinun kääntäjässäsi? Kai olet linkittänyt tuon cursesin oikein? En tiedä miten moinen hoituu DevC++:ssa, itse käytän Codeblocksia, kun sitä vielä tuetaan...
SDL:ää ja cursesia on aika turhaa käyttää keskenään, sillä toinen väkertää konsoliin/terminaaliin tekstiä/merkkejä (curses, niin pd- kuin ncurses) ja toinen on rajapinta ikkunasovelluksille (SDL).

Nyt vaan opettelemaan, miten otetaan eri kirjastoja käyttöön.

TrueMagus [30.11.2010 14:12:38]

#

Osaan kyllä ottaa eri kirjastoja käyttöön. Huomasin että tuo curses ei toimi kun kokeilin tätä esimerkkiohjelmaa

// Esimerkkiohjelma:

// Sisällytetään ncurses projektiin.
#include <ncurses.h>

int main(int argc, char** argv) {
  // Siirrytään curses-tilaan. Emme testaa vielä,
  // onnistuimmeko siirtymään ko. tilaan.
  initscr();

  // Nuolinäppäimet yms. käytettäviksi
  keypad(stdscr, TRUE);

  // Näppäinpainallusten puskurointi pois
  raw();

  // "Kaikuminen" pois.
  noecho();

  // Kursori pois näkyvistä.
  curs_set(0);

  // Värit päälle. Emme testaa vielä, pystyykö konsoli väreihin.
  start_color();

  // Odotellaan, että käyttäjä painaa jotain.
  getch();

  // Poistutaan curses-tilasta ja lopetetaan ohjelman suoritus.
  endwin();
  return 0;
}

Mod. lisäsi kooditagit.

hunajavohveli [30.11.2010 14:57:47]

#

Millä tavalla se ei toimi? Mitä kääntäjä sanoo?

TrueMagus [30.11.2010 15:15:24]

#

http://img16.imageshack.us/img16/2217/ongelma.png Tuollaisia.

hunajavohveli [30.11.2010 15:33:34]

#

TrueMagus kirjoitti:

http://img16.imageshack.us/img16/2217/ongelma.png Tuollaisia.

Ensimmäinen rivi kertoo, että otsikkotiedostoa ncurses.h ei löydy ja loput virheet ovatkin seurausta tästä. Millä tavalla olet ottanut kirjaston käyttöön?

Edit: Nyt kun tarkemmin selvittelin, niin ilmeisesti ncursesia ei edes ole Windowsille, vaan lähin vastaava kirjasto on PDCurses. Suosittelen joka tapauksessa siirtymään Dev-C++:sta johonkin muuhun, koska sitä ei ole kehitetty enää aikoihin, esim. Code::Blocksiin. Sille saat PDCurses-paketin täältä.

nomic [30.11.2010 15:51:33]

#

Mitä tulee tuohon otsikkotiedostoon, niin kirjoita:

#include <curses.h> //ei n-kirjaimella

Tällä tavoin itselläni ainakin toimii, ja ympäristönä myöskin tuo Code::Blocks, kun DevC++:aa ei käsittääkseni enää tueta.

tepokas [30.11.2010 22:52:07]

#

TrueMagus kirjoitti:

Kiitos vastauksesta. Missä voisin opetalla tätä mallinnusta? Onko sinulla jotain linkkiä?

Eipä ole linkkiä, mutta hae kirjastosta mallinnusta käsitteleviä teoksia ja ala opetella. Jos ei lähikirjastosta löydy niin koita jotain AMK/yliopisto-kirjastoa niistä kun toisinaan voi tilata kirjallisuutta. Lue (käy läpi) useampia kirjoja, niissä kun on selitetty homma aina vähän eri tavalla (ei väliä vaikka mallinnusmenetelmä olisi eri).

Sinänsä kirjoitetulla tekstillä voi kuvata kaiken, joten mallintamisen opettelun voi aloittaa opettelemalla tekstin ymmärtämistä. Eli kaiva esille yläasteen suomenkielen oppikirjat ja opettele mitä mikin sana tekstissä ilmaisee. Kun ymmärrät mitä sanat ilmaisee, on ohjelman sanallinen kuvaus helpompi muuttaa ajettavaksi koodiksi eli niiksi funktioiksi ja struktuureiksi.


Sivun alkuun

Vastaus

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

Tietoa sivustosta