|
Programiranje Programski jezici, tehnike, alatke... |
|
Alatke vezane za temu | Vrste prikaza |
3.6.2015, 21:16 | #1 |
Član
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
|
CodeBlocks C++ Bug
Radim neki zadatak, lagan, za Pitagorinu teoremu, ali sam primjetio da mi ne valja nešto. Kod radi kod druga (u DevC++) a kod mene ne:
Umjesto da ispiše "PT", ispisuje ovo drugo: HTML kod:
#include <iostream> #include <math.h> using namespace std; int main() { int t1 = 3, t2 = 4, t3 = 5; if (pow(t1, 2) + pow(t2, 2) == pow(t3, 2)) { cout << "PT" << endl; } else { cout << pow(t1, 2) + pow(t2, 2) << endl; cout << pow(t3, 2) << endl; } } |
3.6.2015, 21:43 | #2 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.086
Zahvaljeno 4.923 puta na 2.859 poruka
|
Re: CodeBlocks C++ Bug
Pow kao rezultat vraća double, moguće da postoji greška u zaokruživanju (što je poznat problem u radu sa pokretnom tačkom, opisan i na wikipediji). Daj tačno šta ispiše kao rezultat.
edit: GNU-ov C++ 4.8.2 na Linuxu vraća ispravan rezultat (tj ispisuje "PT"). Poslednja ispravka: voodoo_ (3.6.2015 u 22:14) |
Sledeći korisnik se zahvaljuje korisniku voodoo_ na korisnoj poruci: | ||
Teva (4.6.2015) |
3.6.2015, 23:06 | #3 |
Član
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
|
Re: CodeBlocks C++ Bug
|
3.6.2015, 23:38 | #4 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.086
Zahvaljeno 4.923 puta na 2.859 poruka
|
Re: CodeBlocks C++ Bug
Džabe što si reinstalirao ako su ostala sva podešavanja u korisničkom folderu. Uradi "reset defaults" u podešavanjima kompajlera pa probaj opet.
|
4.6.2015, 8:12 | #5 |
Član
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
|
Re: CodeBlocks C++ Bug
|
4.6.2015, 9:04 | #6 |
Član
Član od: 5.12.2005.
Lokacija: Sombor
Poruke: 245
Zahvalnice: 7
Zahvaljeno 31 puta na 24 poruka
|
Re: CodeBlocks C++ Bug
Kao sto je voodoo_ vec rekao, jednakost necelobrojnih vrednosti se ne ispituje u opstem slucaju sa ==, vec sa odredjenom tolerancijom +- kao npr:
Kod:
const double rounding_error = 0.000001; if (abs(pow(t1, 2) + pow(t2, 2) - pow(t3, 2)) < rounding_error) { Kod:
#include <cmath> |
4.6.2015, 12:36 | #7 |
Deo inventara foruma
|
Re: CodeBlocks C++ Bug
I jaa sam imao dosta problema sa naredbom pow u C-u, i najlakše mi je napraviti svoju funkciju za stepenovanje u zavisnosti šta treba da stepenujem.
|
5.6.2015, 10:35 | #8 |
Starosedelac
Član od: 23.2.2006.
Lokacija: Tamo gde su kuće od čokolade i prozori od marmelade....
Poruke: 1.579
Zahvalnice: 195
Zahvaljeno 301 puta na 171 poruka
|
Re: CodeBlocks C++ Bug
Za kvadridanje se ne isplati ni praviti svoju ni koristiti ugrađenu funkciju, posebno još kada je int u pitanju xD
|
5.6.2015, 11:20 | #9 |
Deo inventara foruma
|
Re: CodeBlocks C++ Bug
Za kvadriranje ono jes, al mislio sam generalno na stepenovanje.
|
5.6.2015, 13:12 | #10 |
Član
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
|
Re: CodeBlocks C++ Bug
Našao sam šta je problem. Nije moguće koristiti <math.h> nego mora <cmath>. Takođe ne može se koristiti int, nego double ili float.
Kod: Kod:
#include <iostream> #include <cmath> using namespace std; int main() { float t1 = 3, t2 = 4, t3 = 5; if (pow(t1, 2) + pow(t2, 2) == pow(t3, 2)) { cout << "PT" << endl; } else { cout << pow(t1, 2) + pow(t2, 2) << endl; cout << pow(t3, 2) << endl; } } |
5.6.2015, 19:30 | #11 |
Starosedelac
Član od: 23.2.2006.
Lokacija: Tamo gde su kuće od čokolade i prozori od marmelade....
Poruke: 1.579
Zahvalnice: 195
Zahvaljeno 301 puta na 171 poruka
|
Re: CodeBlocks C++ Bug
Btw float t1 = 3 je ista kao da si prosledio int t1 = 3, u oba slučaja se vrši implicitna konverzija iz inta u float...
|
5.6.2015, 20:39 | #12 |
Član
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
|
Re: CodeBlocks C++ Bug
|
5.6.2015, 21:09 | #13 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.086
Zahvaljeno 4.923 puta na 2.859 poruka
|
Re: CodeBlocks C++ Bug
Možda si u podešavanjima kompajlera stavio da upozorenja tretira kao greške, pa zato neće.
|
5.6.2015, 23:18 | #14 |
Član
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
|
Re: CodeBlocks C++ Bug
|
23.9.2015, 10:55 | #15 |
Član
|
Re: CodeBlocks C++ Bug
Najpribližnija tema koju sam mogla da pronađem...
Naime, kad instaliram code blocks, i pokrenem ga, sve mi se poremeti, i klasičan prozor izgleda ovako: http://postimg.org/image/e2htqdov5/, kao da se grafika poremeti... Probala sam i starije verzije, i različite linkove za skidanje, ali problem je i dalje prisutan. (Ovo mi se dešava samo kad pokrenem ovaj program, i kada izađem iz njega sve se vrati u "normalu"). Zna li neko šta je u pitanju? Unaprijed hvala! |
23.9.2015, 11:10 | #16 |
Starosedelac
Član od: 18.7.2012.
Lokacija: Beograd, Srbija
Poruke: 1.258
Zahvalnice: 105
Zahvaljeno 238 puta na 210 poruka
|
Re: CodeBlocks C++ Bug
Postavi pitanje na njihovom forumu ili salji ticket.
Off-topic: Cisto da znate, Visual Studio je free, i ima daleko superiorniji debugger... |
23.9.2015, 11:21 | #17 |
Član
|
Re: CodeBlocks C++ Bug
|
23.9.2015, 11:50 | #18 |
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.086
Zahvaljeno 4.923 puta na 2.859 poruka
|
Re: CodeBlocks C++ Bug
Idi desno dugme na EXE programa, pa properties, pa vidi je l išta uključeno u "Compatibility", ako jeste isključi sve.
|
23.9.2015, 12:06 | #19 |
Član
|
Re: CodeBlocks C++ Bug
Riješeno, hvalaa!
|
17.12.2015, 21:45 | #20 |
Član
Član od: 8.11.2011.
Lokacija: Podgorica
Poruke: 31
Zahvalnice: 11
Zahvaljeno 17 puta na 12 poruka
|
Re: CodeBlocks C++ Bug
Da ne otvaram novu temu. Instalirao sam CodeBlocks 13.12 na novom laptopu, kada pokušam da kompajliram i pokrenem program, ne prijavljuje nikakve greška i u cmd ne prikazuje nikakav output, potpuno prazno. A još uz to nakon zatvaranja konzole .exe ostaje pokrenut i nema šanse da prekinem proces iz task managera.
Edit: sistem je 64bit ako išta znači, jer na PC-u (32bit) radi bez problema Poslednja ispravka: ThugZ (17.12.2015 u 22:00) Razlog: Dodatak |
Bookmarks sajtovi |
|
|
Slične teme | ||||
tema | temu započeo | forum | Odgovora | Poslednja poruka |
CodeBlocks, azuriranje gcc c++ kompajlera | Belphegor | Programiranje | 1 | 2.3.2012 2:12 |
pow() function u Code::Blocks 8.02 GNU GCC | zokocx | Programiranje | 4 | 22.1.2009 18:03 |