Bueno…. Ya llevaba un largo tiempo sin actualizar, y es que en el liceo nos tienen hasta el tope de tareas y ytrabajos, pero como ya estoy que termino el año, le dedico mas tiempo al blog. Entonces, dejo una lista de las funciones (escritas por mi) que mas uso y algunas que me gustan bastante.
Sustituto de strlen
Esta funcion la uso a menudo, principalmente respondiendo preguntas en Yahoo! Respuestas sobre que la requieren, de todos modos, aqui va:
int contar( char *ptr ) {
int contador = 0;
while( *ptr != '' ) {
contador++;
ptr++;
}
return contador;
}
Esta funcion se llama dando el nombre del arreglo que se debe medir ( contar( ejemplo ) ) y devuelve el numero de elementos
Contar numero de cifras de un numero( util )
int contar( int numero ) {
int contador = 0;
do {
numero = numero / 10;
contador += 1;
} while ( numero / 10 != 0 );
return contador + 1;
}
Esta cuenta el numero de cifras de un numero, por ejemplo, si le damos el numero 4444 como argumento, entonces devuelve 4, porque tiene cuatro cifras.
Voltear cifra (combinada con la anterior )
int voltear( int *variable ) {
int contador = 1;
int copia = *variable;
contar( copia , &contador );
int repeticion = 2;
int diez = 100;
*variable = copia % 10;
do {
*variable = (*variable * 10) + ( copia % diez / ( diez / 10 ) ) ;
diez *= 10;
repeticion++;
} while ( repeticion <= contador );
}
Esta, combinada con la anterior, cuenta el numero de cifras del numero(anterior) y en base a ello lo voltea. No es muy util, pero como curuiosidad esta muy bien! NOTA: En la anterior, para que las dos funcionen, declaramos contador como apuntador, enlas definiciones, para que tome el valor de contador (el de voltear) y lo modifique ( int *contador );
Cambio de oracionn a caracteres extraños
void cambia( char *recorre ) {
char abc[] = { "abcdefghijklmnopqrstuvwxyz" };
char abc_m[] = { "ABCDEFGHIJKLMNOPQRSTUVWXYZ" };
int abc_a[] = { 64, 225, 184, 209, 156, 159, 71, 72, 124, 74, 204, 179, 77, 110, 157,
232, 12, 169, 36, 194, 230, 234, 87, 158, 190, 21 };
for ( int i = 0, x = 0; *( recorre + i ) != '' ; i++ )
for ( x = 0; *( abc + x ) != ''; x++ ) {
if ( *( recorre + i ) == *( abc + x ) || *(recorre + i ) == *( abc_m + x ) )
*( recorre + i ) = *( abc_a + x );
}
}
Esta lee un “nick” o frase y la modifica cambiando sus caracteres por otros mas “raros” o peculiares, esta la hice para responder una pregunta en Yahoo! Respuestas ^^.
Y se acabaron por ahorita, pero prometo traer mas cuando tenga un poco de tiempo ; )


hola es que estaba probndo el que cuenta las cifras y no me da, si le meto 9 me dice que tiene una cifra, pero si le meto 69 me dice que tambien tiene una cifra, y si le meto 120 me dice que tiene 2………… que puede ser?, gracis por su ayuda
@s: ups… se me pasaron algunas cosas, si
. Ya lo corrijo, pero lo que faltaba era aumentar en 1 contador cuando lo regresabas… tambien puse un corchete de mas hehe
Hola.. q tal.. apenas m stan enseñan a trabajr en c++ y no entiendo myt bien como utilizar y poner los codigos.. y como utilizar los contadores.. tngo un program q tngo q realiar y tngo q sacar la cantidad de cada cosa q m piden.. m puedn decir mas o menos como utilizar los contadores.! Grax