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

Zwracanie wartości 0 przy wciśnięciu klawisza [C++]

Ostatnio zmodyfikowano 2016-11-08 22:29
Autor Wiadomość
Ketanol13
Temat założony przez niniejszego użytkownika
Zwracanie wartości 0 przy wciśnięciu klawisza [C++]
» 2016-11-08 22:15:58
Witam ,
Utworzyłem program, przy pomocy, którego po wpisaniu literki program zwraca k-tą literę po podanej.
Gdy użytkownik wciśnie spację podczas wpisywania danych powinno nastąpić wyjście z programu jednak tak się nie dzieje.
Proszę o sugestie co do błędu jaki popełniam.
Pozdrawiam

C/C++
#include <iostream>
#include <conio.h>


using namespace std;

char znak( char z, int k )
{
   
    char wynik;
    wynik = z + k;
    if( z == ' ' && k == ' ' )
         return 0;
    else
         return wynik;
   
}
int main()
{
   
    char e;
    int h;
    cout << "Podaj przesuniecie" << endl;
    cin >> h;
    cout << "Wprowadz znak" << endl;
    e = getch();
    cout << znak( e, h ) << endl;
   
   
    return 0;
   
}
P-153489
carlosmay
» 2016-11-08 22:29:54
Gdy użytkownik wciśnie spację podczas wpisywania danych powinno nastąpić wyjście z programu jednak tak się nie dzieje.
Kolejność działań jest niewłaściwa. Po wpisaniu danych, najpierw robisz operację, a później sprawdzasz czy to jest spacja.
Poza tym, ten warunek
C/C++
if( z == ' ' && k == ' ' )
 może być
true
 jeśli przesunięcie wyniesie 0 i znak będzie spacją.

edit: a i jeszcze
return 0;
 w funkcji nie powoduje opuszczenia programu.
P-153491
« 1 »
  Strona 1 z 1