Informática aplicada I en el CIMAT - ago-dic 2013

Tarea núm. 10

Para entregar: el martes 29 de oct hasta las 23:59 hrs vía correo electrónico a marcelamq@cimat.mx.

Material de apoyo:


Nota: no se te olvide incluir en el reporte al menos dos salidas de tus programas y el código de los programas.

Problema 1.

  1. Deitel, p. 195, 5.14.
  2. Escribe un programa que utiliza los tres enunciados del inciso anteriores.

Problema 2. Deitel, p. 197: 5.31.

Nota: "Heads and Tails"=caras y cruces = Aguila y Sol.

Problema 3. Deitel, p. 197: 5.35.

Nota: como no hemos aprendido a manipular caracteres en C todavia, puedes hacer una ligera modificacion; en lugar de preguntar "Would you like to play again (y or n)?" puedes preguntar "Would you like to play again (1=yes, 0=no)?".

Problema 4.

  1. Deitel, p. 197, 5.37.
  2. Escribe un programa que utiliza la función del inciso anterior y usalo para calcular algunos valores: 23, (-3)5, etc.
  3. (Opcional) Escribe una función power(b, e, n) que al ser invocada regrese el valor de be mód n; es decir, be % n (las variables b, e, n, son enteros positivos). Utiliza esta función en un programa que verifica el Pequeño Teorema de Fermat: para todo entero b y primo p, bp es congruente con b módulo p; es decir, bp % p = b % p. Encuentra un ejemplo que muestra que es esencial suponer en el teorema de Fermat que p es primo.

    (Nota: existen números n llamados pseudo primos de Fermat que no son primos pero sí satisfacen el teorema de Fermat para algunos, o incluso todos b; en este último caso n se llama pseudoprimo absoluto de Fermat ; los pseudoprimos son muy útiles en una rama importante de la informática llamada criptografía. Es un problema abierto todavía si existe un número infinito de pseudoprimos absolutos de Fermat. Reto: encuentra el primer pseudoprimo absoluto de Fermat. Más información aqui. )

Problema 5. Deitel, p. 200: 5.47.