c++ výber možnosti Ano/Nie v konzole...

Programovacie jazyky, rady, poradňa...
niko1007
Novice
Novice
Príspevky: 9
Registrovaný: 09 apr 2012, 13:01

c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa niko1007 »

Ahoj,
Učím sa v C++, no neviem si rady s výberom možnosti Ano/Nie.
napr.

"Chcete otvoriť notepad ? Ano/Nie"

Potrebujem vybrať jednu z možností, len zo šípkami a enterom, ako na to???
Dúfam, že ste pochopili čo myslím.... 8)

Dakujem
MeanSeriously
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 430
Registrovaný: 14 apr 2012, 15:07

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa MeanSeriously »

To ti nestačí podmientiť že ak A/a tak otvoríš, ak N/n tak neotvoríš, ak Q/q ukončíš program a ak nič z toho, pokračuješ v otázkach/alebo sa spýtaš ešte raz. Či to chceš mať tak graficky pekné? Tak ti rovno hovorím, ani to neštuduj. v živote to nevyužiješ. Radšej sa zaoberaj dôležitými vecami.
niko1007
Novice
Novice
Príspevky: 9
Registrovaný: 09 apr 2012, 13:01

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa niko1007 »

Nejako velmi graficky to nechcem, proste len ak dam tu čiarku pod Ano ,a stlačim enter, tak mi to otvorí notepad, ak dam pod Nie, tak to pokračuje dalej...
Písanim A alebo N som to riešil skôr, no chcem isť "vyššie"...
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa BX »

V C/C++ neexistuje nič ako "if keypressed"
Siahni po nejakej hernej knižnici - napr ncurses, alebo možno allegro by to mohla dokázať aj v konzole.
niko1007
Novice
Novice
Príspevky: 9
Registrovaný: 09 apr 2012, 13:01

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa niko1007 »

Mohlo by byť : <curses.h> ?
Ešte potrebujem jednu vec, mam program na vyberanie farieb v cmd, a farby tam vyberam tak, že použijem príkaz : system ("color xy"); namiesto xy sa zadavaju 2 hexidecimálne čisla, no neviem ako ich tam po ich načítaní vložiť, skúšal som : system("color" << a <<); no nefunguje to...vieš mi poradit? A este jedna vec, na konci programu je otazka, či tato farba vyhovuje a neviem, ako vratiť program späť na začiatok ako odpoveď je nie...

Vdaka
xadman
Medium Star
Medium Star
Príspevky: 305
Registrovaný: 09 mar 2011, 17:02

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa xadman »

Kód: Vybrať všetko

char vypis[80];
scanf("%d%c", &backround, &foreground);
sprintf(vypis, "COLOR %d%c", backround, foreground);
system(vypis);
//takto to je v C, v C++ si tam daj "cin"
Forsaken
King
King
Používateľov profilový obrázok
Príspevky: 1918
Registrovaný: 14 mar 2010, 0:39

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa Forsaken »

BX napísal:V C/C++ neexistuje nič ako "if keypressed"
Siahni po nejakej hernej knižnici - napr ncurses, alebo možno allegro by to mohla dokázať aj v konzole.
what? cez while ...

http://www.daniweb.com/software-develop ... re-pressed
niko1007
Novice
Novice
Príspevky: 9
Registrovaný: 09 apr 2012, 13:01

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa niko1007 »

Skusil som to takto :

Kód: Vybrať všetko

          char a[2];
          cin>> a;
          cout<< endl<<a<< endl;
          system ("color "a);
No nefunguje to, tak som skusil toto, no ani toto nefunguje :

Kód: Vybrať všetko

          char a[2];
          cin>> a;
          cout<< endl<<a<< endl;
          system ("color "<<a<<);
Vypiše to chybu : invalid operands of types ´const char[7]´ and ´char[2]´ to binary ´operator<<´ ...
A ten návrat programu nevieš ako???

Vdaka

//autoeditácia príspevku (02 Nov 2012, 20:11)
Už to mám :) Skúsil som to cez string...

Kód: Vybrať všetko

#include <iostream> 
#include <string> 
#include <sstream> 

using namespace std; 

int main() 
{ 

    stringstream    ss; 
    string          result, cislo1, cislo2; 

    cislo1 = "A"; 
    cislo2 = "2"; 

    ss << "color " << cislo1 << cislo2; 
    result = ss.str(); 

    cout << result;
    system( result.c_str() ); 
    system ("PAUSE");
    return 0; 
    
}
Ešte by som potreboval pomôcť s tým návratom, ak mi môžte pomôcť...
MeanSeriously
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 430
Registrovaný: 14 apr 2012, 15:07

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa MeanSeriously »

niko1007 napísal:Nejako velmi graficky to nechcem, proste len ak dam tu čiarku pod Ano ,a stlačim enter, tak mi to otvorí notepad, ak dam pod Nie, tak to pokračuje dalej...
Písanim A alebo N som to riešil skôr, no chcem isť "vyššie"...
pozri, sú to prkotiny, zaoberaj sa skôr logickou časťou programu a predpokladaj že uživateľ zadá správne dáta. A potom pôjdeš na nejaké API, kde si už budeš aj vstup od uživateľa kontrolovať, aj to bude pekné. Teraz pri konzole rob tak, ako som ti odporúčal.
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa Viper »

Pravdepodobne to myslel tak, že čisto v C, C++ niesu eventy. Napr. ako by si urobil šípku hore?
Forsaken
King
King
Používateľov profilový obrázok
Príspevky: 1918
Registrovaný: 14 mar 2010, 0:39

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa Forsaken »

Viper napísal: Pravdepodobne to myslel tak, že čisto v C, C++ niesu eventy. Napr. ako by si urobil šípku hore?

ja som reagoval na toto " V C/C++ neexistuje nič ako "if keypressed" " co je hovadina... kedze sa to da osetrit jednoduchymi cyklami...

ja niesom programator... ale sam mam na disku vlastnorucne napisany program, ktory ovladas sipkami... a nepouzivam tam ziadne vyssie spomenute kniznice ale asi 10riadkovy vygoogleny kod na ovladanie sipkami... s pouzitim zachytenia znaku ako vystupu pri stlaceni hocijakej klavesy..
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: c++ výber možnosti Ano/Nie v konzole...

Príspevok od používateľa BX »

Myslel som to tak, ako písal Viper. A mám vlastne aj pravdu, len som sem dal už dosť krutý príklad. Pritom naozaj stačí použiť knižnicu conio.h, ktorá ale tiež nie je súčasťou štandardného Cčka :)
Napísať odpoveď