FAQ  Szukaj  Użytkownicy  Grupy  Statystyki  Rejestracja  Zaloguj


Poprzedni temat :: Następny temat
Zamknięty przez: marczak
2008-04-10, 18:27
Co zle zrobilem
Autor Wiadomość
AraGorN 
.NET Lover


Wiek: 22
Dołączył: 08 Kwi 2008
Posty: 31
Wysłany: 2008-04-09, 17:01   

Prezes123, ladny program ;-)
zamiast <math.h> uzyj <cmath>, to bardziej ceplusowo

hehe, marczak, nadal masz blad ;)
popatrz na to dokladniej
 
 
     
Prezes123 


Dołączył: 08 Kwi 2008
Posty: 9
Wysłany: 2008-04-09, 20:02   

AraGorN napisał/a:
Prezes123, ladny program ;-)
zamiast <math.h> uzyj <cmath>, to bardziej ceplusowo

hehe, marczak, nadal masz blad ;)
popatrz na to dokladniej

hahaha bardzoej c++ - sowo ....hahahaa tylko chyba nie wiesz ze bibiloteka math.h jest rowniez pelnowartosiowym komponentem c++ nie tylko zwyklego C.
po drugie jesli nie wierzysz to sobie zobacz bez zlaaczania bilioteki cstdlib ktora pozwala na korzystanie z standardow C niewbudowanych w podstawe , a math.h takim....

ogolnie w math.h jest duzo lepiej rozwiazana sprawa z przeciazaniem funkcjii matematycznych o pozwala na lepsze korzystanie z tego...
I wyjaśnij mi prosze co znaczy bardziej C++-sowo wg. ciebie bo tego akurat nie zakumalem ...
 
 
     
marczak 
Wygadana bestia



Wiek: 19
Dołączył: 01 Mar 2008
Posty: 354
Skąd: z nienacka
Wysłany: 2008-04-09, 21:57   

hehe, marczak, nadal masz blad ;)
popatrz na to dokladniej[/quote]

racja byl blad wiec zamieszczam caly program poprawiony:

Kod:
#include<iostream>
#include<cmath>
using namespace std;
main()
{

      int a,b,c,x,wynik,delta;
      float x1,x2;
         
      cout << "Podaj liczbe(a): ";
      cin >> a;
      cout << "\nPodaj druga liczbe(b): ";
      cin >> b; 
      cout << "\nPodaj trzecia liczbe(c): ";
      cin >> c;
      cout << "\nPodaj jaka liczbe podstawic zamiast x: ";
      cin >> x;
      wynik = a*(x*x) + b*x + c;
      delta = b*b - 4*a*c;
      x1 = (b*(-1) - sqrt(delta)) /2*a;
      x2 = (b*(-1) + sqrt(delta)) /2*a;
      cout << "\nWynik równania kwadratowego to: " << wynik;
      cout << "\nDelta wynosi: "<< delta;
      cout << "\nx1 = " << x1 << "\nx2 = " << x2;
      system("pause");
      }
_________________
Gość Przeczytaj regulamin zanim zaczniesz przygode z forum.
Przed napisaniem nowego tematu uzyj opcji szukaj
 
 
     
Prezes123 


Dołączył: 08 Kwi 2008
Posty: 9
Wysłany: 2008-04-09, 22:37   

Cytat:
cout << "\nPodaj jaka liczbe podstawic zamiast x: ";
cin >> x;
wynik = a*(x*x) + b*x + c;

pytanie za 100 pkt .. co to jest i po co ?

przeciez nie znasz wartosci X-a tylko musisz ja walsnie z tego wyliczyc wiec co wogle podstawic chesz.. na zasadzie prob i bledow strzelac ?

dodatkowa zmienny tylko zajmuja dodatkowa pamiec na stosie...
 
 
     
AraGorN 
.NET Lover


Wiek: 22
Dołączył: 08 Kwi 2008
Posty: 31
Wysłany: 2008-04-09, 23:18   

Prezes123, nie wysmiewaj jak sie nie znasz bo tego pozalujesz
ja podalem ta uwage zyczliwie, ale skoro chcesz grac w taki sposob to ok

<math.h> jest biblioteka C
<cmath> jest biblioteka C++
jezeli piszesz program w jezyku C++ to uzywasz bibliotek C++ a nie tych z C
tych jezykow sie nie miesza!

marczak, nadal jest blad ;)
poddajesz sie? :P ;)
 
 
     
Prezes123 


Dołączył: 08 Kwi 2008
Posty: 9
Wysłany: 2008-04-10, 00:21   

AraGorN napisał/a:
Prezes123, nie wysmiewaj jak sie nie znasz bo tego pozalujesz
ja podalem ta uwage zyczliwie, ale skoro chcesz grac w taki sposob to ok

<math.h> jest biblioteka C
<cmath> jest biblioteka C++
jezeli piszesz program w jezyku C++ to uzywasz bibliotek C++ a nie tych z C
tych jezykow sie nie miesza!

