Witam, niedawno zacząłem programować w moim pierwszym języku czyli C++. Aktualnie jestem na 6 odc. kursu C++ na kanale "Pasja Informatyki".
Ostatnio stworzyłem dwa programy, jeden to kalkulator, drugi oblicza objętości figur. Postanowiłem połączyć go w jeden. Poniżej wklejam efekty mojej pracy. Prawdopodobnie złapiecie się za głowę, bo ma mnóstwo błędów, na które starsi programiści by sobie nie pozwolili. Proszę o opinię oraz co mógłbym zmienić. W przyszłości chciałbym dodać tu jeszcze więcej programów np. Obliczanie pola itp. Chciałbym także dodać taką opcję, że kiedy już wejdę do kalkulatora to po wydrukowaniu wyniku nadal pozostaje w kalkulatorze a nie wchodzę ponownie do Menu.
#include <iostream>
#include <conio.h>
#include <math.h>
#include <ostream>
#include <cmath>
void kalkulator()
{
system("cls");
int choice;
float a, b;
std::cout << " MENU GLOWNE\n";
std::cout << "-----------------\n";
std::cout << "1. Dodawanie\n";
std::cout << "2. Odejmowanie\n";
std::cout << "3. Mnozenie\n";
std::cout << "4. Dzielenie\n";
std::cout << "5. Pierwiastkowanie\n";
std::cout << "6. Potegowanie\n";
std::cout << "\nCo wybierasz[0-6]? ";
choice = getch();
switch (choice) {
case '1':
system("cls");
std::cout << "======[Dodawanie]======\n\n";
std::cout << "Podaj 1 liczbe: ";
std::cin >> a;
std::cout << "Podaj 2 liczbe: ";
std::cin >> b;
std::cout << "===================\n";
std::cout << "\n Suma: " << a + b;
std::cin.ignore();
getchar();
system("cls");
break;
case '2':
system("cls");
std::cout << "======[Odejmowanie]======\n\n";
std::cout << "Podaj 1 liczbe: ";
std::cin >> a;
std::cout << "Podaj 2 liczbe: ";
std::cin >> b;
std::cout << "===================\n";
std::cout << "\n Roznica: " << a - b;
std::cin.ignore();
getchar();
system("cls");
break;
case '3':
system("cls");
std::cout << "======[Mnozenie]======\n\n";
std::cout << "Podaj 1 liczbe: ";
std::cin >> a;
std::cout << "Podaj 2 liczbe: ";
std::cin >> b;
std::cout << "===================\n";
std::cout << "\n Iloczyn: " << a * b;
std::cin.ignore();
getchar();
system("cls");
break;
case '4':
system("cls");
std::cout << "======[Dzielenie]======\n\n";
std::cout << "Podaj 1 liczbe: ";
std::cin >> a;
std::cout << "Podaj 2 liczbe: ";
std::cin >> b;
std::cout << "\n Iloraz: " << a / b;
std::cin.ignore();
getchar();
system("cls");
break;
case '5':
system("cls");
std::cout << "======[Pierwiastkowanie]======\n\n";
std::cout << "Podaj stopien pierwiastka: ";
std::cin >> b;
std::cout << "Podaj liczbe ktora bedzie pierwiastkowana: ";
std::cin >> a;
std::cout << "===================\n";
std::cout << "Wynik wynosi: " << pow(a, (1 / b));
std::cin.ignore();
getchar();
system("cls");
break;
case '6':
system("cls");
std::cout << "======[Potegowanie]======\n\n";
std::cout << "Podaj liczbe ktora bedzie potegowana: ";
std::cin >> a;
std::cout << "Podaj potege: ";
std::cin >> b;
std::cout << "===================\n";
std::cout << "Wynik wynosi: " << pow(a, b);
std::cin.ignore();
getchar();
system("cls");
break;
}
}
void v_figur()
{
int wybor;
float pp, h, r;
system("cls");
std::cout << " MENU GlOWNE\n";
std::cout << "--------------------------\n";
std::cout << "1. V czworoscianu foremnego\n";
std::cout << "2. V ostroslupa czworokatnego\n";
std::cout << "3. V ostroslupa prawidlowego czworokatnego\n";
std::cout << "4. V szescianu\n";
std::cout << "5. V graniastoslupa trojkatnego\n";
std::cout << "6. V graniastoslupa prawidlowego pieciokatnego\n";
std::cout << "7. V walca\n";
std::cout << "8. V stozka\n";
std::cout << "9. V kuli\n\n";
std::cout << "Co wybierasz?[0-9]: ";
wybor = getch();
switch (wybor) {
case '1':
system("cls");
std::cout << "======[Objetosc czworoscianu foremnego]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc czworoscianu foremnego V= " << 0.33 * pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '2':
system("cls");
std::cout << "======[Objetosc ostroslupa czworokatnego]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc ostroslupa czworokatnego V= " << 0.33 * pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '3':
system("cls");
std::cout << "======[Objetosc ostroslupa prawidlowego czworokatnego]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc ostroslupa prawidlowego czworokatnego V= " << 0.33 * pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '4':
system("cls");
std::cout << "======[Objetosc szescianu]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc szescianu V= " << pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '5':
system("cls");
std::cout << "======[Objetosc graniastoslupa trojkatnego]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc graniastoslupa trojkatnego V= " << pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '6':
system("cls");
std::cout << "======[Objetosc graniastoslupa prawidlowego pieciokatnego]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc graniastoslupa prawidlowego pieciokatnego V= " << pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '7':
system("cls");
std::cout << "======[Objetosc walca]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc walca V= " << pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '8':
system("cls");
std::cout << "======[Objetosc stozka]======\n\n";
std::cout << "Podaj pole podstawy pp= ";
std::cin >> pp;
std::cout << "Podaj wysokosc h= ";
std::cin >> h;
std::cout << "==========================================\n";
std::cout << "Objetosc stozka V= " << 0.33 * pp * h;
std::cin.ignore();
getchar();
system("cls");
break;
case '9':
system("cls");
std::cout << "======[Objetosc kuli]======\n\n";
std::cout << "Podaj promien r= ";
std::cin >> r;
std::cout << "==========================================\n";
std::cout << "Objetosc kuli wynosi V= " << 4 / 3 * M_PI * r * r * r;
std::cin.ignore();
getchar();
system("cls");
break;
default:
std::cout << "\n\nNie ma takiej opcji w Menu Glownym :(";
getchar();
system("cls");
}
}
int main()
{
int wybor;
system("cls");
std::cout << "Autor: Jakub Jagodzinski\n\n";
do {
std::cout << " MENU GLOWNE\n";
std::cout << "===================\n";
std::cout << "0. Zamknij\n";
std::cout << "1. Kalkulator\n";
std::cout << "2. Obliczanie V Figur\n";
std::cout << "====================\n";
std::cout << "Co wybierasz [0-2]? ";
wybor = getch();
switch (wybor) {
case '1':
kalkulator();
break;
case '2':
v_figur();
break;
}
} while (wybor = 0);
}