TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
Matrices
1. Modelo 15. Matriz con variables1.
Declara una matriz dinamico
mat=new int *[nfil];
for (int i=0; i < nfil; i++) {
mat[i]=new int[ncol];
}
int **mat;
delete []mat[i];
}
delete [] mat;
for (int i=0; i < nfil; i++) {
Libera la matriz:
Modelo 16. Matriz con TstringGrid2.
Grid1->Options << goEditing; (Habilita)
Grid1->Options >> goEditing; (Deshabilita)
Grid1->FixedCols=0;
Grid1->Visible=visible;
Grid1->RowCount=fil;
Grid1->ColCount=col;
Grid1->Cells[j][i]="";
for (int j = 0; j < col; j++) {
}
for (int i=0; i < fil; i++) {
}
Grid1->FixedRows=0;
0 1 2 3 4
0 20 30 125 7
1 5 1 0 1
2 0 1 0 1
NFil =Numero de filas matriz
NCol=Numero de columnas matriz
Pf = Avanza desde Cero hasta alcanzar a NFil
Pc = Avanza desde Cero hasta alcanzar a NCol
La variable de recursión es pc ya que esta avanza en posiciones. Al
terminar una FILA de la matriz toca que pc =0 para empezar la fila
siguiente.
Caso Base pf == NFil
Pc == NCol
Posf y PosC alcanzan el limite máximo
Paso
Recursivo
Pc+1 Pc se aproxima a NCol . Es una
variable de recursión
Paso
Recursivo
Pf+1 Pf se aproxima a NFIl. Es una variable
de recursión.
Ejemplos Matrices
Apuntes Recur_1 página 1
2. Crear un algoritmo recursivo para cargar los elementos de una matriz.
Procesos a ImplementarA)
void CarMat(int **,int ,int );
void CarMatVar(int **,int ,int,int,int);
void MosMat(int **,int ,int,int,int );
void MosMatInv(int **,int ,int );
CodificacionB)
void CarMat(int **mat,int nfil,int ncol){ // Le falta los puntos de parada (detener)
int pf=0;
int pc=0;
CarMatVar(mat,nfil,ncol,pf,pc);
};
void CarMatVar(int **mat,int nfil,int ncol,int pf,int pc){
if(pc==ncol){
pc=0;
pf=pf+1;
}
if(pf == nfil){
return;
mat[pf][pc]=1+rand()%(100-1);
CarMatVar(mat,nfil,ncol,pf,pc+1);
}else{
}
};
void MosMa(int **mat,int nfil,int ncol,int pf,int pc){
if(pc==ncol){
pc=0;
pf=pf+1;
}
if(pf == nfil){
return;
ShowMessage(mat[pf][pc]);
MosMat(mat,nfil,ncol,pf,pc+1);
}else{
}
};
void __fastcall TForm1::carManu1Click(TObject *Sender)
{
int nfil = StrToInt(InputBox("MATRIZ","Introduzca Nro. Filas:","4"));
int ncol = StrToInt(InputBox("MATRIZ","Introduzca Nro. Columnas:","4"));
int **mat;
mat=new int* [nfil];
for (int i=0; i < nfil; i++) {
mat[i]=new int[ncol];
Modelo 15. Matriz con variables
sábado, 03 de noviembre de 2012 11:04
Apuntes Recur_1 página 2