Η else μου βγαζει λάθος

Συζητήσεις για την γλώσσα C και C++

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Constructor
Δημοσιεύσεις: 3
Εγγραφή: 23 Ιούλ 2009 18:48

Η else μου βγαζει λάθος

Δημοσίευση από Constructor » 23 Ιούλ 2009 19:13

Καλησπέρα. Είναι νέος στον προγραμματισμό και θα ήθελα αν είναι εφικτό καποιος να με βοηθήσει. Δεν μπορώ να καταλάβω που εχω κανει το λάθος στον κώδικα. :(

Κώδικας: Επιλογή όλων

#include <iostream>
#include <cstring>
#include <cstdlib>
#include <conio.h>
using namespace std;


void pros8esi&#40;&#41;;
void afairesi&#40;&#41;;
void pollaplasiasmos&#40;&#41;;
void diairesi&#40;&#41;;
int wow,lol;
char pra3i&#91;20&#93;;
int num_right;
int main&#40;&#41;
&#123;
    for&#40;;;&#41;&#123;
    cout<<" Poia praksi protimas?&#40;pros8esi, afairesi, pollaplasiasmos, diairesi&#41;??\n";
    cout <<" An 8elete na termatisete tin leitourgia patiste  exit\n\n";
    cout<<" Grapste tin praksi opos akrivos tin exo grapsei ego.\n";
    gets&#40;pra3i&#41;;
        if&#40;!strcmp&#40;pra3i, "pros8esi"&#41;&#41;&#123;                 
    cout << "Exete epileksei tin pros8esi\n";
    cout<<" Poses askiseis 8eleis? ";
    cin >> wow;
    num_right=0; 
    do&#123;
         pros8esi&#40;&#41;; 
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        &#125;
        if&#40;!strcmp&#40;pra3i, "afairesi"&#41;&#41;&#123;
    cout << "Exete epileksei tin afairesi\n";
    cout <<" PROSOXH!! Stin afairesi einai pi8ano na uparxoun kai arnitika apotelesmata\n";
    cout <<" Eseis apla 8a pliktrologeite to plin&#40;-&#41; prin to apotelemsa.\n";
    cout<<" Poses askiseis 8eleis?? ";
    cin >> wow;
    num_right=0;    
        do&#123;
        afairesi&#40;&#41;;
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        &#125;
        if&#40;!strcmp&#40;pra3i, "pollaplasiasmos"&#41;&#41;&#123;
    cout <<"Exete epileksei ton pollaplasiasmo\n";
    cout<<" Poses askiseis 8eleis?? ";
    cin >> wow;
    num_right=0;
    do&#123;
        pollaplasiasmos&#40;&#41;;
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        
        &#125;
    if&#40;!strcmp&#40;pra3i, "diairesi"&#41;&#41;&#123;
    cout <<"Exete epileksei tin diairesi\n"; 
    cout<<" Poses askiseis 8eleis? ";
    cin >> wow;
    num_right=0;
        do&#123;
        diairesi&#40;&#41;;
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        &#125;
    if&#40;!strcmp&#40;pra3i, "exit"&#41;&#41;&#123;
                      cout<<"\n\n Euxaristo pou xrisimopoihsate to programma. Kali sas mera\n";
                      return 0;
                      &#125;
        else &#123;
             cout<<" Exeis kanei kapoio la8os stin pliktrologisi. Dokimase ksana...\n";
        &#125;
        &#125;
        system&#40;"PAUSE"&#41;;
        return 0;
        &#125;
        
    void pros8esi&#40;&#41;
    &#123;
         int x; 
         int a,b,apo;
         a=rand&#40;&#41; %1000;
         b=rand&#40;&#41; %1000;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" + "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a+b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a+b<< '\n';
                                   &#125;
    void afairesi&#40;&#41;
    &#123;
         int x; 
         int a,b,apo;
         a=rand&#40;&#41; %1000;
         b=rand&#40;&#41; %1000;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" - "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a-b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a-b<< '\n';
                                   &#125;
 void pollaplasiasmos&#40;&#41;
    &#123;
         int x; 
         int a,b,apo;
         a=rand&#40;&#41; %100;
         b=rand&#40;&#41; %100;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" * "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a*b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a*b<< '\n';
                                   &#125;
     void diairesi&#40;&#41;
    &#123;
         int x; 
         int a,b,apo;
         a=rand&#40;&#41; %100;
         b=rand&#40;&#41; %100;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" / "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a/b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a/b<< '\n';
                                   &#125; 
:question:
Μια δοκιμαστική εκτέλη εναι αυτη...Το προγραμμα μολις τελείωσε η εντολή if για την πρόσθεση μου εδειξε την έξοδο της εντολής else! Ποιο ειναι το λάθος μου??
Εικόνα

Ευχαριστω για τον χρόνο σας και ελπίζω να μην είμαι κουραστικός και ενοχλητικός!

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Η else μου βγαζει λάθος

Δημοσίευση από virxen75 » 24 Ιούλ 2009 02:26

Κώδικας: Επιλογή όλων

#include <iostream>
#include <cstring>
#include <cstdlib>
#include <conio.h>
using namespace std;


void pros8esi&#40;&#41;;
void afairesi&#40;&#41;;
void pollaplasiasmos&#40;&#41;;
void diairesi&#40;&#41;;
int wow,lol;
char pra3i&#91;20&#93;;
int num_right;
int main&#40;&#41;
&#123;
    bool praxi=false;
    for&#40;;;&#41;&#123;
    cout<<" Poia praksi protimas?&#40;pros8esi, afairesi, pollaplasiasmos, diairesi&#41;??\n";
    cout <<" An 8elete na termatisete tin leitourgia patiste  exit\n\n";
    cout<<" Grapste tin praksi opos akrivos tin exo grapsei ego.\n";
    cin>>pra3i;
    praxi=false;
        if&#40;strcmp&#40;pra3i, "pros8esi"&#41;==0&#41;&#123; 
                          praxi=true;                
                          cout << "Exete epileksei tin pros8esi\n";
                          cout<<" Poses askiseis 8eleis? ";
                          cin >> wow;
                          num_right=0;
                          do&#123;
                             pros8esi&#40;&#41;;
                             wow--;
                             &#125;while&#40;wow&#41;;
                             cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        &#125;
       else if&#40;strcmp&#40;pra3i, "afairesi"&#41;==0&#41;&#123;
                                       praxi=true; 
    cout << "Exete epileksei tin afairesi\n";
    cout <<" PROSOXH!! Stin afairesi einai pi8ano na uparxoun kai arnitika apotelesmata\n";
    cout <<" Eseis apla 8a pliktrologeite to plin&#40;-&#41; prin to apotelemsa.\n";
    cout<<" Poses askiseis 8eleis?? ";
    cin >> wow;
    num_right=0;   
        do&#123;
        afairesi&#40;&#41;;
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        &#125;
    else if&#40;strcmp&#40;pra3i, "pollaplasiasmos"&#41;==0&#41;&#123;
                                       praxi=true; 
    cout <<"Exete epileksei ton pollaplasiasmo\n";
    cout<<" Poses askiseis 8eleis?? ";
    cin >> wow;
    num_right=0;
    do&#123;
        pollaplasiasmos&#40;&#41;;
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
       
        &#125;
    else if&#40;strcmp&#40;pra3i, "diairesi"&#41;==0&#41;&#123;
                                   praxi=true; 
    cout <<"Exete epileksei tin diairesi\n";
    cout<<" Poses askiseis 8eleis? ";
    cin >> wow;
    num_right=0;
        do&#123;
        diairesi&#40;&#41;;
        wow--;
        &#125;while&#40;wow&#41;;
        cout<<" Exeis "<<num_right<<" askiseis sostes\n";
        &#125;
   else if&#40;strcmp&#40;pra3i, "exit"&#41;==0&#41;&#123;
                      cout<<"\n\n Euxaristo pou xrisimopoihsate to programma. Kali sas mera\n";
                      return 0;
                      &#125;
      if &#40;!praxi &#41;&#123;
             cout<<" Exeis kanei kapoio la8os stin pliktrologisi. Dokimase ksana...\n";
        &#125;
        &#125;
        system&#40;"PAUSE"&#41;;
        return 0;
        &#125;
       
    void pros8esi&#40;&#41;
    &#123;
         int x;
         int a,b,apo;
         a=rand&#40;&#41; %1000;
         b=rand&#40;&#41; %1000;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" + "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a+b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a+b<< '\n';
                                   &#125;
    void afairesi&#40;&#41;
    &#123;
         int x;
         int a,b,apo;
         a=rand&#40;&#41; %1000;
         b=rand&#40;&#41; %1000;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" - "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a-b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a-b<< '\n';
                                   &#125;
 void pollaplasiasmos&#40;&#41;
    &#123;
         int x;
         int a,b,apo;
         a=rand&#40;&#41; %100;
         b=rand&#40;&#41; %100;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" * "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a*b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a*b<< '\n';
                                   &#125;
     void diairesi&#40;&#41;
    &#123;
         int x;
         int a,b,apo;
         a=rand&#40;&#41; %100;
         b=rand&#40;&#41; %100+1;
         
         for&#40;x=0; x<3; x++&#41;&#123;
                      cout <<" Poso kanei "<<a<<" / "<<b<<"? ";
                      cin>>apo;
                      if&#40;apo==a/b&#41;&#123;
                                   cout << "***RIGHT***\n";
                                   num_right++;
                                   return;
                                   &#125;
                                   &#125;
                                   cout <<"Krima. Xrisimopoihseis oles tis prospa8eies sou.\n";
                                   cout <<"H sosti apantisi itan "<<a/b<< '\n';
                                   &#125; 
για δοκιμασε αυτό

Constructor
Δημοσιεύσεις: 3
Εγγραφή: 23 Ιούλ 2009 18:48

Η else μου βγαζει λάθος

Δημοσίευση από Constructor » 24 Ιούλ 2009 12:06

Δουλεύει πολυ καλά...Χίλια ευχαριστω...Σε ευχαριστω για τον χρονο που ξοδεψες για να το διορθώσεις. Κατι τελευταίο...Αν δεν βαρίεσαι και έχεις χρόνο μπορεις να μου πεις τι ακριβώς άλλαξες? Σημασία έχει να βελτιώνομαι και όχι να τα παιρνω έτοιμα χωρις να ξέρω πως δουλέύουν...Και πάλι ευχαριστω

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Η else μου βγαζει λάθος

Δημοσίευση από virxen75 » 24 Ιούλ 2009 13:07

void diairesi()
{
int x;
int a,b,apo;
a=rand() %100;
b=rand() %100+1;


για να αποφύγεις διαίρεση με το μηδέν

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Η else μου βγαζει λάθος

Δημοσίευση από virxen75 » 24 Ιούλ 2009 13:10

int main()
{
bool praxi=false;
for(;;){
cout<<" Poia praksi protimas?(pros8esi, afairesi, pollaplasiasmos, diairesi)??\n";
cout <<" An 8elete na termatisete tin leitourgia patiste exit\n\n";
cout<<" Grapste tin praksi opos akrivos tin exo grapsei ego.\n";
cin>>pra3i;
praxi=false;
if(strcmp(pra3i, "pros8esi")==0){ //ελεγχος αν ίσα

στο praxi βάζω true όταν πρόκειται για πράξη αλλίως false για να εμφανιστεί
πιο κάτω μήνυμα λάθους

cin>> για να αποφύγεις προβλήματα κατά την εισαγωγή της pra3i
gets(pra3i) προβληματική!!!

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Η else μου βγαζει λάθος

Δημοσίευση από virxen75 » 24 Ιούλ 2009 13:11

if(strcmp(pra3i, "pros8esi")==0){
praxi=true;
cout << "Exete epileksei tin pros8esi\n";
cout<<" Poses askiseis 8eleis? ";
cin >> wow;

όταν επιλέξεις πράξη praxi=true για να μην έχεις μήνυμα λάθους πιο κάτω

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Η else μου βγαζει λάθος

Δημοσίευση από virxen75 » 24 Ιούλ 2009 13:12

else if(strcmp(pra3i, "exit")==0){

else if αντί σκέτου if

Άβαταρ μέλους
virxen75
Δημοσιεύσεις: 493
Εγγραφή: 18 Φεβ 2009 00:17
Τοποθεσία: ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ

Η else μου βγαζει λάθος

Δημοσίευση από virxen75 » 24 Ιούλ 2009 13:14

if (!praxi ){
cout<<" Exeis kanei kapoio la8os stin pliktrologisi. Dokimase ksana...\n";
}

αν δεν έδωσες όνομα πράξης τότε μήνυμα λάθους


THE END :wink:

Constructor
Δημοσιεύσεις: 3
Εγγραφή: 23 Ιούλ 2009 18:48

Η else μου βγαζει λάθος

Δημοσίευση από Constructor » 24 Ιούλ 2009 13:35

τι να πω τωρα??? απλα ΕΥΧΑΡΙΣΤΩ!!!!!!!

lousifer231
Δημοσιεύσεις: 77
Εγγραφή: 17 Απρ 2007 01:59
Τοποθεσία: kypros
Επικοινωνία:

Η else μου βγαζει λάθος

Δημοσίευση από lousifer231 » 29 Ιαν 2011 15:48

na rotiso kati asxeto .. ? exw tr3i to programa evala prosthesi kai mu evgale na grapso apotelesma
egw patisa (?) kai arxize na katevazei diafora xoris na stamata ..
pou eprepe na valo ton elexo kai na efanizi ena minima akiros arithos i kati allo ??

Απάντηση

Επιστροφή στο “C, C++”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες