[BUILDER] StringGrid - zaokrąglanie

0

Jak tablicę zawierającą liczby typu float, o wymiarach np. 5x5,
wyświetlić ( wrzucić do ) [stuk] [stuk] w StringGrid'zie, tak by liczby w celach były wyświetlane z dokładnością np. do 4 miejsc po przecinku.

0

Użyj funkcji formatowania liczba na AnsiStringi. W twoim wypadku najodpowiednijsza będzie chyba CurrToStrF(), z parametrem ffFixed, kod takiego formatowania może wyglądać następująco:

float liczba = 91.253563;
Label1->Caption = CurrToStrF(liczba, ffFixed, 4);

gdzie liczba 4 (ostatnia) jest liczbą określającą ilość liczba mąjącą się znaleźć po przecinku.

0

Dzięki Anonimie, co prawda chodziło mi o wiświetlenie określonej tablicy w StringGrid, a Twoja odpowiedź nie do końca była ścisła, ale ( dla wszystkich początkujących ) byłoby to np. tak:

void __fastcall TForm1::BitBtn1Click(TObject Sender)
{
int i,j, n=3;
float a = StrToFloat(Edit1->Text);
float tan_Psi[3][3]={
{cos(a
M_PI/180),-sin(aM_PI/180),0},
{sin(a
M_PI/180),cos(a*M_PI/180),0},
{0,0,1}
};
for ( i=0; i<n; i++ )
for ( j=0; j<n; j++ )
StringGrid1->Cells[i][j] = CurrToStrF(tan_Psi[j][i], ffFixed, 4);

// oczywiści ze względu na pi ( M_PI ) należy dołączyć <math.h>
// Była to tablica 3x3 oczywiście

1 użytkowników online, w tym zalogowanych: 0, gości: 1