Peršokti į turinį

Pagalbos su C++ uždaviniu, meta klaidą.


NaxHQ`

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3046 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sveiki, gal galėtumėt padėti su šiuo uždaviniu? Aš jį parašiau, bet metą kažkokį errorą. Jei galit, patvarkykit mano sprendimą.

 
Užduotis

keliu_remontas.pngIš taško A į tašką B galima patekti keliais, kurie pažymėti mažosiomis raidėmis: a, b, c, d, e, f.  Sudarykite programą, kuri pasakytų ar galima iš taško A patekti į tašką B, kai duota, kuriais keliais galima važiuoti (1), o kurie remontuojami (0).

Duomenys Rezultatas

Ar galima važiuoti keliu a? 0

Ar galima važiuoti keliu b? 0

Ar galima važiuoti keliu c? 1

Ar galima važiuoti keliu d? 1

Ar galima važiuoti keliu e? 1

Ar galima važiuoti keliu f?  1

Iš taško A į tašką B patekti galima.

Ar galima važiuoti keliu a? 0

Ar galima važiuoti keliu b? 1

Ar galima važiuoti keliu c? 1

Ar galima važiuoti keliu d? 1

Ar galima važiuoti keliu e? 0

Ar galima važiuoti keliu f?  0

Iš taško A į tašką B patekti negalima.
 

MANO SPRENDIMAS:

 

#include <iostream>
using namespace std;
 
int main() 
{
   int a, b, c, d, e, f;
 
   cout<<"Ar galima važiuoti keliu a? "<<endl; cin>>a;
   cout<<"Ar galima važiuoti keliu b? "<<endl; cin>>b;
   cout<<"Ar galima važiuoti keliu c? "<<endl; cin>>c;
   cout<<"Ar galima važiuoti keliu d? "<<endl; cin>>d;
   cout<<"Ar galima važiuoti keliu e? "<<endl; cin>>e;
   cout<<"Ar galima važiuoti keliu f? "<<endl; cin>>f;
 
 
   if(a = 0 && b = 0 && c = 0 && d = 0 && e = 0 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   if(a = 0 && b = 0 && c = 0 && d = 0 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   if(a = 0 && b = 0 && c = 0 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   if(a = 0 && b = 0 && c = 1 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   if(a = 0 && b = 1 && c = 1 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   if(a = 1 && b = 1 && c = 1 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
      
   return 0;
}
Redaguota , nario .lukonic`
Narys įspėtas. 1.3.
Nuoroda į komentarą
Dalintis per kitą puslapį

 

Sveiki, gal galėtumėt padėti su šiuo uždaviniu? Aš jį parašiau, bet metą kažkokį errorą. Jei galit, patvarkykit mano sprendimą.

 
Užduotis

keliu_remontas.pngIš taško A į tašką B galima patekti keliais, kurie pažymėti mažosiomis raidėmis: a, b, c, d, e, f.  Sudarykite programą, kuri pasakytų ar galima iš taško A patekti į tašką B, kai duota, kuriais keliais galima važiuoti (1), o kurie remontuojami (0).

Duomenys Rezultatas

Ar galima važiuoti keliu a? 0

Ar galima važiuoti keliu b? 0

Ar galima važiuoti keliu c? 1

Ar galima važiuoti keliu d? 1

Ar galima važiuoti keliu e? 1

Ar galima važiuoti keliu f?  1

Iš taško A į tašką B patekti galima.

Ar galima važiuoti keliu a? 0

Ar galima važiuoti keliu b? 1

Ar galima važiuoti keliu c? 1

Ar galima važiuoti keliu d? 1

Ar galima važiuoti keliu e? 0

Ar galima važiuoti keliu f?  0

Iš taško A į tašką B patekti negalima.

 

MANO SPRENDIMAS:

 

#include <iostream>
using namespace std;
 
