C++ Builder Błąd z klasą
Ostatnio zmodyfikowano 2015-01-06 17:50
killermannnnn Temat założony przez niniejszego użytkownika |
C++ Builder Błąd z klasą » 2015-01-05 17:14:11 Zrobiłem program, który powinien liczyć średnią ocen z tych przedmiotów ale po wciśnięciu guzika(Button1) wywala mi błąd: "is not a valid floating point value" Co jest źle, bo ja nic nie widzę... #include <vcl.h> #pragma hdrstop
#include "Unit1.h"
#pragma package(smart_init) #pragma resource "*.dfm" TForm1 * Form1;
__fastcall TForm1::TForm1( TComponent * Owner ) : TForm( Owner ) { }
class Przedmiot { AnsiString nazwa; float ocena; public: Przedmiot( AnsiString n, float oc ) { nazwa = n; ocena = oc; } operator float() { return ocena; } };
void __fastcall TForm1::Image1Click( TObject * Sender ) { Przedmiot joL( "Jezyk Obcy", StrToFloat( Edit25->Text ) ); Przedmiot ouW( "Obrobka Ubytkowa Wyklad", StrToFloat( Edit2->Text ) ); Przedmiot meW( "Metrologia Wyklad", StrToFloat( Edit3->Text ) ); Przedmiot meC( "Metrologia Cwiczenia", StrToFloat( Edit15->Text ) ); Przedmiot obL( "Obrobka Bezubytkowa Laborki", StrToFloat( Edit28->Text ) ); Przedmiot tsL( "TSiS Laborki", StrToFloat( Edit29->Text ) ); Przedmiot naW( "Napedy Wyklad", StrToFloat( Edit6->Text ) ); Przedmiot naC( "Napedy Cwiczenia", StrToFloat( Edit18->Text ) ); Przedmiot owW( "Ochrona Wlasnosci Wyklad", StrToFloat( Edit7->Text ) ); Przedmiot piW( "Podstawy Informatyki Wyklad", StrToFloat( Edit8->Text ) ); Przedmiot piL( "Podstawy Informatyki Laborki", StrToFloat( Edit32->Text ) ); Przedmiot peL( "Podstawy Elektroniki Labroki", StrToFloat( Edit33->Text ) ); Przedmiot peW( "Podstawy Elektroniki Wyklad", StrToFloat( Edit10->Text ) ); Przedmiot wfC( "Wychowanie Fizyczne", StrToFloat( Edit23->Text ) ); Przedmiot wmW( "Wytrzymalosc Wyklady", StrToFloat( Edit12->Text ) ); Przedmiot wmC( "Wytzrymalosc Cwiczenia", StrToFloat( Edit24->Text ) ); float srednia =( joL * 3 + ouW * 3 +(( meW + meC ) / 2 ) * 3 + obL * 1 + tsL * 2 +(( naW + naC ) / 2 ) * 5 + owW * 1 +(( piW + piL ) / 2 ) * 3 + peL * 1 + peW * 3 + wfC * 1 +(( wmW + wmC ) / 2 ) * 5 ) / 31; Label2->Caption =( FloatToStr( srednia ) ); } |
|
RazzorFlame |
» 2015-01-05 19:06:55 Co wpisujesz w edit boxie? |
|
killermannnnn Temat założony przez niniejszego użytkownika |
» 2015-01-05 21:25:19 Wywala błąd niezależnie od tego co wpisze i czy wpisze cokolwiek. Np. przy wpisaniu 5 we wszystkie pola tez wywala błąd |
|
akwes |
» 2015-01-06 12:54:53 Sprawdź, która dokładnie linia jest odpowiedzialna za to. Być może jedno z pól tekstowych Ci się gdzieś schowało i jest puste. Spróbuj też użyć wszędzie wartości "5.0" oraz "5,0" i powiedz czy daje to takie same skutki. |
|
killermannnnn Temat założony przez niniejszego użytkownika |
» 2015-01-06 17:50:28 Dzięki za odpowiedź.
Nie wiem co było źle(chyba nic w kodzie) ale dzisiaj po odpaleniu programu wszystko działa. Pewnie jakieś śmieci w pamięci... |
|
« 1 » |