Determina si todas las letras de un texto pueden o no formar un palíndromo. Obtener código fuente.
2. ts
¿Qué imprime en la salida estándar? Imprime "[1,234,567,890]".
Rastree la memoria del programa. Su dibujo debe ilustrar el estado del programa cuando el control está por iniciar la ejecución de la línea 20. Dibujo pendiente. En general deben aparecer los cuatro segmentos de memoria. En el segmento de datos estará el arreglo de 27 caracteres de b. En el segmento de pila habrán dos invocaciones a funciones: una para main() sin variables locales, y otra para ts() con cuatro variables locales. El segmento de memoria dinámica debe estar vacío.
Describa qué trabajo realiza la función ts(). La función ts() recibe un número entero grande sin signo y lo convierte en un string introduciendo comas como separadores de miles. Por ejemplo ts(10000000) produce "10,000,000". La función retorna un puntero a una cadena de caracteres alojada en memoria estática, por tanto, el valor de la última conversión será válido hasta que no se invoque otra vez a ts().
¿Cuáles serían identificadores significativos para las siguientes variables:?
[Opcional] ¿Qué imprime el programa si la línea 25 se reeplaza por printf("[%s][%s]\n", ts(1234567890ull), ts(0));. Explique rápidamente. Imprime "[0][0]". Para poder invocar a una función se deben evaluar todos sus parámetros primero. Dado que el puntero que ts() retorna es siempre hacia la misma memoria (el vector estático en segmento de datos), tanto la primera como la segunda invocación a ts() retornarán la misma cadena, la cual es modificada dos veces, y el último resultado es la conversión de ts(0).
3. Eliminación de Gauss-Jordan
]]>
Convierte una matriz aumentada usando el algoritmo de Gauss-Jordan a una matriz identidad, explicando cada paso. Obtener código fuente.
Makefile
]]>
Un Makefile para compilar los programas anteriores. Obtener código fuente.