Problem z pierwiastkowaniem

Problem z pierwiastkowaniem
0

Witam. Usiłuję zrobić program który w domyśle będzie obliczał i robił wykres dla funkcji kwadratowych jednak mam problem z pierwiastkowaniem. Otóż tak pierwszy problem miałem właśnie z nim znalazłem że robi się to funkcją matematyczną więc dodałem (#include <math.h>) po namespacach i dałem:

Kopiuj
System::Double a,b,c,d,x1,x2;
				
				 
				
				  a=System::Double::Parse(textBox1->Text);
				  b=System::Double::Parse(textBox2->Text);
				  c=System::Double::Parse(textBox3->Text);

				  d=(b*b)-(4*a*c);
				  if(d>0)
				  {
					  
					  x1=(-b-sqrt(d))/2*a;
					  x2=(-b+sqrt(d))/2*a;
					  label1->Text="x1 wynosi:"x1.ToString()+"x2 wynosi:" x2.ToString();
					 
				  }
				  if(d=0)
				  {
					  x1=-b/2*a;
					  label1->Text="x1=x2 wynosi:"+x1.ToString();

				  }
				  if(d<0)
				  {
					  label1->Text="Nie ma miejsc zerowych";
				  }

Po rebuildzie wyskoczyło 138 błędów z czego wszystkie były z pliku math.h i sourceannotations.h. Przed rebuildem wyświetlał mi w label 1 poprawny wynik ale tylko dla (d>0) i tylko z x1 (bez opisu x1 wynosi: i bez x2).
Usunełem #include math.h i dodałem do deklaracji System::Math::Sqrt; ale dalej 4 błędy.
Bardzo proszę o szybką pomoc.

Bardzo proszę o

0

A i jeszcze prośba da się ustawić punkt początkowy w rysowaniu na jakiś inny niż 0,0? I jeszcze jak jeśli wiecie.

ShookTea
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 6 lat
  • Lokalizacja:Wrocław
  • Postów:629
0

Pierwsza rzecz, jaką widzę: "x1 wynosi"x1.toString()+"x2 wynosi:" x2.ToString(). Nie znam się na C/C++, ale wiem, że łączysz łańcuchy, a je łączy się plusami, które tutaj ominąłeś w paru miejscach (ew. w PHP łączy się je kropkami)


edytowany 1x, ostatnio: ShookTea
Zobacz pozostały 1 komentarz
Azarien
To nie jest „zupełnie inny” język niż C++, bo każdy poprawny kod C++ jest poprawnym kodem C++/CLI (z poprawką że Visual nie wspiera całego standardu C++, a więc i całego standardu C++/CLI).
Azarien
...oraz poprawką na dwa nowe słowa kluczowe: gcnew i generic.
ShookTea
@robcio jak już napisałem, nie znam się na tym, i nie mam pojęcia, skąd wiesz, że to nie jest zwykły C++. Być może jest tu jakaś cecha, ale wg. mnie powinno to być podane zarówno w treści, jak i w tagach (no i jeśli to "zupełnie inny język niż C++", to powinien być w innym dziale)
Azarien
@ShookTea: to po prostu widać, że używasz Visual C++ i wybrałeś projekt "Windows Forms Application". :-)
ShookTea
Nie, używam Code Blocks :)
Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:4 minuty
1

ale dalej 4 błędy.
No przydałoby się podać jakie.
I zobaczyć w którym miejscu, zastanowić się samemu, dlaczego kompilacja nie przechodzi.

Dwa błędy masz na pewno przy łączeniu łańcuchów, o czym kol. ShookTea wspomniał.

Zamiast System::Double pisz po prostu double, to absolutnie to samo, a będzie bardziej czytelne i zrozumiałe dla nieznających dziwolągów Visuala.

DP
Nie trzeba byc geniuszem zeby wiedziec co robi System::Double::Parse ;-)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.