Está en la página 1de 2

#include <vcl.

h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
#define Nmax 30
TForm1 *Form1;
int N;
int A[Nmax], Reducido[Nmax], Frecuencia[Nmax];
int Dim_Reducido;

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

//---------------------------------------------------------------------------
void __fastcall TForm1::Edit1Change(TObject *Sender)
{
if (Edit1->Text!="") {
N=Edit1->Text.ToInt();
StringGrid1->ColCount=N;
}
}
//---------------------------------------------------------------------------
//Funci�n Lee_Vector
void Lee_Vector (int N, int A[Nmax], TStringGrid *Q)
{int i;
for (i = 0; i < N; i++) {
A[i]=Q->Cells[i][0].ToInt();
}
}
//---------------------------------------------------------------------------
//Funci�n Escribe_Vector
void Escribe_Vector_H(int N,int A[Nmax], TStringGrid *Q)
{int i;
for (i = 0; i < N; i++) {
Q->Cells[i][0]=AnsiString(A[i]);
}
}
//---------------------------------------------------------------------------
//Funci�n Vector Reducido
int Vector_Reducido(int N,int A[Nmax],int R[Nmax])
{
int i,j,L;
bool No_Esta;

L=1;
R[0]=A[0];

for (i = 0; i < N; i++) {

No_Esta=true;
for (j=0; j < L; j++) {

if (A[i]==R[j]) {
No_Esta=false;
}
}
if(No_Esta)
{
L++;
R[L-1]=A[i];
}
return (L);
}
}

//---------------------------------------------------------------------------
//Funci�n Vector Frecuencia Genera vector
frecuencia
void Vector_Frecuencia (int N,int A[Nmax],int L, int R[Nmax], int F[Nmax])
{ int i,j;
int c; //Contador de elemento repetido

for (i = 0; i < L; i++) {


c=0;
for (j=0; j < N; j++) {
if (R[i]==A[j]) {
c++;
}
}
F[i]=c;
}
}

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

void __fastcall TForm1::Button1Click(TObject *Sender)


{
Lee_Vector (N,A, Form1->StringGrid1);
Dim_Reducido=Vector_Reducido (N,A, Reducido);
Form1->StringGrid2->ColCount=Dim_Reducido;
Escribe_Vector_H(Dim_Reducido, Reducido, Form1->StringGrid2);
Vector_Frecuencia (N,A,Dim_Reducido,Reducido,Frecuencia);
Form1->StringGrid3->ColCount=Dim_Reducido;
Escribe_Vector_H(Dim_Reducido,Frecuencia,Form1->StringGrid3);

También podría gustarte