Narcisista en C

Número narcisista en C

Después de algún tiempo de haber publicado el algoritmo para saber si un número es narcisista en varios lenguajes de programación es hora de implementarlo en el lenguaje C.

No podemos usar el código de C++ porque C++ no es compatible con C; aunque al revés sí se puede. Es decir, podemos usar código de C en CPP pero no podemos usar código de CPP en C.

Narcisista en C

Narcisista en C

En fin, veremos cómo implementar el algoritmo para determinar si un número es narcisista en C.

(más…)

Convertir entero a char en C

Hoy veremos la operación inversa a convertir un char a un entero en C, es decir, convertir un número entero a su representación en carácter. Por ejemplo, convertir 1 a ‘1’.

Esta conversión no funciona para números mayores a 9, porque ya no tienen un único dígito; para ello mejor podemos ver cómo convertir un número a cadena en C, en lugar de convertirlo a char.

Pero bueno, vamos allá y veamos cómo convertir un dígito entero a carácter en C.

(más…)

Subir archivo a PHP con HTML

Subir archivo a PHP (método simple)

Subir un archivo a PHP a través de un formulario, sin usar JavaScript ni otras librerías es algo muy fácil de hacer. Hay tantos tutoriales por ahí que a veces nos confundimos, por lo que hoy veremos cómo subir un archivo a PHP a través de un input de tipo file; sin usar librerías o cosas de esas.

El tutorial será lo más simple posible, para que podamos implementar la carga de archivos en PHP en otros lugares.

(más…)

Par o impar en C con operación AND a nivel de bits

Número par o impar sin usar divisiones ni operador módulo en C

Hoy veremos un algoritmo simple pero un poco interesante; se trata de determinar si un número es par o impar pero con algunas restricciones:

  • No se pueden usar divisiones
  • No se debe usar el operador módulo %

Es decir, no es como estábamos acostumbrados a hacerlo con:

if(numero % 2 == 0) printf("Es par");

Lo haremos en el lenguaje de programación C, pero puedes aplicarlo para otros lenguajes.

Par o impar en C con operación AND a nivel de bits

Par o impar en C con operación AND a nivel de bits

(más…)

Hexadecimal a decimal en C

Hexadecimal a decimal en C

Ya hemos visto algunas conversiones entre números de distintas bases usando C. Por ejemplo:

Vamos a seguir con estos tutoriales y ahora veremos cómo convertir un número hexadecimal a decimal en C; o sea, convertir de base 16 a base 10.

Hexadecimal a decimal en C

Hexadecimal a decimal en C

Lecturas recomendadas

Para no alargar mucho este tutorial he puesto algunas explicaciones en otros lugares. Te invito a leerlas:

Ahora sí vamos allá.

(más…)

Obtener valor entero a partir de dígito hexadecimal en C

Como sabemos, los números hexadecimales se representan con 16 dígitos; por eso son base 16. Para eso se usan los números del 0 al 9 y las letras de la A a la F.

Pero esas letras tienen un valor en decimal, la A tiene el valor de 10, la B de 11 y así hasta que la F tiene 15. Pues justamente hoy veremos cómo obtener ese valor decimal o entero a partir de un carácter hexadecimal.

La función debe quedar de tal forma que si le pasamos una ‘A’ devolverá un 10; o si le pasamos un ‘1’ devolverá 1.

(más…)

Leer datos por teclado en C utilizando scanf

Este post es muy básico pero nos enseña cómo leer una variable dada por un usuario en C utilizando la función scanf. Con esta función podemos leer cualquier tipo de dato, siempre y cuando especifiquemos su tipo correctamente.

La función

Se llama scanf porque escanea según un formato. Como primer argumento recibe el formato (una cadena) y como segundo argumento la dirección de memoria en donde pondrá el valor leído.

Dicha función para leer datos por teclado en C está en la librería stdio.h, lo único que debemos de hacer es incluirla con #include <stdio.h>.

(más…)