Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje

Programiranje Programski jezici, tehnike, alatke...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 3.6.2015, 21:16   #1
NikolaTECH
Član
 
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
Određen forumom 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;
    }
}
NikolaTECH je offline   Odgovor sa citatom ove poruke
Stara 3.6.2015, 21:43   #2
voodoo_
V.I.P. GNU/Linux
 
Avatar korisnika voodoo_
 
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.085
Zahvaljeno 4.923 puta na 2.859 poruka
Određen forumom 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)
voodoo_ je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku voodoo_ na korisnoj poruci:
Teva (4.6.2015)
Stara 3.6.2015, 23:06   #3
NikolaTECH
Član
 
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: CodeBlocks C++ Bug

Citat:
NikolaTECH kaže: Pregled poruke
Umjesto "PT" ispiše 25, (pa u novom redu) 25.
Kod mog druga ispiše kako treba u DevC++, i ja sam skinuo DevC++ i ispisalo mi kako treba. Reinstalirao CodeBlocks i opet isti problem.
NikolaTECH je offline   Odgovor sa citatom ove poruke
Stara 3.6.2015, 23:38   #4
voodoo_
V.I.P. GNU/Linux
 
Avatar korisnika voodoo_
 
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.085
Zahvaljeno 4.923 puta na 2.859 poruka
Određen forumom 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.
voodoo_ je offline   Odgovor sa citatom ove poruke
Stara 4.6.2015, 8:12   #5
NikolaTECH
Član
 
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: CodeBlocks C++ Bug

Citat:
voodoo_ kaže: Pregled poruke
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.
Resetovao sam, ali opet isto. Prijaviću na forumu pa ću da vidim šta oni kažu..
NikolaTECH je offline   Odgovor sa citatom ove poruke
Stara 4.6.2015, 9:04   #6
seymourc64
Član
 
Član od: 5.12.2005.
Lokacija: Sombor
Poruke: 245
Zahvalnice: 7
Zahvaljeno 31 puta na 24 poruka
Određen forumom 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) {
takodje, ako vec radis c++ includuj cmath a ne math
Kod:
#include <cmath>
Pogledaj objasnjenje ovde. abs i pow ce ti biti u std namespaceu, a ne u global namespaceu sto je i bolje
seymourc64 je offline   Odgovor sa citatom ove poruke
Stara 4.6.2015, 12:36   #7
Djordje Turjacanin
Deo inventara foruma
 
Član od: 15.6.2008.
Lokacija: Prnjavor, RS
Poruke: 3.872
Zahvalnice: 491
Zahvaljeno 1.031 puta na 664 poruka
Slanje poruke preko MSN-a korisniku Djordje Turjacanin Slanje poruke preko Skypea korisniku Djordje Turjacanin
Određen forumom 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.
Djordje Turjacanin je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 10:35   #8
Teva
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
Određen forumom 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
Teva je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 11:20   #9
Djordje Turjacanin
Deo inventara foruma
 
Član od: 15.6.2008.
Lokacija: Prnjavor, RS
Poruke: 3.872
Zahvalnice: 491
Zahvaljeno 1.031 puta na 664 poruka
Slanje poruke preko MSN-a korisniku Djordje Turjacanin Slanje poruke preko Skypea korisniku Djordje Turjacanin
Određen forumom Re: CodeBlocks C++ Bug

Za kvadriranje ono jes, al mislio sam generalno na stepenovanje.
Djordje Turjacanin je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 13:12   #10
NikolaTECH
Član
 
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
Određen forumom 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;
    }

}
NikolaTECH je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 19:30   #11
Teva
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
Određen forumom 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...
Teva je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 20:39   #12
NikolaTECH
Član
 
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: CodeBlocks C++ Bug

Citat:
Teva kaže: Pregled poruke
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...
Kada stavim int, neće da radi, mora float ili double..
NikolaTECH je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 21:09   #13
voodoo_
V.I.P. GNU/Linux
 
Avatar korisnika voodoo_
 
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.085
Zahvaljeno 4.923 puta na 2.859 poruka
Određen forumom Re: CodeBlocks C++ Bug

Možda si u podešavanjima kompajlera stavio da upozorenja tretira kao greške, pa zato neće.
voodoo_ je offline   Odgovor sa citatom ove poruke
Stara 5.6.2015, 23:18   #14
NikolaTECH
Član
 
Član od: 9.2.2015.
Poruke: 67
Zahvalnice: 8
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: CodeBlocks C++ Bug

Citat:
voodoo_ kaže: Pregled poruke
Možda si u podešavanjima kompajlera stavio da upozorenja tretira kao greške, pa zato neće.
Vratio sam podešavanja na defaults.
NikolaTECH je offline   Odgovor sa citatom ove poruke
Stara 23.9.2015, 10:55   #15
ballerina72
Član
 
Član od: 21.5.2014.
Lokacija: Podgorica
Poruke: 76
Zahvalnice: 36
Zahvaljeno 19 puta na 13 poruka
Slanje poruke preko Skypea korisniku ballerina72
Određen forumom 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!
ballerina72 je offline   Odgovor sa citatom ove poruke
Stara 23.9.2015, 11:10   #16
RexGrammer
Starosedelac
 
Član od: 18.7.2012.
Lokacija: Beograd, Srbija
Poruke: 1.258
Zahvalnice: 105
Zahvaljeno 238 puta na 210 poruka
Određen forumom 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...
RexGrammer je offline   Odgovor sa citatom ove poruke
Stara 23.9.2015, 11:21   #17
ballerina72
Član
 
Član od: 21.5.2014.
Lokacija: Podgorica
Poruke: 76
Zahvalnice: 36
Zahvaljeno 19 puta na 13 poruka
Slanje poruke preko Skypea korisniku ballerina72
Određen forumom Re: CodeBlocks C++ Bug

Hvala na brzom odgovoru!

Citat:
RexGrammer kaže: Pregled poruke
Visual Studio je free, i ima daleko superiorniji debugger...
Znam da je Visual Studio bolji, ali na časovima na koje treba da idem radi se u CodeBlocks okruženju...
ballerina72 je offline   Odgovor sa citatom ove poruke
Stara 23.9.2015, 11:50   #18
voodoo_
V.I.P. GNU/Linux
 
Avatar korisnika voodoo_
 
Član od: 1.11.2005.
Poruke: 11.166
Zahvalnice: 2.085
Zahvaljeno 4.923 puta na 2.859 poruka
Određen forumom 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.
voodoo_ je offline   Odgovor sa citatom ove poruke
Stara 23.9.2015, 12:06   #19
ballerina72
Član
 
Član od: 21.5.2014.
Lokacija: Podgorica
Poruke: 76
Zahvalnice: 36
Zahvaljeno 19 puta na 13 poruka
Slanje poruke preko Skypea korisniku ballerina72
Određen forumom Re: CodeBlocks C++ Bug

Riješeno, hvalaa!
ballerina72 je offline   Odgovor sa citatom ove poruke
Stara 17.12.2015, 21:45   #20
ThugZ
Član
 
Član od: 8.11.2011.
Lokacija: Podgorica
Poruke: 31
Zahvalnice: 11
Zahvaljeno 17 puta na 12 poruka
Određen forumom 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
ThugZ je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi

Alatke vezane za temu
Vrste prikaza

Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


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


Sva vremena su po Griniču +2 h. Sada je 22:35.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com