michal_s Napisano 13 Listopada 2004 Zgłoś Napisano 13 Listopada 2004 Mam dwa pytania. Jak napisac proste menu wyboru w jezuky C ? moze z wykozystaniem instrukcji switch ? Chopdzi mi o to ze npo zdeklarowaniu klawisza d i po jego wybraniu z klawiatury bedzie sie wykonywac jakas funkcja np doawania a+b, po wybraniu o bezie sie wykonywac funkcja odejmowania a-b itd. Drugie pytanie. Jak napisac program ktory by zliczal nawiasy otwarte { i zamkniete } w jakims kodzie C. Bylo by to bardzo przydatne. Znajocych sie na rzeczy prosze o odpowiedz. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
Polar Napisano 13 Listopada 2004 Zgłoś Napisano 13 Listopada 2004 Jeśli zadanie ma być w ANSI C no to pierwsze może być np. tak : #include <conio.h>#include <stdio.h>int dodawanie(void);int odejmowanie(void);//------------------------------------------------------------------------------int main(){ char i; printf("wcisnij 'o' dla odejmowania 'd' dla dodawania :"); while( (i = getch())!=27 ) { switch(i) { case 'd': dodawanie(); break; case 'o': odejmowanie(); break; default : printf("nzly wybor"); } }return 0;}//------------------------------------------------------------------------------int dodawanie(void){ int a = 2 , b = 8; printf("na + b = %i" , a+b); return 1;}//------------------------------------------------------------------------------int odejmowanie(void){ int a = 2 , b = 8; printf("na - b = %i" , a-b); return 2;}//------------------------------------------------------------------------------ Naciśnięcie ESC kończy program. (Chociaż nie mam pewności czy jest on w 100% zgodny z ANSI C) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
michal_s Napisano 13 Listopada 2004 Zgłoś Napisano 13 Listopada 2004 no super mniej wiecej o to mi chodzilo, tylko mogl bys mi wyjasnic ta linijke: char i;while( (i = getch())!=27 )a najbardziej mnie interesuje co robi ta liczba !=27 ? Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
sp00n Napisano 13 Listopada 2004 Zgłoś Napisano 13 Listopada 2004 no super mniej wiecej o to mi chodzilo, tylko mogl bys mi wyjasnic ta linijke: char i;while( (i = getch())!=27 )a najbardziej mnie interesuje co robi ta liczba !=27 ? i = getch() pobiera 1 znak z klawiatury i podstawia go pod zmienną i. sama operacja podstawienia zwraca podstawianą wartość czyli (i = getch())!=27 ) "zamienia" się na i != 27 tu następuje rutowanie typu char na int i sprawdzenie czy kod znaku w zmiennej i jest różny od 27 (kod escape). Ale zamotałem :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
michal_s Napisano 13 Listopada 2004 Zgłoś Napisano 13 Listopada 2004 no ok a jak np to 27 zmienie na inna liczbe to co wtedy ? Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
sp00n Napisano 13 Listopada 2004 Zgłoś Napisano 13 Listopada 2004 pętla bedzie się kończyć gdy wciśniesz przycisk którego kod ascii bedzie sie równał tej liczbie. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...