[C++] Program z kilku .cpp


(Maciek Hooch) #1

Napisałem 3 programy do obliczania objętości i powieszchni brył. Walca Storzka kuli.

Każdy program mam w jednym pliku .cpp Taki jak ten poniżej.

Chciałem napisać jeszcze plik main.cpp który będzie miał w sobie tylko instrukcje switch z trzema możliwościami.

Kardza z tych możliwości ma uruchomić inny program. Pliki nazwałem kolejno. kula.cpp walec.cpp stozek.cpp. Jak ma wyglądać zawartość tego pliku main.cpp?

#include 

#include 

using namespace std;


const double pi = 3.14159265;


double pole(double r){

 double pole = 4*pi*(r*r);

 return pole;

}


double objetosc(double r){

 double objetosc = ((4/3)*pi*(r*r));

 return objetosc; 

}


void main(){

cout << "KULA" << endl;

cout << "----" << endl << endl;

int opcja;

cout << "Wpisz numer wyboru i zatwierdz enterem" << endl << endl;

cout << "-----------" << endl;

cout << "1. Pole" << endl;

cout << "2. Objetosc" << endl;

cout << "3. Zakoncz" <
cout << "-----------" << endl;

cout << "Wybor: ";

cin >> opcja;

system("cls");


switch(opcja){

 case 1: 

	cout << "KULA - POLE" << endl;

	cout << "-----------" << endl << endl;

	cout << "R = ";

	double r;

	cin >> r;

	cout << "Pole kuli o promirniu R = " << r << " wynosi " << pole(r) << endl;

	cout << "Kliknij dowolny klawisz aby kontynuowac.";

	break;


 case 2:

	cout << "KULA - OBJETOSC" << endl;

	cout << "---------------" << endl << endl;

	cout << "R = ";

	double rv;

	cin >> rv;

	cout << "Objestos kuli o promirniu R = " << rv << " wynosi " << objetosc(rv) << endl;

	cout << "Kliknij dowolny klawisz aby kontynuowac.";

	break;

 case 3:

	cout << "DZIEKUJE ZA KORZYSTANIE Z MOJEGO PROGRAMU." << endl;

	cout << "Autor: Maciej Kusnierz" << endl;

	cout << "maciek.hooch@gmail.com" << endl;

	cout << "v.1.1" << endl;

	cout << "Nacisnij dowolny klawisz aby zakonczyc." << endl;

	getch();

	exit(0); 

}

 getch();

 system("cls");

 main();

}

Teraz jeszcze raz dokładniej:

Mam tak:

kula.cpp (jejgo zawartość w pierwszym poście)

walec.cpp (podobny do kula.cpp ale inne wzory)

stozek.cpp (tez podobny do kula.cpp ale inne wzory)

I do tego cge zrobić plik main.cpp w którym w instrukcji switch wybire że che uruchomić naprzykład kula.cpp lub storzek.cpp Tylko nie wiem jak napisać ten plik main.cpp


([alex]) #2

Jeżeli chcesz zachować bez zmian te trzy pliki to skorzystaj z funkcji system("kula.exe"); z pozostałymi podobnie.

Zamień void mian() na:

ifdef RAZEM

void kula()

else

void main()

endif

W programie który opcjonalnie odpala jeden z trzech "plikow" wywołujesz kula(); wszystko razem kompilujesz z opcją -DRAZEM


(matiit) #3

Lepszym wyjściem byłoby całkowite przepisanie programu i oparcie go na funkcjach... polecam to rozwiązanie.