Gå til innhold

Hvordan legge til svar alternativ


Anbefalte innlegg

Hei.

 

Jeg begynte å programmere litt tidligere idag, så det er fint hvis svarene er lettfattelige!:p

 

Jeg kan vel begynne med det jeg har laget:

 

//Første programmet mitt

 

#include <iostream>

 

#include <string>

 

 

 

using namespace std;

 

 

 

int main ()

 

{

 

    string user_first_name;

 

    cout <<"Please enter your first name: ";

 

    cin >> user_first_name;

 

    string user_last_name;

    cout <<"Last name: ";

    cin >> user_last_name;

 

 

    cout <<'\n';

 

    cout <<"Hello ";

 

 

    cout << user_first_name;

    cout << " ";

    cout << user_last_name;

 

    cout << " . Thank you, you're hacked:) \n";

    cout << "Do you want a question (Y/N) ? : " ;

 

    return 0;

}

 

Nå.. hvordan skal jeg legge til at hvis han svarer Y så får han et spørsmål, og N så avsluttes programmet?

Lenke til kommentar
Videoannonse
Annonse

#include <iostream>
#include <string>

using namespace std;

int main()
{
   cout << "Enter your first name: ";
   string name;
   cin >> name;  //Hvis du vil gjøre det mulig for brukeren å taste inn hele 
                          //navnet sitt bytter du ut cin >> name; med: getline(cin, name);

   //...

   cout << "Do you want a question (Y/N)?:";
   char answer;
   cin >> answer;

   if(answer == 'Y') {
       // Brukeren svarte Y, gjør hva du vil her 
    }
    
    else if(answer == 'N') {
         //Brukeren svarte N, gjør hva du vil her
    }

    return 0;
}

 

Noe slikt du mente?

Endret av zirener
Lenke til kommentar
int main ()

 

{

 

 

string user_first_name;

 

    cout <<"Please enter your first name: ";

 

    cin >> user_first_name;

 

string user_last_name;

cout <<"Last name: ";

cin >> user_last_name;

 

 

    cout <<'\n';

 

    cout <<"Hello ";

 

 

    cout << user_first_name;

    cout << " ";

    cout << user_last_name;

 

    cout << " . Thank you! So you think you're so god damn smart?! Hm? \n";

    cout << "Do you want a quiz then (Y/N)?:";

    char answer;

cin >> answer;

 

if(answer == 'Y') {

cout <<"\n What is 2+2? \n";

char answer;

cin >> answer;

}

  if(answer == '4') {

  cout << "\n Congratulations.. You're smart after all";

  cout << user_first_name;

  cout << "!";

}

else if(answer == 'N') {

cout <<"Sorry.. You're stupid!\n";

}

 

    return 0;

}

 

Mange takk du:)

 

EDIT: Okai, finner jeg litt utav det selv nå:) det er jo dritgøy å programmere! Men nå sliter jeg litt, for når jeg svarer 4, så kommer ikke "Congratulations..." linjen. Ser noen feilen?

Endret av foglest
Lenke til kommentar

#include <iostream>
#include <string>

using namespace std;

int main ()

{

string user_first_name;

   cout <<"Please enter your first name: ";

   cin >> user_first_name;

string user_last_name;
cout <<"Last name: ";
cin >> user_last_name;


   cout <<'\n';

   cout <<"Hello ";


   cout << user_first_name;
   cout << " ";
   cout << user_last_name;

   cout << " . Thank you! So you think you're so god damn smart?! Hm? \n";
   cout << "Do you want a quiz then (Y/N)?:";
   char answer;
cin >> answer;

if(answer == 'Y') {
cout <<"\n What is 2+2? \n";
char answer;
cin >> answer;

// } <-- Fjerna, plasserte den lengere nedenfor

 if(answer == '4') {
 cout << "\n Congratulations.. You're smart after all";
 cout << user_first_name;
 cout << "!";
}
else if(answer == 'N') {
cout <<"Sorry.. You're stupid!\n";
}
}     //Satt denne her, istedenfor lengere oppe.

   return 0;
}

Det som er, er det at du har to answer variabler. Den du gjør if(answer == '4'), er en annen enn den du leser inn svaret av 2+2 til. :)

Lenke til kommentar

Tusen takk! Du er til veldig stor hjelp altså:)! Er skikkelig gira på c++ nå :!: Men jeg har et til problem når jeg legger til flere spørsmål, også vet jeg ikke hvor "else if" til de neste spørsmålene skal være.. kan du hjelpe med det også?

 

