Witam mam mały problem dotyczący instrukcji wyboru switch...case...break;
Oto taki przykładowy kod - uwaga kod robiony na szybko i ma bardzo dużo błędów więc nie wypominajcie mi ich [green] :
#ifdef __BORLANDC__
#pragma argsused
#endif
#include <conio.h>
#include <iostream.h>
#include <math.h>
//------------------------------------------------------------------------------
trojmian(void)
{
float a, b, c;
float delta = b*b-4*a*c;
cout << "Wpisz liczbę A: ";
cin >> a;
cout << endl << "Wpisz liczbę B: ";
cin >> b;
cout << endl << "Wpisz liczbę C: ";
cin >> c;
cout << endl;
if (a == 0)
{
cout << "To nie jest równanie trójmianu kwadratowego ! ! ! " << endl;
}
cout << "Delta = (b^2)-(4*a*c)" << endl;
cout << "Delta = " << b*b << " - " << 4*a*c << endl;
cout << "Delta = " << b*b-4*a*c << endl;
if (delta < 0)
{
cout << "Brak pierwiastków trójmiana kwadratowego !" << endl;
}
else if (delta == 0)
{
double X0 = (-b)/(2*a);
cout << "Jest jeden pierwiastek rzeczywisty X0 = " << X0;
}
else if (delta > 0)
{
double X1 = (-b-sqrt(delta))/(2*a);
double X2 = (-b+sqrt(delta))/(2*a);
cout << "Są dwa pierwiastki rzeczywiste: " << endl;
cout << "X1 = " << X1;
cout << endl << "X2 = " << X2;
}
}
//------------------------------------------------------------------------------
about(void)
{
cout << "ppp";
cout << endl << "MitS";
}
//------------------------------------------------------------------------------
clos()
{
cout << "Kończenie działania programu..." << endl;
return 0;
}
//------------------------------------------------------------------------------
kalkulator()
{
float x, y, z;
char znak;
cout << "Wprowadź pierwszą liczbę: ";
cin >> x;
cout << endl << "Wprowadź drugą liczbę: ";
cin >> y;
cout << endl;
cout << "Wprowadź działanie: ";
cin >> znak;
switch(znak)
{
case '+':
z = x + y;
cout << "Wynikiem dodawania jest: " << z << endl;
break;
case '-':
z = x-y;
cout << "Wynikiem odejmowania jest: " << z << endl;
break;
case '*':
z = x*y;
cout << "Wynikiem mnożenia jest: " << z << endl;
break;
case '/':
z = x/y;
cout << "Wynikiem dzielenia jest: " << z << endl;
break;
default:
cout << "Błędne działanie ! ! !" << endl;
}
}
//------------------------------------------------------------------------------
petle(void)
{
double i=1, j, k, l = 2;
int q;
char znak;
//----------------
cout << "Pętla 'for': " << endl;
cout << endl;
for(q=0; q <= 100; q++)
{
cout << "Wynik pętli: " << q << endl;
}
//----------------
cout << "Nieskończona pętla 'for': " << endl;
cout << endl;
for(;;)
{
j = pow(i, 2);
cout << endl << "kwadrat " << i << " = " << j;
i++;
if (j >= 1000)
break;
}
//----------------
cout << "Instrukcja iteracyjna 'do...while': " << endl;
cout << endl;
do
{
znak = getche();
cout << endl << "Wczytano znak: " << znak << endl;
}
while (znak != 'x' && znak != 'X');
//----------------
cout << "Instrukcja iteracyjna 'while': " << endl;
cout << endl;
while (k = 10)
{
l += k;
cout << l << endl;
}
//----------------
cout << endl << endl << "Koniec !!! ";
}
//------------------------------------------------------------------------------
wybor(void)
{
char znak;
float cyfra;
cout << endl << "Wybierz odpowiednią pozycję: ";
cin >> znak;
switch(znak)
{
case '1':
kalkulator();
break;
case '2':
trojmian();
break;
case '3':
petle();
break;
case '4':
about();
break;
case '9':
clos();
break;
default:
cout << "Nieprawidłowa opcja !" << endl;
}
}
//------------------------------------------------------------------------------
int main( int argc, char * argv[] )
{
cout << "Wybierz odpowiednią propozycję" << endl;
cout << endl;
cout << "1. Kalkulator" << endl;
cout << "2. Trójmian kwadratowy" << endl;
cout << "3. Pętle" << endl;
cout << "4. O autorze" << endl;
cout << "9. Koniec" << endl;
wybor();
getch();
return 0;
}
//------------------------------------------------------------------------------
i chcĘ zrobić tak by jak się wywoła cyfrę 1 i przejdzie do kalkulatora to chcĘ by po skończeniu liczenia była funkcja, która czyści ekran i pokazuje od początku menu wyboru, a tego kalkulatora już nie. Jak to zrobić ???
A drugie pytanie: Jak zrobić by po wybraniu odpowiedniej opcji (np. 2) wyczyściło mi ekran wiersza poleceń i pokazało daną funkcję ktrórą robie (czyli trójmian kwadratowy) ???