Archief - c++ help

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

winglide

Legacy Member
Ok, ik ben dus bezig me een klein text based rpg spelekke.
Alles werkte perfect, tot ineenkeer dak et niemeer kon compile.
Ier ist script:
#include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;

int main()

{
int answer1=0;
string strName;
SetConsoleTitle("Book of dreams");
cout << "Hello noble traveller," << endl;
cout << "What's your name? ";
cin >> strName;
cout << "Hello " << strName << "!\n";
cout << "Ok, now for the history:" << endl;
cout << "Continue?(1 to confirm) ";
cin >> answer1;
if(answer1 == 1)
{

cout << "You grew up in a little town named: minrod." << endl;
cout << "You lived there for whole your live now," << endl;
cout << "Nothing really exiting ever happened," << endl;
cout << "Until today...." << endl;
cout << "Continue?(1 to confirm) ";
cin >> answer1;
if(answer1 == 1)
{

cout << "You wake up , like any other day , in your own trusted bed" << endl;
cout << "But still, you sense that there is something wrong" << endl;
cout << "You step out of bed and get dressed ," << endl;
cout << "After supher , you go back to you room to do some studiyng." << endl;
cout << "But what you find there is the least you would have taught to find on your desk." << endl;
cout << "Continue?(1 to confirm) ";
cin >> answer1;
if(answer1 == 1)
{

cout << "|--------------------------|" << endl;
cout << "|///////////THE////////////|" << endl;;
cout << "|//////////////////////////|" << endl;
cout << "|///////////BOOK///////////|" << endl;
cout << "|//////////////////////////|" << endl;
cout << "|///////////OF/////////////|" << endl;
cout << "|//////////////////////////|" << endl;
cout << "|//////////Dreams//////////|" << endl;
cout << "|--------------------------|" << endl;
cout << "Continue?(1 to confirm) ";
cin >> answer1;
if(answer1 == 1)
{

cout << "You look at the big blue book while poundering about" << endl;
cout << "from whom the book is and how it came there," << endl;;
cout << "should i unravell its secrets by opening it?" << endl;
cout << "after thinking it over you think it is wise to open it up" << endl;
cout << "so, you open the book and what you see is..." << endl;
cout << "Continue?(1 to confirm) ";
cin >> answer1;
if(answer1 == 1)
{

cout << "Nothing!" << endl;
cout << "Just a bunch of white pages." << endl;;
cout << "Maybe my mother bought me a diary or somekind." << endl;
cout << "But why the strange name :The Book of Dreams?" << endl;
cout << "without thinking any further , you decide to ask your mother about it." << endl;
cout << "So, you grasp the book by its top end ," << endl;
cout << "BUT THEN SUDENLY..." << endl;
}
}
}
}

system("PAUSE");
return EXIT_SUCCESS;
}

Het geeft deze foutmelding:
C:\Dev-Cpp\bod.cpp In function `int main()':
80 C:\Dev-Cpp\bod.cpp syntax error at end of input

killgore

Legacy Member
string klasse werkt niet met cin maar getlinke(cin, string);

2) uw if-else structuur sucks :). Scrijf dan gewoon if(input != 1) return 0; of zo, ma nie omgekeerd he :). (nog beter zou zijn met aparte functies/klasses/files e.d. werken, maar kom, das et minste :)).
3) ge mist dus een } (wat, tbh, bij een deftige code structuur een bug is die je gewoon niet tegenkomt of binnen de kortste keren kan oplossen).
4) ronduit stom da ge hiervoor windows functies gebruikt :p. Kan allemaal in pure c++ gecoded worden, behalve consolename ;).

mijn code :
PHP:
#include <string>
#include <iostream>
#include <windows.h>
using namespace std;

#define ENDMESSAGE "Bye Bye ... (press any key to exit)"

void confirm();

int main()
{
string strName;
SetConsoleTitle("Book of dreams");
cout << "Hello noble traveller," << endl;
cout << "What's your name? ";
getline(cin,strName);
cout << "Hello " << strName << "!\n";
cout << "Ok, now for the history:" << endl;
cout << "Continue?(1 to confirm) ";

confirm();

cout << "You grew up in a little town named: minrod." << endl;
cout << "You lived there for whole your live now," << endl;
cout << "Nothing really exiting ever happened," << endl;
cout << "Until today...." << endl;
cout << "Continue?(1 to confirm) ";

confirm();

cout << "You wake up , like any other day , in your own trusted bed" << endl;
cout << "But still, you sense that there is something wrong" << endl;
cout << "You step out of bed and get dressed ," << endl;
cout << "After supher , you go back to you room to do some studiyng." << endl;
cout << "But what you find there is the least you would have taught to find on your desk." << endl;
cout << "Continue?(1 to confirm) ";
confirm();

cout << "|--------------------------|" << endl;
cout << "|///////////THE////////////|" << endl;;
cout << "|//////////////////////////|" << endl;
cout << "|///////////BOOK///////////|" << endl;
cout << "|//////////////////////////|" << endl;
cout << "|///////////OF/////////////|" << endl;
cout << "|//////////////////////////|" << endl;
cout << "|//////////Dreams//////////|" << endl;
cout << "|--------------------------|" << endl;
cout << "Continue?(1 to confirm) ";

confirm();

cout << "You look at the big blue book while poundering about" << endl;
cout << "from whom the book is and how it came there," << endl;;
cout << "should i unravell its secrets by opening it?" << endl;
cout << "after thinking it over you think it is wise to open it up" << endl;
cout << "so, you open the book and what you see is..." << endl;
cout << "Continue?(1 to confirm) ";
confirm();

cout << "Nothing!" << endl;
cout << "Just a bunch of white pages." << endl;;
cout << "Maybe my mother bought me a diary or somekind." << endl;
cout << "But why the strange name :The Book of Dreams?" << endl;
cout << "without thinking any further , you decide to ask your mother about it." << endl;
cout << "So, you grasp the book by its top end ," << endl;
cout << "BUT THEN SUDENLY..." << endl;


system("PAUSE");
return EXIT_SUCCESS;
}

void confirm()
{
	int answer = 0;
	cin >> answer;
	if(answer != 1)
	{
		cout << ENDMESSAGE << endl;
		cin.get();
		exit(0);
	}
}

Da Turtle

Legacy Member
ik kopieer de code, ik kijk naar de accolades die openen ik tel er 6, ik kijk naar diegene die sluiten, ik tel er 5 hmmmm, ik zet bij die 4 die sluiten eentje bij, het werkt :p. gebruik tabs, ieder keer dat je een accolade opent, ga een tab verder, op deze manier:
Code:
if(voorwaarde)
{
    command1;
    command2;
    if(voorwaarde2)
        command3;
}
Veel overzichtelijker toch? en dan kom je ook geen zo'n fouten tegen :)

CyBeRRaT

Legacy Member
leer inderdaad iteraties gebruiken. zo wordt alles veel ovezichtelijker!

QplQyer

Legacy Member
CyBeRRaT zei:
leer inderdaad iteraties gebruiken. zo wordt alles veel ovezichtelijker!
Je bedoelt indentatie wellicht :)
iteratie is iets anders bij mijn weten (itereren is ong hetzelfde als iets overlopen).

M_N_M

Legacy Member
Krueger zei:
Is dat niet recursie? Iteratie is meer zoiets als een "for" of "while" zou ik zeggen.
true :) iteratie is een loop. Recursie is een functie die zichzelf aanroept, een speciale loop dus eigenlijk (bv easy voor rij van fibonacci te proggen)

Vich

Legacy Member
Tip1:
Leer eerst gewoon te programmeren voor je een spel gaat programmeren.

Tip2:
Gebruik de code vB [ code ] tags als je code post.

[edit] @ de rest: ik denk dat hij "nesten" bedoelde, niet iteraties.

QplQyer

Legacy Member
M_N_M zei:
true :) iteratie is een loop. Recursie is een functie die zichzelf aanroept, een speciale loop dus eigenlijk (bv easy voor rij van fibonacci te proggen)
Maar o zo mottig om fibonacci te berekenen want veel te duur als je het niet een beetje herwerkt om bepaalde reeds berekende resultaten bij te houden :)
En unikorn bedoelt idd recursie (zoals al veel vermeld).

@Vich: wie denk je dat nesten bedoelde? In 't ene geval leek het mij eerder om indentatie te gaan en in het andere over recursie?

killgore

Legacy Member
QplQyer zei:
Maar o zo mottig om fibonacci te berekenen want veel te duur als je het niet een beetje herwerkt om bepaalde reeds berekende resultaten bij te houden :)
En unikorn bedoelt idd recursie (zoals al veel vermeld).

@Vich: wie denk je dat nesten bedoelde? In 't ene geval leek het mij eerder om indentatie te gaan en in het andere over recursie?
Wie gaat fibonacci nu recursief berekenen als er een expliciet voorschrift is :p.

En je moet mij eens uitleggen hoe je hier gaat itereren met verschillende stukken tekst (zonder met filestreams te werken).

Vich

Legacy Member
QplQyer zei:
@Vich: wie denk je dat nesten bedoelde? In 't ene geval leek het mij eerder om indentatie te gaan en in het andere over recursie?
Cyberrat enzow. Maar door het feit dat de TS geen code tags gebruikte valt sowieso de indentatie weg, zelfs als hij ze oorspronkelijk wel had toen hij c/p deed.

CyBeRRaT

Legacy Member
ik bedoelde wel degelijk indentatie. sorry! maar ik slaag die twee altijd door elkaar:S

met andere woorden gebruik tabs als ge zijt aan het coden...

AcIdR3IgN

Legacy Member
Je engels kan ook wel wa beter vindt ik, zeker als je dit spel wilt uitbrengen aan de grote publiek :D lol.
Mja wete, kvinnet geen slecht idee om direct iets te maken da ge graag maakt. Tis nu nie een geavanceerde spel hier, maar kan wel wa plezant zijn voor hem. natuurlijk gade nie zover geraken met zo'n lelijke code, maar da verbetert (hopelijk) wel narmate je vordert.
So have fun with it!
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan