C Helpdesk
Prosty kalkulator aby działał pod Windowsem należy zastąpić wszystko Cls() na system("cls"); i usunąć wszystko związane z funkcją Cls
/****************************************************************************** * Program skompilowany pod systemem LINUX open SuSE 10.2 * * Kompilator gcc 4.1.2 20061115 * * Autor: E-MAIL * * Mateusz Dardziński l3niwi3c@gmail.com * ******************************************************************************/ #include <stdio.h> #include <math.h> #define DODAWANIE 1 #define ODEJMOWANIE 2 #define MNOZENIE 3 #define DZIELENIE 4 #define POTEGOWANIE 5 #define PIERWIASTEK 6 #define LOGARYTM 7 #define LOGARYTMN 8 #define WYJSCIE 9 /*Prototypy Funkji*/ void ClrScr(void); void menu(void); void dodawanie(float,float); void odejmowanie(float,float); void mnozenie(float,float); void dzielenie(float,float); void potegowanie(float,float); void pierwiastek(float,float); void logarytm(float,float); void logarytmn(float,float); /*Zmienne Globalne*/ float pierwsza,druga,wynik; /* GŁÓWNY KOD PROGRAMU */ main(void) { menu(); return (0); } //KONIEC MAIN /* FUNKCJE */ void menu(void) { ClrScr(); printf("\t Kalkulator \xC1\n"); printf("\tDodawanie............%d\n",DODAWANIE); printf("\tOdejmowanie..........%d\n",ODEJMOWANIE); printf("\tMnożenie.............%d\n",MNOZENIE); printf("\tDzielenie............%d\n",DZIELENIE); printf("\tPotęgowanie..........%d\n",POTEGOWANIE); printf("\tPierwiastkowanie.....%d\n",PIERWIASTEK); printf("\tLogarytm.............%d\n",LOGARYTM); printf("\tLogarytm Naturalny...%d\n",LOGARYTMN); printf("\tZakończ..............%d\n",WYJSCIE); printf("\n\t\tWybór: "); int wybor; wybor=getchar(); wybor=wybor-48; switch(wybor) { case DODAWANIE : dodawanie(pierwsza,druga); break; case ODEJMOWANIE : odejmowanie(pierwsza,druga); break; case MNOZENIE : mnozenie(pierwsza,druga); break; case DZIELENIE : dzielenie(pierwsza,druga); break; case POTEGOWANIE : potegowanie(pierwsza,druga); break; case PIERWIASTEK : pierwiastek(pierwsza,druga); break; case LOGARYTM : logarytm(pierwsza,druga); break; case LOGARYTMN : logarytmn(pierwsza,druga); break; case WYJSCIE : ; break; default: {ClrScr(); printf("Błędny wybór"); getchar(); getchar(); main(); } } return; } //Koniec MUNU void dodawanie(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Dodawanie\n\n"); printf(" Podaj pierwsza liczbe: "); scanf("%f",&pierwsza); printf(" Podaj drugą liczbe: "); scanf("%f",&druga); printf("\twynik: %.2f + %.2f = %.2f",pierwsza,druga,pierwsza + druga); getchar(); getchar(); menu(); } // KONIEC DODAWANIE void odejmowanie(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Odejmowanie\n\n"); printf(" Podaj pierwsza liczbe: "); scanf("%f",&pierwsza); printf(" Podaj drugą liczbe: "); scanf("%f",&druga); printf("\twynik: %.2f - %.2f = %.2f",pierwsza,druga,pierwsza - druga); getchar(); getchar(); menu(); } //KONIEC ODEJMOWANIE void mnozenie(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Mnożenie\n\n"); printf(" Podaj pierwsza liczbe: "); scanf("%f",&pierwsza); printf(" Podaj drugą liczbe: "); scanf("%f",&druga); printf("\twynik: %.2f x %.2f = %.2f",pierwsza,druga,pierwsza * druga);- getchar(); getchar(); menu(); }// KONIEC MNOZENIE void dzielenie(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Dzielenie\n\n"); printf(" Podaj pierwsza liczbe: "); scanf("%f",&pierwsza); printf(" Podaj drugą liczbe: "); scanf("%f",&druga); if (druga == 0) printf("\"Nigdy cholero nie dziel przez 0\""); else printf("\twynik: %.2f : %.2f = %.2f",pierwsza,druga,pierwsza / druga);- getchar(); getchar(); menu(); }// KONIEC DZIELENIE void potegowanie(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Potęgowanie\n\n"); printf(" Podaj podstawę potęgi: "); scanf("%f",&pierwsza); printf(" Podaj wykładnik potęgi: "); scanf("%f",&druga); printf("\twynik: %.2f ^ %.2f = %.2f",pierwsza,druga,pow(pierwsza,druga));- getchar(); getchar(); menu(); }// KONIEC POTEGOWANIE void pierwiastek(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Pierwiastkowanie\n\n"); printf(" Podaj podstawę pierwiasteka: "); scanf("%f",&druga); printf(" Podaj stopień pierwiatka: "); scanf("%f",&pierwsza); printf("\twynik: pierwiastek stopnia %.2f z %.2f = %.2f",pierwsza,druga,exp(1/pierwsza*log(druga)));- getchar(); getchar(); menu(); }// KONIEC POTEGOWANIE void logarytm(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Logarytm\n\n"); printf(" Podaj liczbę logarytmowaną: "); scanf("%f",&pierwsza); printf(" Podaj podstawę logarytmu: "); scanf("%f",&druga); printf("\twynik: Logarytm liczby %.2f stopnia %.2f= %.2f",pierwsza,druga,log10(pierwsza) / log10 (druga));- getchar(); getchar(); menu(); } //KONIEC LOGARYTMN void logarytmn(float pierwsza,float druga) { ClrScr(); printf("\t Funkcja Logarytm Naturalny\n\n"); printf(" Podaj liczbę logarytmowaną: "); scanf("%f",&pierwsza); printf("\twynik: Logarytm naturalny liczby %.2f = %.2f",pierwsza,log(pierwsza));- getchar(); getchar(); menu(); } //KONIEC LOGARYTMN void ClrScr(void) { printf("\033[2J"); // Czyci ekran printf("\033[0;0f"); // Ustawia kursor w lewym, górnym rogu }// Koniec ClrScr
Offline