Bueno es te es un pequeño codigo en matlab para el conteo de caracteres ASCII en un archivo .txt y espero les sirva, igual si alguien tiene una mejor forma o una nueva idea que lo comparta.
IPN Programando con Talento Mexicano
%programa para el conteo de caracteres de un archivo .txt
%Improve and enjoy it!!
clc;
k=1;
caracteres(k)=0;%matris para graficar
fid = fopen('El amor viene y va.txt');%abrir el archivo
cadena = fscanf(fid,'%c');%escanear el archivo y guardarlo en la matriz cadena
for i=32:255 %en 32 es espacio, 225 caracteres ascii
dat=char(i);%char convierte el numero ascii a caracter
total=length(strfind(cadena,dat));
%strfind busca un string en otro, formando una matris con la posicion donde
%fue encontrado, leghth calcula el tamaño de la matris
probabilidad=total/length(cadena);%probablidad #eventos/#totalEventos
if(total ~= 0)%sí el total a sido diferente se cero se mostrara
caracteres(k)=total;
fprintf('Caracter: \t%c se repitio:\t %d veces ',dat,total);
fprintf('con probabilidad\t %f \n',probabilidad);
k=k+1;
end
end
fprintf('Tama?o del texto de:%d caracteres',length(cadena));%tamaño total del txt
bar3(caracteres);%grafica de barras
%referencia
%http://www.mathworks.com/access/helpdesk/help/techdoc/index.html
martes, 25 de agosto de 2009
viernes, 7 de agosto de 2009
Matrices y Vectores en Matlab
Matlab es un programa para calculo de matrices básicamente
Definición de una matriz 3x3
>> A=[1 2 3 ;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
>> B=[11 12 13 ;14 15 16;17 18 19]
B =
11 12 13
14 15 16
17 18 19
Declaración de una matriz transpuesta
>> A'
ans =
1 4 7
2 5 8
3 6 9
Declaracion
>> B' (DE CLARACION DE UNA MATRIZ B TRASPUESTA)
ans =
11 14 17
12 15 18
13 16 19
>>x=2.*A (MULTIPLICACION POR UN ESCALAR)
x =
2 4 6
8 10 12
14 16 18
>> Y=A*B (MULTIPLICACION DE A *B)
Y =
90 96 102
216 231 246
342 366 390
>> f=A.*B (MULTIPLICACION DE A *B PERO UNO A UNO)
f =
11 24 39
56 75 96
119 144 171
>> a=A(2,3) (ELEMENTO DE 2,3 DE LA MATRIS A)
a =
6
>> b=B(3,2) (ELEMENTO DE 3,2 DE LA MATIS B)
b =
18
>> c=A(1,:) ( TODOS LOS ELEMENTO DE LA LINEA 1 DE LA MATIS A)
c =
1 2 3
>> d=B(:,1) ( TODOS LOS ELEMENTO DE LA COLUMNA 1 DE LA MATIS B)
d =
11
14
17
>> A(2,3)=B(3,2) (EL ELEMENTO 3,2 DE LA MATRIZ A LO PASAMOS AL ELEMENTO 2,3 DE A)
A =
1 2 3
4 5 18
7 8 9
>> A(:,1)=B(:,1) (TODOS LOS ELEMENTO DE LA COLUMNA 1 DE LA MATIS B LOS PASAMOS ALA COLUMNA 1 DE LA MATRI A)
A =
11 2 3
14 5 6
17 8 9
Definición de una matriz 3x3
>> A=[1 2 3 ;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
>> B=[11 12 13 ;14 15 16;17 18 19]
B =
11 12 13
14 15 16
17 18 19
Declaración de una matriz transpuesta
>> A'
ans =
1 4 7
2 5 8
3 6 9
Declaracion
>> B' (DE CLARACION DE UNA MATRIZ B TRASPUESTA)
ans =
11 14 17
12 15 18
13 16 19
>>x=2.*A (MULTIPLICACION POR UN ESCALAR)
x =
2 4 6
8 10 12
14 16 18
>> Y=A*B (MULTIPLICACION DE A *B)
Y =
90 96 102
216 231 246
342 366 390
>> f=A.*B (MULTIPLICACION DE A *B PERO UNO A UNO)
f =
11 24 39
56 75 96
119 144 171
>> a=A(2,3) (ELEMENTO DE 2,3 DE LA MATRIS A)
a =
6
>> b=B(3,2) (ELEMENTO DE 3,2 DE LA MATIS B)
b =
18
>> c=A(1,:) ( TODOS LOS ELEMENTO DE LA LINEA 1 DE LA MATIS A)
c =
1 2 3
>> d=B(:,1) ( TODOS LOS ELEMENTO DE LA COLUMNA 1 DE LA MATIS B)
d =
11
14
17
>> A(2,3)=B(3,2) (EL ELEMENTO 3,2 DE LA MATRIZ A LO PASAMOS AL ELEMENTO 2,3 DE A)
A =
1 2 3
4 5 18
7 8 9
>> A(:,1)=B(:,1) (TODOS LOS ELEMENTO DE LA COLUMNA 1 DE LA MATIS B LOS PASAMOS ALA COLUMNA 1 DE LA MATRI A)
A =
11 2 3
14 5 6
17 8 9
Suscribirse a:
Entradas (Atom)