Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: parse errorin paluu...

ttuoppi [22.06.2004 21:02:17]

#

Taasen sama ongelma...Parse error before else... Vaikka nyt on Kaarisulutkin paikoillaan...Vain ohjelma on vaihtunut:

#include <iostream.h>
#include <stdio.h>

int main (void)
{
  int kys_1, kys_2, kys_3, kys_4, kys_5, tulos;
  kys_1 = kys_2 = kys_3 = kys_4 = kys_5 = tulos = 0;

  cout << endl << "Kohta tulee viisi vaittamaa. Niihin vastaat numeroin:";
  cout << endl << "5 = Taysin samaa mielta.";
  cout << endl << "4 = Melko samaa mielta.";
  cout << endl << "3 = Puolueeton.";
  cout << endl << "2 = Melko eri mielta.";
  cout << endl << "1 = Taysin eri mielta.";
  cout << endl << endl << "Lopuksi saat epavirallisen psykologin Tuomas Mammelan arvion itsestasi...";
  cout << endl << endl << "PAINA ENTER KUN OLET VALMIS";

  getchar();

  cout << endl << "Rakastan mopolla ajamista.";
  cout << endl << "Vastauksesi: ";
  cin >> kys_1;

  cout << endl << endl << "C++ Ohjelmoinnin Alkeet-kirja sopii vallan mainiosti kesalukemiseksi.";
  cout << endl << "Vastauksesi: ";
  cin >> kys_2;

  cout << endl << endl << "En tieda karmivampaa paikkaa kuin kaikki vaatekaupat...";
  cout << endl << "Vastauksesi: ";
  cin >> kys_3;

  cout << endl << endl << "Ajan mieluummin vanhalla kuin uudella ajoneuvolla.";
  cout << endl << "Vastauksesi: ";
  cin >> kys_4;

  cout << endl << endl << "En vastannut rehellisesti askeisiin kysymyksiin.";
  cout << endl << "Vastauksesi: ";
  cin >> kys_5;

  cout << endl << endl << endl << "    Paina ENTER jos uskallat kuulla totuuden itsestäsi...";
  getchar();

  tulos = kys_1 + kys_2 + kys_3 + kys_4 + kys_5;

  if (tulos == 5);
{
  cout << endl << endl << "Olet KAUHISTUTTAVAN POYRISTYTTAVAN sanoisinpa suorastaan RAHVAAN TYLSÄ IHMINEN./n";
  cout << "Sinua EN HALUAISI tuntea tai edes TIETÄÄ!!!";
  cout << endl << endl << "OLISI PARAS PAINAA VIKKELASTI [ENTER] ENNENKUIN SAASTUTAT OHJELMANI";
  cout << endl << "TYLSYYDELLA!!!";
  getchar();
  return 0;
}
  else if (tulos <= 10 && tulos > 5);
{
  cout << endl << endl << "Tylsempaa ihmista saa hakea. En erityisemmin tahtoisi olla kanssasi ";
  cout << endl << "tekemisissa. Tosin sina saatat JOSKUS HARVOIN tehdä ihan VAHINGOSSA ";
  cout << endl << "jotain jännittävää tai hauskaa.";
  cout << endl << endl << "Paina ENTER ja osta elama.";
  getchar();
  return 0;
}
  else if (tulos > 10 && tulos <= 20);
{
  cout << endl << endl << "Olet normaali ihminen. Aö on sinulla 90-100.";
  cout << endl << endl << "Paina ENTER poistuaksesi.";
  getchar();
  return 0;
}
  else if (tulos > 20 && tulos <= 25);
{
  cout << endl << endl << "Sinulla on 500mhz normaalia paremmat aivot. Voisin jopa sanoa etta";
  cout << endl << "olet cool, tyylitajuinen, viisas jne. Tahtoisin tuntea mahdollisimman paljon";
  cout << endl << "sinunkaltaisiasi ihmisia!!!";
  cout << endl << endl << "Poistu painamalla sivistyneesti ENTER- nappainta.";
  getchar();
  return 0;
}
}

Metabolix [22.06.2004 21:05:52]

#

Jokaisessa if-lauseessa sama virhe:

if (tulos == 5);

Tuo puolipiste pitäisi poistaa!!!


Sitten myös kaikki nämä joissa on &&:

if (tulos > 10 && tulos <= 20);

Tarvitaan lisää sulkuja:

if ((tulos > 10) && (tulos <= 20));

Sitä sattuu aina alussa :)

ttuoppi [22.06.2004 21:19:36]

#

Thanksista... Mut mitä varten noi sulut pitäs lisätä? Mulla toimii ilmankin...

Metabolix [22.06.2004 21:26:16]

#

Sori, ajattelen liikaa Pascal-tyyliin... ei niitä tuossa tarvitakaan. Tarvittaisiin, jos olisi & eikä && (Pascalissa ne ovat sama asia).
Mutta sulkuja on minusta kiva käyttää kaikessa, ne selkeyttävät ihan kummasti, ja kun niihin on tottunut, ei unohda niitä silloin kun on useampi ehto, joista jokin on ||.

ttuoppi [22.06.2004 21:40:15]

#

OK. Mutta minä kai mieluiten käytän vähän sulkuja (koskee vain ohjelmointia) ja paljon rivinvaihtoja...

tsuriga [22.06.2004 22:03:20]

#

Käytä mieluiten kooditageja niin näyttää sisennyksetkin kunnollisilta. "One-linereissa" ei tartte sulkuja, jos o enemmä rivejä ni sitte sulut. Ei mitää puolipisteitä ehtolauseiden perää.

Vastaus

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

Tietoa sivustosta