// ConsoleApplication3.cpp: Określa punkt wejścia dla aplikacji konsoli.
//
#include "stdafx.h"
#include <iostream>
#include <Windows.h>
#include <cstdlib>
#include <time.h>
#include <conio.h>
#include <math.h>
using namespace std;
int main()
{
cout << "Kalkulator, wersja [4].[2] v[3]" << endl;
cout << "Wcisnij klawisz zeby przejsc dalej! ";
getch();
system("cls");
int menu, silna, y;
cout << "Menu wyboru: " << endl;
cout << "[1.] Silna !a " << endl;
cout << "[2.] Potegowanie" << endl;
cout << "[3.] Wartosc bezwzgledna |x|" << endl;
cout << "[4.] Rownanie liniowe" << endl;
cout << "[5.] Rownanie kwadratowe" << endl;
cout << "[6.] Pola: " << endl;
cout << "Wybierz: ";
cin >> menu;
system("cls");
switch (menu)
{
case 1:
{
int s;
long long silnia = 1;
cout << "Wybrano opcje: Silna !a" << endl;
cout << "Podaj liczbe: ";
cin >> s;
for (int i = 1; i <= s; i++)
{
silnia *= i;
}
cout << "Silna z " << s << " to " << silnia << endl;
break;
}
case 2:
{
int a, b;
cout << "Wybrano opcje: Potegowanie" << endl;
cout << "Wpisz liczbe: ";
cin >> a;
cout << "Wpisz wykladnik: ";
cin >> b;
cout << "Wynik to " << pow(a, b) << endl;
break;
}
case 3:
{
int a, x;
cout << "Wybrano opcje: Wartosc bezgwzgledna |x|" << endl;
cout << "Podaj liczbe: ";
cin >> a;
x = a * (-1);
cout << "Wartosc bezwzgledna z |" << a << "| to " << x << endl;
break;
}
case 4:
{
double a, b, x;
cout << "Wybrano opcje: Rownanie liniowe" << endl;
cout << "Podaj a: ";
cin >> a;
cout << "Podaj b: ";
cin >> b;
if (a == 0 && b == 0) { cout << "Nieskonczenie wiele rozwiazan" << endl; }
if (a == 0 && b != 0) { cout << "Brak rozwiazan!" << endl; }
else
{
x = -b / a;
cout << "Wynik rownania liniowego to: " << x << endl;
}
break;
}
case 5:
{
int a, b, c, x, delta;
cout << "Wybrano opcje: Rownanie kwadratowe" << endl;
cout << "Podaj a: ";
cin >> a;
cout << "Podaj b: ";
cin >> b;
cout << "Podaj c: ";
cin >> c;
delta = (b*b) - 4 * a * c;
cout << "Delta wynosi " << delta << endl;
if (delta < 0) { cout << "Brak rozwiazania, delta jest ujemna!" << endl; }
if (delta == 0) { int x1; x1 = (-b) / 2 * a; cout << "Wynik wynosi x1= " << x1 << endl; }
if (delta > 0)
{
int x1, x2;
x1 = ((-b) - sqrt(delta)) / 2 * a;
x2 = ((-b) + sqrt(delta)) / 2 * a;
cout << "Wynik wynosi: " << endl;
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
}
break;
}
case 6:
{
int wybor;
cout << "Jakie pole chcesz obliczyc?" << endl;
cout << "[1.] Pole kwadratu" << endl;
cout << "[2.] Pole prostokatu" << endl;
cout << "[3.] Pole trojkata" << endl;
cout << "[4.] Pole kola" << endl;
cout << "Wybierz: ";
cin >> wybor;
system("cls");
switch (wybor)
{
case 1:
{
int a, x;
cout << "Wybrales opcje: Wylicz pole kwadratu" << endl;
cout << "Podaj bok: ";
cin >> a;
x = a * a;
cout << "Pole kwadratu wynosi " << x << endl;
break;
}
case 2:
{
int a, b, x;
cout << "Wybrales opcje: Wylicz pole prostokata" << endl;
cout << "Podaj bok a: ";
cin >> a;
cout << "Podaj bok b: ";
cin >> b;
x = a * b;
cout << "Pole prostokata wynosi " << x << endl;
break;
}
case 3:
{
int a, h, x;
cout << "Wybrales opcje: Wylicz pole trojkata" << endl;
cout << "Podaj bok a: ";
cin >> a;
cout << "Podaj bok h: ";
cin >> h;
x = (a*h) / 2;
cout << "Pole trojkata wynosi " << x << endl;
break;
}
case 4:
{
int r, pi, x;
pi = 3.14;
cout << "Wybrales opcje: Wylicz pole kola" << endl;
cout << "Podaj promien kola: ";
cin >> r;
x = pi * (r*r);
cout << "Pole kola wynosi " << x << endl;
break;
}
}
}
default:
{
cout << "Konsola zostanie zamknieta za 2 sekundy!" << endl;
Sleep(2000);
return 0;
break;
}
}
system("PAUSE");
return EXIT_SUCCESS;
}
Jest opcja aby można było się cofać? Np. Wybieram obliczanie polu kwadratu, wykonuje działanie a później wracam do menu? Pętla do, while?