bartox7777 utworzono 27 kwietnia 2017 utworzono 27 kwietnia 2017 Dlaczego błąd 'dodawanie' cannot be used as a function #include <iostream> #include <windows.h> #include <time.h> using namespace std; int wybor; long double x, y; int dodawanie () { system ("cls"); cout << "Podaj pierwszy skladnik: "; cin >> x; cout << "Podaj drugi skladnik: "; cin >> y; system ("cls"); cout << x; Sleep (500); cout << " + "; Sleep (500); cout << y; Sleep (500); cout << " = "; Sleep (500); cout << x+y; } int main() { int (dodawanie); cout << "Program stworzony przez uzytkownika Bartek"; Sleep (2000); system ("cls"); cout << " MENU GLOWNE\n"; for (int i=1; i<=17; i++) { cout << "-"; Sleep (250); } cout << "\a"; cout << "\n1. Dodawanie"; Sleep (500); cout << "\a"; cout << "\n2. Odejmowanie"; Sleep (500); cout << "\a"; cout << "\n3. Mnozenie"; Sleep (500); cout << "\a"; cout << "\n4. Dzielenie"; Sleep (500); cout << "\a"; cout << "\n0. Wyjscie z programu"; cout << "\n\nWybor: "; cin >> wybor; switch (wybor) { case 1: dodawanie () break; } }
Matematyk0 komentarz 27 kwietnia 2017 komentarz 27 kwietnia 2017 1. Funkcja dodawanie() jest typu int, więc na koniec musi zwracać typ int - dopisz linijkę return 0; jako ostatnią w tej funkcji. Możesz też zmienić typ funkcji dodawanie na void - wtedy nie musisz nic dopisywać, bo funkcja nic nie zwraca. 2. We fragmencie switch (wybor) { case 1: dodawanie () break; } brakuje średnika po wywołaniu funkcji dodawanie. Brak tego średnika powoduje zwrócenie komunikatu o błędzie kompilacji. I taka drobna uwaga - naprawdę potrzebujesz aż tyle tych Sleepów? Zanim będziesz mógł wybrać operację, mija ponad 8 sekund. Jeżeli nie chcesz się z nimi rozstawać - skróć je o połowę albo usuń Sleep(250) z funkcji drukującej linię na ekranie 1
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.