Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : C++Builder et StringGrid [ Algorithme / Maths ] (dounyazed31)

vendredi 11 juillet 2008 à 18:51:28 | C++Builder et StringGrid

dounyazed31

Bonjour à tous.
mon problème c'estque j'ai écrit un petit programme pour la normalisation des données d'apprentissage pour les réseaux de neurones,voila tous le programme:

#include<math.h>

#include <vcl.h>

#pragma hdrstop

#include "Unitp2.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

 int i,j;

float InputData[3000][3000],meanofinput[3000],Standdeviation[3000];

//---------------------------------------------------------------------------

__fastcall TForm2::TForm2(TComponent* Owner)

        : TForm(Owner)

{

 

}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button1Click(TObject *Sender)

{

TabSheet2->Show();       

}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button3Click(TObject *Sender)

{

TabSheet1->Show();       

}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button5Click(TObject *Sender)

{

TabSheet3->Show();       

}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button6Click(TObject *Sender)

{

TabSheet2->Show();       

}

//---------------------------------------------------------------------------

void __fastcall TForm2::Edit3KeyDown(TObject *Sender, WORD &Key,

      TShiftState Shift)

{

if (Key==VK_RETURN)

{try

{int n=(Edit1->Text).ToInt();

int p=(Edit3->Text).ToInt();

StringGrid1->ColCount=(p);

StringGrid1->RowCount=(n);

StringGrid1->Visible=true;

}

catch(...)

{ShowMessage("verifiez si toutes les données sont remplie");

}

}

}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button8Click(TObject *Sender)

{

for (i = 0; i < StringGrid1->ColCount; i++)

  {

    for (j = 0; j < StringGrid1->RowCount; j++)

     InputData[j][i]=StrToFloat(StringGrid1->Cells[j][i]);

     }

     for (i=0;i<StringGrid1->RowCount;i++)

     {meanofinput[i]=0;

     for (j=0;j<StringGrid1->ColCount;j++)

     {meanofinput[i]=InputData[j][i];

     }

     meanofinput[i]=meanofinput[i ]/ StringGrid1->ColCount;

     }

     for ( j=0;j< StringGrid1->RowCount;j++)

     {Standdeviation[j]=0;

     for ( i=0;i<StringGrid1->ColCount;i++)

     {  Standdeviation[j]+=pow(InputData[i][j]-meanofinput[j],2);

     }

     Standdeviation[j]=sqrt(Standdeviation[j]/(( StringGrid1->ColCount)-1 ));

     }

     for (j=0;j<StringGrid1->RowCount;j++)

     {for (i=0;i< StringGrid1->ColCount;i++)

     {InputData[i][j]=(InputData[i][j]-meanofinput[j])/Standdeviation[j];

     }

     }

 

    for (j=0;j<StringGrid1->RowCount;j++)

     {for (i=0;i< StringGrid1->ColCount;i++)

     StringGrid1->Cells[i][j]=FloatToStr(InputData[i][j]);

     }

 

}

//---------------------------------------------------------------------------

 Quand je remplie les données et j'apui sur le boutton 8 je reçoi le message suivant:
Le projet a provoqué une classes d'exeption EConvert Error avec le message '''n'est pas une valeur en virgule flottante correcte.
j'ai essayé d'autres algorithme mais c'est la mêmes chôse.ps:on ne connait pas la taille des données elle change.
merci d'avance.




Cette discussion est classé dans : for, fastcall, tform2, inputdata, meanofinput


Répondre à ce message

Sujets en rapport avec ce message

La boucle FOR [ par C++ ] Ou est l erreur svp :for (int i=0;i MessageBox (i); Lire toutes les chaines d'un fichier [ par JMGR ] Salut,J'ai fait un programme qui charge toutes les chaines séparées par des espaces, et la boucle for ne se termine jamais, car la dèrnière chaine se Code QBasic à convertir Cpp [ par SneakGuy ] Salut, j'ai besoin d'aide pour convertir ce code QBasic en Cpp...*Désoler, tous les signes"plus" sont remplacés par la lettre p. Merci.CLSFOR x = 1 Probleme rand() et for [ par vanpet ] je suis nouveau en C++ (je migre de VB6) et il y a quelques petites choses que l'aide de Microsoft ne parvient pas a me faire comprendre... (pourquoi Tableau [ par druggedsephiroth ] Je comprends vraiment pas, j'ai un tableau:#define taille 8int cache[taille][taille];ensuite au début du soft, dans la procédure main je mets ca: for fastcall vs stdcall [ par gblade ] Besoin d'aide en C - Fonction [ par bugs2600 ] Voici mon programme quelqu'un pourrait-il m'aider je dois faire une fonction et je ne vois pas comment la faire le non de ma fonction doit etre PRODMA La différence entre for et while ? [ par Krox68 ] J'aimerais savoir la différence entre les boucles for et while,leurs avantages, leurs inconvénients...MerciKrox68 Problème de socket à la connexion avec application Client/Serveur (Borland C++ Builder) [ par ThripS ] Bonjour, je me suis fait un début d'application client/serveur avec Borland C++ Builder mais à la connexion du client j'ai une erreur de socket peu im


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.