int main() 
{
   int a, b, c, d, e, f;
 
   cout<<"Ar galima važiuoti keliu a? "<<endl; cin>>a;
   cout<<"Ar galima važiuoti keliu b? "<<endl; cin>>b;
   cout<<"Ar galima važiuoti keliu c? "<<endl; cin>>c;
   cout<<"Ar galima važiuoti keliu d? "<<endl; cin>>d;
   cout<<"Ar galima važiuoti keliu e? "<<endl; cin>>e;
   cout<<"Ar galima važiuoti keliu f? "<<endl; cin>>f;
 
 
   if(a = 0 && b = 0 && c = 0 && d = 0 && e = 0 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   if(a = 0 && b = 0 && c = 0 && d = 0 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   if(a = 0 && b = 0 && c = 0 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   if(a = 0 && b = 0 && c = 1 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   if(a = 0 && b = 1 && c = 1 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   if(a = 1 && b = 1 && c = 1 && d = 1 && e = 1 && f = 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
      
   return 0;
}

 

Kol kas ne prie PC, bet matau klaidą if salygoje. Yra rašoma "a = 1 && b = 1 && c = 1 && d = 1 && e = 1 && f = 1" nors turi rašyti "a == 1 && b == 1 && c == 1 && d == 1 && e == 1 && f == 1" , gal viską sutvarkys.

 

Edit - paskaičiau sąlyga, pažiūrėjau tavo kodą. Neveiks. Daryk kitaip.

Redaguota , nario - Giedrius R.
  • Teigiamai 1
Nuoroda į komentarą
Dalintis per kitą puslapį

Kol kas ne prie PC, bet matau klaidą if salygoje. Yra rašoma "a = 1 && b = 1 && c = 1 && d = 1 && e = 1 && f = 1" nors turi rašyti "a == 1 && b == 1 && c == 1 && d == 1 && e == 1 && f == 1" , gal viską sutvarkys.

 

Edit - paskaičiau sąlyga, pažiūrėjau tavo kodą. Neveiks. Daryk kitaip.

Jo... Pataisiau į "==", nepatenkina sąlygos. O kuom naudotis (kokią metodiką naudoti) ???

Nuoroda į komentarą
Dalintis per kitą puslapį

#include <iostream>
using namespace std;


int main() 
{
   setlocale(LC_ALL, "Lithuanian");
   int a, b, c, d, e, f;


   cout<<"Ar galima važiuoti keliu a? "<<endl; cin>>a;
   cout<<"Ar galima važiuoti keliu b? "<<endl; cin>>b;
   cout<<"Ar galima važiuoti keliu c? "<<endl; cin>>c;
   cout<<"Ar galima važiuoti keliu d? "<<endl; cin>>d;
   cout<<"Ar galima važiuoti keliu e? "<<endl; cin>>e;
   cout<<"Ar galima važiuoti keliu f? "<<endl; cin>>f;




   if(a == 0 && b == 0 && c == 0 && d == 0 && e == 0 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else if(a == 0 && b == 0 && c == 0 && d == 0 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else if(a == 0 && b == 0 && c == 0 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else if(a == 0 && b == 0 && c == 1 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   else if(a == 0 && b == 1 && c == 1 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   else if(a == 1 && b == 1 && c == 1 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else cout << "Įvyko klaida!" << endl;
      
   return 0;
}

Viskas veikia man čia. Įdėjau pirmoje eilutėje lietuviškas raides, padariau iš = į == ir else if dadėjau. Bet jei nori geriasniam varijantui ir tu kažką nori rimčiau padaryti. Padaryk, kad kitokių skaičių nei 0 ar 1 negalėtų rašyti, prašytų iš naujo.

 

Ir nesupratau paskutinės cout eilutės, jei visur 1 tai važiuoti negalima? Tai kaip tik remontų nėra ir važiuoti galima įvariai.

Nuoroda į komentarą
Dalintis per kitą puslapį

#include <iostream>
using namespace std;


int main() 
{
   setlocale(LC_ALL, "Lithuanian");
   int a, b, c, d, e, f;


   cout<<"Ar galima važiuoti keliu a? "<<endl; cin>>a;
   cout<<"Ar galima važiuoti keliu b? "<<endl; cin>>b;
   cout<<"Ar galima važiuoti keliu c? "<<endl; cin>>c;
   cout<<"Ar galima važiuoti keliu d? "<<endl; cin>>d;
   cout<<"Ar galima važiuoti keliu e? "<<endl; cin>>e;
   cout<<"Ar galima važiuoti keliu f? "<<endl; cin>>f;




   if(a == 0 && b == 0 && c == 0 && d == 0 && e == 0 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else if(a == 0 && b == 0 && c == 0 && d == 0 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else if(a == 0 && b == 0 && c == 0 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else if(a == 0 && b == 0 && c == 1 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   else if(a == 0 && b == 1 && c == 1 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti galima." << endl;
   else if(a == 1 && b == 1 && c == 1 && d == 1 && e == 1 && f == 1)
      cout << "Iš taško A į tašką B patekti negalima." << endl;
   else cout << "Įvyko klaida!" << endl;
      
   return 0;
}

Viskas veikia man čia. Įdėjau pirmoje eilutėje lietuviškas raides, padariau iš = į == ir else if dadėjau. Bet jei nori geriasniam varijantui ir tu kažką nori rimčiau padaryti. Padaryk, kad kitokių skaičių nei 0 ar 1 negalėtų rašyti, prašytų iš naujo.

 

Ir nesupratau paskutinės cout eilutės, jei visur 1 tai važiuoti negalima? Tai kaip tik remontų nėra ir važiuoti galima įvariai.

 

Čia nėra logiškas sprendimas. Jei yra tik a kelias tai turi leisti važiuoti, o dabar suvedi 100000 ir išmeta "Įvyko klaida". Žodžiu pirma pabandyk, tada rašyk, nors matau, kad ir supranti kažkiek, bet žioplai praleidai.

Redaguota , nario - Giedrius R.
Nuoroda į komentarą
Dalintis per kitą puslapį

Čia nėra logiškas sprendimas. Jei yra tik a kelias tai turi leisti važiuoti, o dabar suvedi 100000 ir išmeta "Įvyko klaida". Žodžiu pirma pabandyk, tada rašyk, nors matau, kad ir supranti kažkiek, bet žioplai praleidai.

Tai žinau, kad mes, nes nebus sąlygos tokios.. Čia tiesiog tas else buvo kaip apsauga minimali, kad kitokių skaičių neirašytų. Bet jo supratau, kad netinka. :)

  • Teigiamai 1
Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3046 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Svečias
Ši tema yra užrakinta.
  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...