• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dopiero się uczę, chciałbym się dowiedzieć jak użyć jednego polecenia.

Object Storage Arubacloud
0 głosów
435 wizyt
pytanie zadane 20 września 2017 w C i C++ przez Querzi Nowicjusz (160 p.)
Witam, dopiero się uczę programowanie. Wiedzę czerpię z kursu C++ dla początkujących na YouTube.

Zrobiłem menu wyboru gdzie trzeba podać liczbę od jednego do dziesięciu, każda liczba jest przypisana do innego polecenia, ale chciałbym aby moja liczba po wpisaniu nie czekała aż zaakceptuje ją enterem, a po prostu po wciśnięciu już samej liczby ona się nawet nie pojawi, a po prostu przeniesie mnie do polecenia.

liczba jest zapisana w zmiennej typu int.

Mam nadzieję, że podałem wszystkie informacje
komentarz 20 września 2017 przez vector Dyskutant (9,200 p.)
Na jaką platformę chcesz to napisać ?
komentarz 20 września 2017 przez Querzi Nowicjusz (160 p.)
Code::Blocks

Jeśli o to pytasz.
komentarz 20 września 2017 przez Patrycjerz Mędrzec (192,320 p.)
edycja 21 września 2017 przez event15

Platforma docelowa programu to sprzęt i system, nie zaś IDE, w którym piszesz.

Można się domyśleć domyślić, że sprzętem jest PC. Pytanie więc dotyczyło jedynie systemu: Windows, Linux, macOS?

komentarz 20 września 2017 przez Querzi Nowicjusz (160 p.)
Piszę na systemie Windows.
komentarz 20 września 2017 przez 10kw10 Pasjonat (22,880 p.)
ogladnij 6 odcinek, tam jest pokazana funkcja getch();
komentarz 20 września 2017 przez Querzi Nowicjusz (160 p.)
A ona nie tyczy się zmiennej char tylko?
komentarz 21 września 2017 przez jpacanowski VIP (101,940 p.)
getch() zwraca typ integer.

1 odpowiedź

–1 głos
odpowiedź 20 września 2017 przez Querzi Nowicjusz (160 p.)
edycja 20 września 2017 przez Patrycjerz
rasa = getch();
    switch(rasa)
    {
    case 1:
        cout << "Wybrales Czlowieka." << endl;
        rasaWybor = "Rasa: Czlowiek";
        break;
    case 2:
        cout << "Wybrales Elfa." << endl;
        rasaWybor = "Rasa: Elf";
        break;
    case 3:
        cout << "Wybrales Krasnoluda." << endl;
        rasaWybor = "Rasa: Krasnolud";
        break;
    default:
        cout << "Nie ma takiej klasy, wybierz jeszcze raz." << endl;
    }
  }while((rasa <=0)||(rasa >3));
komentarz 20 września 2017 przez Querzi Nowicjusz (160 p.)
Gdy wpisuje w taki sposob, nie wazne jaka liczbe podam, przekierowuje mnie do "Nie ma takiej klasy, wybierz jeszcze raz." i pętla się powtarza.

W przypadku cin wszystko działa jak należy, ale chodzi mi o ten efekt który opisałem wcześniej.
komentarz 20 września 2017 przez Patrycjerz Mędrzec (192,320 p.)
Zamknij cyfry przy case apostrofami, np. case '1'.
komentarz 20 września 2017 przez Querzi Nowicjusz (160 p.)
Teraz natomiast pętla się powtarza bo jest to znak a nie liczba. Właśnie dlatego zależy mi na tym aby był to int, po prostu na razie nie wiem jak przebudować pętle aby tak reagowała lecz z warunkiem który zawiera char. Jedynie czego jestem ciekaw, to czy jest takie polecenie jak getch(); ale dla typu int.
komentarz 20 września 2017 przez Patrycjerz Mędrzec (192,320 p.)
Pozamykaj cyfry również w warunku pętli.
komentarz 20 września 2017 przez Querzi Nowicjusz (160 p.)
Ciekawe, nie wiedziałem, że operator porównania działa również na typ char. Dziękuję bardzo za poświęcenie mi czasu, działa :)
komentarz 20 września 2017 przez Patrycjerz Mędrzec (192,320 p.)
Operatory porównania działają również dla znaków, gdyż one też są liczbami, ale w postaci kodu ASCII. Jako iż cyfry w tabeli ASCII występują po sobie w kolejności od 0 do 9, możliwe jest porównanie cyfr w postaci znaków tak samo jak cyfr w postaci arytmetycznej.

Podobne pytania

0 głosów
0 odpowiedzi 395 wizyt
0 głosów
1 odpowiedź 554 wizyt
–1 głos
1 odpowiedź 228 wizyt

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...