marczak, nadal jest blad ;)
poddajesz sie? :P ;)

Z tym ze :
<math.h> jest biblioteka C
<cmath> jest biblioteka C++
Ale co do mieszania jezykow to gadasz takie bzduy jak nie wiem co ...
jak moze wiesz c++ jest ulepszona wersja C ... i korzysta z tych samych bibliotek tyle ze niektore sa rozszerzone a niektore tylko rozszerzone po to aby bylo cos alternatywnego .
Wierz mi ze piszac program w C++ mozesz bezproblemowo i bez konsekwwecjii korzystac z bibliotek C.

A co do moich kompetecjii w C++ to laskawie jesli jestes pinformowany to sie laskawie nie odzywaj i ludzi nie obrazaj .
Jak bym sie nie znał to nie byl bym w-ce przewodniczacym kola naukowego politechniki teambit ktore zajmuje sie programowniem zespolowym wlasnie w C++.

a po 3 radze Ci wziasc kasizake w rece i typu " thinking in C++ " , byle by nie synfonie bo jak to moj wykladowca powiedzial " to jest dla betonow " ... morał sobie sam z tego odczytaj.

po 4. nie zlosliwie pisze tylko chcialem napisac ci adnotacje ze sie mylisz ,i ze nie gra roznicy ze piszac w c++ laczysz elemnty z C !!
doalczajac <cstdlib> mozesz uzywac bezproblemu polecen z C. tak samo ma sie to z headerami czyli #include...


pozdrawiam i radze naprawde poczytac troszke o tym zanim jakies kolejna teorie zapodasz :)
 
 
     
AraGorN 
.NET Lover


Wiek: 22
Dołączył: 08 Kwi 2008
Posty: 31
Wysłany: 2008-04-10, 08:48   

milo ze wykazales takie zainteresowanie
po pierwsze to ja nikogo nie obrazilem, a jezeli tak zrobilem to napewno administracja wyciagnie wnioski
nie rzucaj bez podstawnych oskarzen bo bardzo tego nie lubie

po drugie to nie obchodzi mnie kim jestes, tutaj liczy sie tylko wiedza
nie robi to na mnie zadnego wrazenia bo wszyscy jestesmy tylko ludzmi, wszyscy mozemy sie mylic

a teraz wracajac do tematu
pofatygowalem sie i zajrzalem do obu plikow naglowkowych
roznia, chociazby tylko ze funkcje z <cmath> znajduja sie w przestrzeni nazw std
to juz wiele zmienia, choc nie w przypadku tego programu

Cytat:
/** @file cmath
* This is a Standard C++ Library file. You should @c #include this file
* in your programs, rather than any of the "*.h" implementation files.
*
* This is the C++ version of the Standard C Library header @c math.h,
* and its contents are (mostly) the same as that header, but are all
* contained in the namespace @c std.
*/

ja sobie tego nie wyssalem wszystkiego z palca tylko tworca biblioteki tego zaleca

co do tego ze to sie skompiluje i bedzie dzialac to masz racje
ale C++ nadal ewoluuje i nie zadnej gwarancji ze pewno dnia to nie przestanie dzialac
poza tym jak zapewne wiesz nie kazdy kod C mozna skompilowac pod kompilatorem C++

biblioteka <cmath> zostala napisana przy uzyciu kontrukcji C++
jak myslisz dlaczego stworzono <cmath> skoro <math.h> jest takie dobre?
jezeli to co mowisz jest prawda to <cmath> jest niepotrzebny

PS. Twoj wykladowca sie myli, nie wiesz nawet jak bardzo, bo Symfonia to bardzo dobra ksiazka, szczegolnie dla poczatkujacych programistow
 
 
     
Prezes123 


Dołączył: 08 Kwi 2008
Posty: 9
Wysłany: 2008-04-10, 11:52   

Po pierwsze primo : A od czego masz using namespace std. i biblioteke cstdlib. ?
Po drugie... ksiazka jak juz mowilem jest dla "betonów" ... skoro sie uwazasz za poczatkujacego i potrzebujesz dokladnego opisu np: cin>>sie w wole w k lub cout<< to spoko :)
Ja osobiscie wole sie juz programowaniem obiektorym pobawic niz strukturami ....
Owszem cmath jest niepotrzebna... a napisana zostala po to zeby twoarzac nowy standard C++ zalaczyc tez biblioteke matematyczna niby odrebna dla tego jezyka ... idac dalej jak przejrzysz biblioteke to zauwazsz ze w 90% funkcje podefiniowane sa w podobny sposob.
A ze autor zaleca to juz inna sprawa ... powiedz mi czy jesli stawiasz server i sprzedawca zaleci ci platforme windowsa ... to postawisz server na windowsie ? czy moze zainstalujesz linuxa i bedziesz mogl spokojnie spac w nocy... ?
 
 
     
