Iltaa!
Kokeilin aloitella Borlandin C 5:llä ohjelmointia ja konsoliohjelmissa esim. eräänlaisen laskimen ohjelmointi onnistuu jo helposti. Mutta miksi graafisella puolen en saa näkymään desimaaleja?
Olenko antanut väärän tietotyypin jossain kohdin tai jotain muuta yhtä vänkää..:). Graafista puolta en todellakaan ole harrastanut, eli jos jollakulla olisi hyviä linkkejä varsinkin Borlandia/Inpriseä varten ko. aiheeseen liittyen, kaikki olisi tervetullutta...
Esim. seuraava pätkä:
//---------------------------------------------------------------------------
void __fastcall TFormPlaskin::ButtonLaskeClick(TObject *Sender)
{
EditLukuMin->Text = FloatToStr(StrToFloat((EditTulos->Text*1.0018 16.8)/0.9982));
}
//---------------------------------------------------------------------------
antaa tulokseksi vain kokonaislukuja, kun konsolipuolella saan tuloksen neljän desimaalin tarkkuudella.
Kiitoksia vastauksista!
Kokeilin aloitella Borlandin C 5:llä ohjelmointia ja konsoliohjelmissa esim. eräänlaisen laskimen ohjelmointi onnistuu jo helposti. Mutta miksi graafisella puolen en saa näkymään desimaaleja?
Olenko antanut väärän tietotyypin jossain kohdin tai jotain muuta yhtä vänkää..:). Graafista puolta en todellakaan ole harrastanut, eli jos jollakulla olisi hyviä linkkejä varsinkin Borlandia/Inpriseä varten ko. aiheeseen liittyen, kaikki olisi tervetullutta...
Esim. seuraava pätkä:
//---------------------------------------------------------------------------
void __fastcall TFormPlaskin::ButtonLaskeClick(TObject *Sender)
{
EditLukuMin->Text = FloatToStr(StrToFloat((EditTulos->Text*1.0018 16.8)/0.9982));
}
//---------------------------------------------------------------------------
antaa tulokseksi vain kokonaislukuja, kun konsolipuolella saan tuloksen neljän desimaalin tarkkuudella.
Kiitoksia vastauksista!
Vastaukset 7
Vanhimmat
on suomi-asetus päällä jolloin desimaalipiste on oletuksena pilkku?
Kokeilen minkä vaikutuksen tekee maa-asetuksen muutos. Kiitos vinkistä!
c-koodissa maa-asetuksilla ei ole mitään merkitystä desimaalipilkkuun.
EditTulos->Text on tyypiltään AnsiString, joten sinun pitää tehdä sille muutos EditTulos->Text.ToDouble()
Tai sitten auttaisi myös se, että laitat sulut oikein..
EditLukuMin->Text = FloatToStr((StrToFloat(EditTulos->Text)*1.0018 16.8)/0.9982);
Kiitoksia vinkistä, kokeilen sitä heti huomenna!
Olisiko Sinulla muuten jotain hyvää oppikirjaa tiedossa graafisen ohjelmoinnin alkeisiin C :n tiimoilta. Tarkoitan samantyyppistä kuin konsolipuolelle on esim. Lundahl & Vaaran "Ohjelmointi C, C ", joka lähtee siis ruohonjuuritasolta..
Hyvää viikonloppua!
t: aloittelija1
void __fastcall TForm1::Button1Click(TObject *Sender)
{
EditLukuMin->Text = (EditTulos->Text.ToDouble()*1.0018 16.8)/0.9982;
}
Kiitoksia..kokeilen tuotakin.