c do c++

0

Witam mam maly problemik

od paru dni ucze sie c++ ale jak na razie jedynym zrodlem mojej wiedzy jest ksiazka uczaca c i c++. Niestety dotarlem do miejsca w ktorym mowi sie konkretnie o c a w c++ nie chce dzialac. Konkretnie chodzi mi o kod :

#include <iostream>
#include <stdlib.h>

using namespace std;

int dobrze, zle;

int main()
{
char pytanie[15];
int odpowiedz;
dobrze = 0;
zle = 0;
pytaj("4 + 5 = ", 9);
pytaj("3 + 2 = ", 5);
pytaj("6 + 2 = ", 8);
pytaj("1 + 2 = ", 3);
cout << "Odpowiedziales poprawnie na " << dobrze << " pytan." << endl;
cout << "Opowiedziales zle na " << zle << " pytan." << endl;
system("PAUSE");
return 0;
}

pytaj(pytanie, odpowiedz)
char pytanie[15];
int ans
{
int zgadnij;
cout << pytanie;
cin >> zgadnij;
if (zgadnij == odpowiedz)
{
++dobrze;
}
else
{
++zle;
}
}

wedlug ksiazki w zwyklym c wszystko powinno byc dobrze ale w c++ nie chce dzialac :-(.

Domyslam sie ze problem dotyczy przekazywaniu parametrow funkcjom, moja prosba jest nastepujaca. Moze ktos mi powie jak sie przekazuje parametry funkjom w c++ i przy okazji wyjasni mi co jest zle w tym kodzie.

Nie wiem czy to cos pomoze ale urzywam DEV C++.

z gory dziekuje

0

#include <iostream>
#include <stdlib.h>

using namespace std;

int dobrze, zle;
void pytaj(char *pytanie ,int odpowiedz); /to tylko żeby program wiedział że jest funkcja pytaj tylko jej definicja jest gdzieś indziej można ją również tu umieścić/
int main()
{
char pytanie[15];
int odpowiedz;
dobrze = 0;
zle = 0;
pytaj("4 + 5 = ", 9);
pytaj("3 + 2 = ", 5);
pytaj("6 + 2 = ", 8);
pytaj("1 + 2 = ", 3);
cout << "Odpowiedziales poprawnie na " << dobrze << " pytan." << endl;
cout << "Opowiedziales zle na " << zle << " pytan." << endl;
system("PAUSE");
return 0;
}
void pytaj(char *pytanie ,int odpowiedz)/definicja funkcji podajesz w nawiasie jakie argumenty przyjmuje najważniejszy jest typ musi się zgadzać z typem jaki dostanie podczas wykonywania programu/{
int zgadnij;
cout << pytanie;
cin >> zgadnij;
if (zgadnij == odpowiedz)
{
++dobrze;
}
else
{
++zle;
}
}

0

Nie no... Ty w ogole masz problemy. Przede wszystkim porównujesz char* i int. brak widocznej funkcji (ciało/forward) nad funkcją main. składnia k&r moze nie działać.

0

Dziekuje bardzo teraz dziala.

Zobaczymy kiedy znowu sie na czyms zatrzymam ale teraz to juz nie problem z wami :-)

Jeszcze raz dziekuje !

1 użytkowników online, w tym zalogowanych: 0, gości: 1