WItam mam problem z programem, ma on wczytywac z ekranu data urodzenai uzytkownika a nastepnie w odpowiedzi podac odpowiedni znak zodiaku. Kompilator nie wychwyca mi błędów natomiast program po wpisaniu daty samoczynnie przestaje działać...
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int i;
int d_ur;
char* m_ur;
struct zodiak //definiuje strukturę danych o znakach zodiaku
{
int dzien;
char mies[13];
char znak[11];
};
zodiak data[12] =
{
23, "grudnia", "koziorozca",
20, "stycznia", "wodnika",
20, "lutego", "ryb", /* od 20 lutego do 20 marca */
21, "marca", "barana",
20, "kwietnia", "byka",
21, "maja", "blizniet",
21, "czerwca", "raka",
22, "lipca", "lwa",
23, "sierpnia", "panny",
23, "wrzesnia", "wagi",
23, "pazdziernika", "skorpiona",
22, "listopada", "strzelca"
};
string porownaj()
{
while(strcmp(data[i].mies, m_ur) && i++ < 11){}
if(i<12)
{
cout<<"TWOIM ZNAKIEM JEST ";
if(d_ur >= data[i].dzien) i = (i+1)%12;
cin>>data[i].znak;
}
else
cout<<"$$$ ZLE WPISALES MIESIAC $$$";
return 0;
}
int main()
{
cout <<"podaj dzien urodzenia: ";
cin>>d_ur;
cout<<"podaj miesiac urodzenia (np. marca): ";
cin>>m_ur;
porownaj();
return 0;
}