Diskuze: Špatně načtený vstup
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Problém bude především v této části
while (getline(vstup, slovo, ';'))
{
if (slovo == "pondeli" || slovo == "utery" || slovo == "streda" || slovo == "ctvrtek" || slovo == "patek")
{
cout << "den" << endl;
}
else
{
string docasne_cislo=slovo.substr(0,2);
string docasne_cislo2=slovo.substr(3,2);
if(isdigit(slovo[0]))
{
minuty=(atoi(docasne_cislo.c_str())*60)+atoi(docasne_cislo2.c_str());
}
vyskyt = overeni_vyskytu(zamestnanci, slovo, pocet);
if (vyskyt == -1)
{
if(udaj==0)
{
zamestnanci[index].jmeno = slovo;
}
if(udaj==1)
{
zamestnanci[index].prijmeni = slovo;
}
if(udaj==2)
{
zamestnanci[index].odpracMin = minuty/60.;
zamestnanci[index].plat = zamestnanci[index].odpracMin * 65;
zamestnanci[index].dane = zamestnanci[index].plat * 0.21;
zamestnanci[index].vyplata = zamestnanci[index].plat - zamestnanci[index].dane;
zamestnanci[index].dny = 1;
udaj=0;
index++;
}
}
else
{
if(udaj==2)
{
zamestnanci[vyskyt].odpracMin += minuty/60.;
zamestnanci[vyskyt].plat += zamestnanci[index].odpracMin * 65 / 60.;
zamestnanci[vyskyt].dane += zamestnanci[index].plat * 0.21;
zamestnanci[vyskyt].vyplata += zamestnanci[index].plat - zamestnanci[index].dane;
zamestnanci[vyskyt].dny += 1;
udaj=0;
}
}
udaj++;
}
}
Metoda ověření výskytu -
int overeni_vyskytu(zamestnanec* zamestnanci, string jmeno, int velikost_pole)
{
int pozice = -1;
for (int i = 0; i < velikost_pole; i++)
{
if (zamestnanci[i].jmeno.c_str() == jmeno.c_str())
{
pozice = i;
}
}
return pozice;
}
Preco nenapises: poslem 1000 kc za ...?
Zobrazeno 3 zpráv z 3.