Witam! Jestem zielony w C++, w sumie, to jest mój pierwszy program. Zaczynam studia, muszę z kopyta ruszyć, bo wiadomo, że nikt z nikim się cackać nie będzie :). Pomyślałem o napisaniu programu, który po po daniu wartości zmiennych a, b, c oblicza pierwiastki funkcji (ax^2 + bx + c). Poprawiłem błędy, które wyrzuciło mi kompilowanie, jednak nie jestem w stanie wyeliminować pozostałych paru:
Brak zaincludowanej biblioteki cmath, która zawiera sqrt(). Dopisz na górze #include
Brak wyrażenia po << w liniach 25. i 32. Wpisz tam std::endl czyli znak nowej linii (bez tego wszystko będzie w jednej linii, bez “enterów”.
I bardzo Cię proszę, nie rób takich dziwolągów z system(“PAUSE”). Akurat tej wersji nie znałem, ale rozumiem, że idea była taka, żeby program poczekał z zamknięciem okna cmd/terminala. Jeśli piszesz program działający w terminalu, to włączaj go z terminala - wtedy wypisane dane Ci nie będą znikały.
EDIT:
A, zapomniałem o Twoim pytanie z końca.
int to typ dla liczb całkowitych. Dla ułamków używa się float lub double. Dla pojedynczych znaków używa się char, a dla wartości prawda/fałsz - bool
System pause jest dobre do zatrzymania programu na windows. Na pewno lepsze jest to niż pobieranie jakiegoś znaku etc. Na linuxie chyba też jest polecenie pause w terminalu.
U mnie nie ma. Że lepsze niż pobieranie znaku to bym nie powiedział. Na pewno mniej przenośne (chyba, że ktoś pobiera znak przez conio.h). Moim zdaniem cała idea jest błędna - jak program działa w terminalu, to niech będzie projektowany z myślą o nim.
Rzeczywiście nie ma takiego czegoś w linuxie. O owe conio.h mi chodziło (bo tak jest w większości tutków pobierane …)
Sam system(“pause”) dla windowego wiersza poleceń nie jest zły. Mogę wpisać dowolną komendę etc. Wiadomo mało przenośne, ale po co komu przenośna komenda na program do tutka ? Skoro ten program nigdy nie zostanie użyty przez kogoś innego niż autor Btw w dev c++ jest opcja automatycznego pause po zakończeniu programu
Nie zrozumiałem co znaczy,że do cout nie wysyłam średnika. Na końcu linijki? Zmieniłem na float. Zmieniłem wprowadzanie zmiennych, spójrz na ostatni kod, który wkleiłem, tam będę go aktualizował. Zdaję sobie sprawę z tego, że jestem męczący jednak dalej nie rozumiem tych dwóch błędów, które pozostają bez zmian. Teraz tylko linijki się zmieniły, bo to wprowadzanie zmiennych rozstrzeliłem.
cout<<"\nFunkcja ma dwa miejsca zerowe:"<
Wysyłasz strumieniem wyjścia (cout) najpierw ciąg znaków, potem zmienną, potem ciąg znaków, potem zmienną i [size=150]średnik[/size], Średnik powinien kończyć linię. Pomyśl co robisz źle. Dla przykłądu:
[code]cout << “to nie wysyła średnika do strumienia wyjścia”;
Wczoraj zakupiłem symfonię C++ jednego z profesorów mojej uczelni… I od wczoraj siedzę z nią jak tylko nie śpię. Podstawowe błędy miną, jak tylko trochę programów się popisze i zrozumie lepiej całe działanie instrukcji i funkcji.
Niestety mam problem - mój program daje mi znać o mojej funkcji tylko w pierwszym przypadku, to jest - gdy delta jest mniejsza od zera. W innych przypadkach przechodzi do system pause…