AraGorN 
.NET Lover


Wiek: 22
Dołączył: 08 Kwi 2008
Posty: 31
Wysłany: 2008-04-10, 12:36   

Symfonia jest bardzo dobra ksiazka, zarowno dla poczatkujacych jak i zaawansowany
to ze jest obszerna to nie jest zadna wada, jest przynamniej opisane wszystko
czyta sie ja bardzo milo i przyjemnie

co do braku zastosowania <cmath> sie mylisz
moze podam przyklad
piszesz program ktory korzysta z funkcji sin
oprocz tego napisales wlasna funkcje asin, ktora ma taki sam naglowek jak ta w <cmath>
chcesz obu uzyc w swoim programie
rozwiazanie z <cmath> jest banalne z <math.h> trudniejsze, choc mozliwe

nie wiem jak u Ciebie na uczelni sie robi takie rzeczy ale u mnie trzymiemiemy sie standardow, nawet tych tylko przyjetych za stosowne, nie wymaganych
chcesz byc outsiderem w porzadku, ja Cie do niczego nie zmusze
ale jak pewnego dnia Twoje programy przestana dzialac, lub nie beda chcialy sie skompilowac gdzies to moze przypomnisz sobie moje slowa

Znajdz blad w programie zamieszczonym wyzej przez marczaka
wykazesz sie swoja wiedza

PS. Jakbym mial odpowiedni zasob kasy to wybralbym server microsoft i tez spal spokojnie
 
 
     
Prezes123 


Dołączył: 08 Kwi 2008
Posty: 9
Wysłany: 2008-04-10, 13:36   

nie ma sprawy a wiec tak , po pierwsze nie pdooba mi sie typy zmiennych bo liczy tylko dla calkowitych wspolczynnikow rownania ....
po drugie program źle liczyl pierwiastki ... najpierw dzielil przez 2 a potem calosc mnozyl przez a , a to juz jest co innego ... przedewszystim trzeba znac priorytety wykonywania dzialan...
I nie wiem po co bylo to o czy mgdzies wczenij gadalem z tym podawaniem x-ksa.Wiec wywalilem to ;)


Kod:

#include<iostream>
#include<math.h>
using namespace std;
main()
{

     double a,b,c,x,wynik,delta;
      float x1,x2;
         
      cout << "Podaj liczbe(a): ";
      cin >> a;
      cout << "\nPodaj druga liczbe(b): ";
      cin >> b;
      cout << "\nPodaj trzecia liczbe(c): ";
      cin >> c;
      delta = b*b - 4*a*c;
      x1 = (b*(-1) - sqrt(delta)) /(2*a);
      x2 = (b*(-1) + sqrt(delta)) /(2*a);
      cout << "\nDelta wynosi: "<< delta;
      cout << "\nx1 = " << x1 << "\nx2 = " << x2;
      system("pause");
      }



pozdrawiam
 
 
     
AraGorN 
.NET Lover


Wiek: 22
Dołączył: 08 Kwi 2008
Posty: 31
Wysłany: 2008-04-10, 13:57   

Tak, oto mi chodzilo
choc mozna by bylo juz wszystko zadeklarowac jako double ;)
to o X to byla dodatkowa funkcjanalnosc, obliczania wartosci wyrazenia algebraicznego z jedna niewidoma

widze zaincludowales <math.h>, ale jestes uparty ;)
ale w porzadku, nie bede juz krytykowal
kazdy przeceiz moze meic odmienne zdanie na ten temat

mam nadzieje ze nie czujesz do mnie zalu o moja asertywnosc
programisci to wielcy indywidualiscie, lubie robic wszystko po swojemu

topic mozna chyba zamknac...
choc moze kolega ma jeszcze cos do dodania to chetnie przeczytam :)
 
 
     
Prezes123 


Dołączył: 08 Kwi 2008
Posty: 9
Wysłany: 2008-04-10, 14:17   

Oweszm :) Ja tez mam nadzieje ze do mnie zalu nie czujesz :) Co do indywidualnosci owszem sie zgodze ale tylko to dobre jest gry mamy swoj projekt , a nie pracujemy w grupie :) Obecnie w kole naukowym przygotowujemy sie do ogolnopolkich akademickich zawodow programowania zespolowego w C++ , wiec indywidualnosc tutaj nie jest wskazana
Pozdrawiam goraco :)

ps: Mam nadzieje ze w tym topicu juz zostalo powiedziane wszystko ...:)
 
 
     
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Stronę monitoruje stat24 website monitoring service



Wymiana Linkiem
Forum Komputerowe | PcPlanet |Forum eKing.pl | Warez | www.warezik.eu | Forum GSM | Serwis SonyEricsson | Robert Kubica | Darmowe dzwonki i motywy | Sony Ericsson Forum | gsmfon.org - GSM | Aukcje EMAR
Strona wygenerowana w 0,13 sekundy. Zapytań do SQL: 13