//Første programmet mitt

 

#include <iostream>

 

#include <string>

 

 

 

using namespace std;

 

 

 

int main ()

 

{

 

 

string user_first_name;

 

    cout <<"Please enter your first name: ";

 

    cin >> user_first_name;

 

string user_last_name;

cout <<"Last name: ";

cin >> user_last_name;

 

 

    cout <<'\n';

 

    cout <<"Hello ";

 

 

    cout << user_first_name;

    cout << " ";

    cout << user_last_name;

 

    cout << " . Thank you! So you think you're so god damn smart?! Hm? \n";

    cout << "Do you want a quiz then (Y/N)?:";

    char answer;

cin >> answer;

 

if(answer == 'Y') {

cout <<"\n What is 2+2? \n";

char answer;

cin >> answer;

 

  if(answer == '4') {

  cout <<"\n Nice! But what about 100*10? \n";

 

 

  if(answer == '1000'( {

  cout <<"\n You're to smart! You win! \n";

}

}

}

else if(answer == 'N') {

cout <<"Sorry.. You're stupid!\n";

}

 

    return 0;

}

Lenke til kommentar

Dersom du bruker skikkelig indentering (altså innrykk) når du koder, så vil ikke dette være et problem. Da vil du se naturlig hvor neste blokk skal være.

Eks:

#include <iostream>

using namespace std;

int main() {
 if(...) {
   if(...) {
     cout << "hei!" << std::endl;
   }
   else if(...) {
     cout << "Hei2!" << std::endl;
   }
 }
 else {
   cout << "ikke hei!" << std::endl;
 }
}

Vet ikke om dette hjalp så mye, men du burde kunne se naturlig utifra koden hvilken "else" som hører til hvilken if.

Endret av Nazgul
Lenke til kommentar

JAA :w00t: Tror jeg er ferdig nå!

 

//Første programmet mitt

 

#include <iostream>

 

#include <string>

 

 

 

using namespace std;

 

 

 

int main ()

 

{

int score;

score=0;

 

string user_first_name;

 

    cout <<"Please enter your first name: ";

 

    cin >> user_first_name;

 

string user_last_name;

cout <<"Last name: ";

cin >> user_last_name;

 

 

    cout <<'\n';

 

    cout <<"Hello ";

 

 

    cout << user_first_name;

    cout << " ";

    cout << user_last_name;

 

    cout << " . Thank you! So you think you're so god damn smart?! Hm? \n";

    cout << "Do you want a quiz then (Y/N)?:";

    char answer;

cin >> answer;

 

if((answer == 'Y') or (answer== 'y')) {

cout <<"\n What is 2+2? ";

char answer;

cin >> answer;

  if(answer=='4'){

  cout << "\n So far, so good \n";

  score++;

  cout << score;

  cout <<"/3\n";

  cout << "\n But can you do 100*10? ";

  string answer;

  cin >> answer;

 

  if(answer == "1000"){

  cout <<"\n Okay, you're smart. But lets do it harder!\n";

  score++;

  cout << score;

  cout << "/3\n";

  cout <<"\n So,";

  cout << user_first_name;

  cout << "... You're doing good. But what is the bit in hexadesimal numbers?:";

  string answer;

  cin >> answer;

  if(answer=="16"){

  cout <<"Okay, you're doing good!";

  score++;

  cout << score;

  cout <<"/3\n";

}

  else{

  cout <<"\n Haha, That's wrong! You're stupid! \n";

  cout << score;

  cout << "/3\n";

  cout <<"\n";

}

  else{

  cout <<"\n Haha, that's wrong! You're stupide! \n";

  cout << score;

  cout << "/3\n";

  cout <<"\n";

}

}

  else{

  cout <<"\n Haha, that's wrong! You're stupid! \n";

  cout << score;

  cout << "/3\n";

  cout <<"\n";

}

}

else{

cout <<"\n \n Are you scared?!?!? \n ";

cout << score;

cout << "/3\n";

cout << "\n";

}

 

    return 0;

}

 

Og slik endte mitt første program:) virker helt fint.. Fikk en del hjelp fra en kamerat, men lærte iallerfall veldig mye synes jeg:p Er det noe dere synes var teit gjort, og burde gjort anderledes? Eller noe jeg burde lagt til?

 

Takk til dere som hjalp meg her :D

Endret av foglest
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...