Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z if.

Ostatnio zmodyfikowano 2010-01-03 18:41
Autor Wiadomość
Bartaz
Temat założony przez niniejszego użytkownika
Problem z if.
» 2010-01-03 18:07:17
Napisałem sobie taką jakby symulacje jazdy samochodem ( bedzie więcej :D)
I powinno być ,że bieg bieg 3 wyświetla się po 30km/h a wyświetla się dopiero
przy 50km/h , napewno coś pomieszałem z if ale nie mogę znaleźć ,czy ktoś widzi
gdzie jest błąd?
Kod:
C/C++
#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace std;
int main()
{
    //// pre-predkosc
    int pre = 0;
    int bieg_pierwszy = 10;
    int bieg_drugi = 30;
    int bieg_trzeci = 50;
    int bieg_czwarty = 70;
    int bieg_piaty = 90;
    int max_predkosc = 90;
    start:
    SetConsoleTextAttribute( GetStdHandle( STD_OUTPUT_HANDLE ), FOREGROUND_GREEN | FOREGROUND_INTENSITY );
   
    cout << "           Predkosc: " << pre << "km/h" << endl;
    ////////////////////////////
    cout << "           Bieg" << endl;
    /////////////////////////////
    if(( pre < bieg_pierwszy ) &&( bieg_pierwszy < bieg_drugi ) )
         cout << "           1" << endl;
    ////////////////////////////
    else if((( pre > bieg_pierwszy ) &&( bieg_drugi < bieg_trzeci ) &&( pre < bieg_trzeci ) ) )
         cout << "           2" << endl;
    /////////////////////////////
    else if((( pre > bieg_drugi ) &&( bieg_trzeci < bieg_czwarty ) &&( pre < bieg_czwarty ) ) )
         cout << "           3" << endl;
    ///////////////////////////
    else if(( pre > bieg_trzeci ) &&( pre < bieg_piaty ) )
         cout << "           4" << endl;
    /////////////////////////
    else if( pre > bieg_czwarty )
         cout << "           5" << endl;
    //////////////////////////////
    char klawisz;
    klawisz = getch();
    switch( klawisz )
    {
    case 'w':
        Sleep( 100 );
        system( "cls" );
        pre = pre + 1;
        goto start;
        break;
    case 's':
        Sleep( 10 );
        system( "cls" );
        pre = pre - 1;
        goto start;
        break;
    case 'a':
        Sleep( 1000 );
        system( "cls" );
        pre = pre - 5;
        goto start;
        break;
    }
    system( "PAUSE" );
    return( 0 );
}
P-12687
GoldWolf
» 2010-01-03 18:41:06
Jedno z proponowanych rozwiązań:
C/C++
if(( pre <= bieg_pierwszy ) )
     cout << "           1" << endl;
////////////////////////////
else if((( pre > bieg_pierwszy ) &&( pre <= bieg_drugi ) ) )
     cout << "           2" << endl;
/////////////////////////////
Źle opisałeś zmienne od 0 do 10 jest pierwszy bieg, drugi bieg to już 11 - 30 itd.
P-12690
« 1 »
  Strona 1 z 1