Desarrollar un programa que obtenga los promedios especificados de un texto dado:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
En este caso al estar todas las cantidades especificadas en las mismas columnas del texto sólo repetimos el contador especificando que sea en estas. Para ahorrar tiempo ponemos el nombre del archivo ya incluido en el programa en vez de preguntar por el.
Desarrollar una función que reciba el nombre de un archivo e indique el número de veces que aparece «banana» en el texto, sin importar mayúsculas o minúsculas, o si está pegado a otra palabra o no.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Continuaré de acorde al tutorial que estoy viendo mi clase en Python. En esta ocasión corregimos el anterior error que imprimia la edad en la conversación y metemos dos subclases que son la ISC y LED (estudiante de Sistemas Computacionales y de Derecho) además de añadir unas conversaciones referente a su profesión cómo «debo programar en Python» o «Debo resolver el caso de Alphabet». Debido a las sublistas sólo si el objeto es ISC dirá algo referido a programación y sólo si es LED dirá algo referido a derecho.
Para realizar este programa me basé en el siguiente tutorial:
1: Desarrollar una función que obtenga la distancia entre dos puntos en un plano cartesiano.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Muy simple, sólo debemos de pedir los cuatro números y calcular su distancia con un teorema de pitágoras. Luego imprimimos su resultado.
2: Desarrollar una función que imprima un triángulo acorde al número ingresado:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Se desarrolla la función y se crean los contadores, el primero para que vaya incrementando la impresión de ‘T’ y cuando alcance el número ingresado, creamos un segundo contador que lo decrezca hasta que alcance 0.
3: Se desarrolla una función que retorne el factorial de un objeto.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
También muy sencillo. Sólo pedimos el número y la función desarrolla un contador que va decreciendo el número para que este se multiplique por si mismo menos uno y al final retorne el factorial.
4: Desarrollar una función que devuelva el promedio de una lista.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
De nueva cuenta es un programa sencillo. Primero ingresamos el tamaño de la lista y le creamos un contador para que se ingresen todos los números que el usuario quiere ingresar. Luego la función tiene otro contador que sumará todos los números de la lista y los dividirá entre la cantidad de ellos para obtener su promedio.
5: Desarrollar una función que devuelva el número menor de una lista:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Creamos el contador para la lista y luego la función simplemente contendrá un ‘min’ que nos devolverá el número menor de la lista considerando números positivos y negativos.
6: Desarrollar una función que devuelva el número pedido de la lista de Fibonacci:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Utilizamos el método de recursión para simplificar la función. Especificamos que si es 0 nos retorne 0 y que si es 1 devuelva 1 y la recursión finalmente desarrollara el procedimiento (n-1)+(n-2) a cada número que se vaya obteniendo para así sumar todos los 1 y 0 que queden al final y obtener el número buscado.
7: Desarrollar una función que sume los cuadrados de una lista:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Muy sencillo. Hacemos el contador para la lista y la lista va multiplicando todos sus números al cuadrado y añade los resultados a un contador que se mostrará al final.
8: Desarrollar una función que calcule la raíz cuadrada de un número por el método babilónico:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Lo único complicado de esto es pasar el método a la función. Nuestro margen de error será de .00001 para ser lo más exactos posibles y ponemos el conjunto de operaciones; a = n/a, su resultado al cuadrado, sino es la raíz ahora a = (n/a+a)/2 y si no es raiz cuadrada todavía se multiplica y así sucesivamente. Tendrá un pequeño rango de fallas para los números enteros, pues no nos dará la raíz cerrada.
9: Desarrollar una función que identifique las veces que aparece ‘banana’ en un texto:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Pedimos el nombre del archivo, lo ejecutamos y convertimos cada linea en minusculas para que se acomode a la palabra que buscamos. Luego iniciamos un index que se reiniciara cada vez que encuentre banana y nos proporcionará ver cuantas veces aparece en el texto incluso si la palabra buscada esta repetida varias veces sin un espacio de por medio.
10: Desarrollar una función que encuentre al máximo común divisor entre dos números:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Pedimos los números (y ejecutamos un while para asegurarnos de que ambos son positivos) y creamos la función. Mientras y sea mayor a 0, r = y, luego y = x%y al final x = r. retornará x pero es necesario que y sea mayor que 0 para que esto suceda.
Para desarrollar este programa me apoye en compañeros de clase, el profesor y en las siguientes paginas:
En esta ocasión desarrollé con apoyo de un tutorial mi primera clase, y por ende, mis primeros objetos en Python.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Empezamos por crear la clase, la cual en este caso será de humano.Ponemos su función inicial, y marcamos que la edad sea variable acorde al objeto. Luego creamos la función conversación en la cual marcaremos que vuelva a imprimir la edad a pesar de que no es necesario, pero en este caso lo hacemos para asegurarnos de que si tome la edad cómo una variable que siempre deberá de repetir.
Al final ingresamos la conversación y ejecutamos el programa. Cuando este se ejecute repetirá las edades antes de las conversaciones de los renglones 15 y 17. si bien en la vida real esto sería ilógico, se debe a que esta es mencionada como principal en las funciones. El programa sólo imprime las líneas 12, 13,15 y 17 y tiene dos objetos, que son Héctor y Juan