Está en la página 1de 33

UNIVERSIDAD RICARDO PALMA

INTELIGENCIA ARTIFICIAL

PYTHON

Docente: Mg. Jaime Escobar Aguirre

1
Que es programar
• Herramientas para manipular datos de forma automática
• Datos = información que se puede presentar de muchas formas
• Números, símbolos, textos, imágenes, videos
• Todo lo que se puede percibir es información.
• La información es almacenable en medios digitales, con la
programación se puede manipular el acceso de dicha información.
• Que se puede hacer:
• Búsqueda de información en registros, complejas operaciones matemáticas,
• Creación de formularios y guardar las respuestas, dibujar gráficos en función a
los datos.
• Dotar de vida a los personajes de un videojuego.
• Sin datos la programación no tiene sentido.

2
Modelo para programar eficientemente
Dependiendo de la
dificultad se
Elabora los construyen
procedimientos Felicidad
programas para Completa:
Estudia el necesarios para definir el ingreso y
cumplir con el tu programa
problema de organización de los
análisis resuelve un
forma detallada datos. problema.

Conocerlo y
entenderlo

Después de la instrumentación
vienen las continuas pruebas o
feedback para ajustar el
programa al diseño y al análisis
previo.

3
Que es un algoritmo

• Objeto que al comunicarse con el entorno debe dar facilidades para el


ingreso de datos y salida de resultados.
• Dentro de un algoritmo se describen instrucciones que realizaran la
transformación de los datos y producirá los resultados esperados.

4
Simbología a tener en cuenta

• Instrucción de asignación
• Asigna dentro del bloque el valor de r a la variable v V <- R

• Instrucción de entrada
• Asigna un valor desde afuera del bloque para la variable v V

• Instrucción de salida
• Muestra fuera del bloque el valor que contiene la variable v V

5
Ejercicio1:
• Realice el programa que calcule el área de un triangulo cuyos
lados son: 5,6 y 8
• Algoritmo : Área del triangulo en función a sus lados
• Variables:
• Lados : a,b,c
• s= área del triangulo
• t= semiperimetro
• s= 𝑡 𝑡 − 𝑎 𝑡 − 𝑏 𝑡 − 𝑐 𝑓𝑜𝑟𝑚𝑢𝑙𝑎 𝑑𝑒𝑙 𝑎𝑟𝑒𝑎 𝑑𝑒𝑙 𝑡𝑟𝑖𝑎𝑛𝑔𝑢𝑙𝑜
• Siendo t= (a+b+c)/2

6
Solucion ejercicio1
• #Repaso_python
• from math import *
• a=5; b=6; c=8;
• t=(a+b+c)/2
• s= sqrt(t*(t-a)*(t-b)*(t-c))
• print("el resultado es: ", s)
• print("el resultado es:{:^12,.2f}".format(s))

7
Ejercicio2: el área del cuadrado es 40 𝑚2 , encuentre el valor de la
diagonal.
• Algoritmo
• Lado del cuadrado =a ; diagonal del cuadrado es d
• Por Pitágoras decimos: 𝑑2 = 𝑎2 + 𝑎2 -> d =a 2

from math import *


a= sqrt(40)
d= a*sqrt(2)
print("el resultado es:{:^12,.2f}".format(d))
#8.94
#Mejora al código
#pedir los valores a través de variables de entrada, validarlo como datos numéricos
.

8
Ejercicio3
• Escribe un programa que pregunte al usuario por el número de horas
trabajadas y el coste por hora. Después debe mostrar por pantalla la paga
que le corresponde.

• horas = float(input("Introduce tus horas de trabajo: "))


• coste = float(input("Introduce lo que cobras por hora: "))
• paga = round(horas * coste, 3)
• print("Tu paga es " + str(paga))
# Introduce tus horas de trabajo: 30
#Introduce lo que cobras por hora: 30
#Tu paga es 900.0

9
Ejercicio4
• Escribir un programa que pregunte el nombre del usuario en la consola y un
número entero e imprima por pantalla en líneas distintas el nombre del
usuario tantas veces como el número introducido.
• #nombre se repite segun segunda variable
• nombre = input("¿Cómo te llamas? ")
• n = input("Introduce un número entero: ")
• print((nombre + "\n") * int(n))

10
Ejercicio5
• Escribir un programa que pida al usuario su peso (en kg) y estatura (en
metros), calcule el índice de masa corporal y lo almacene en una variable, e
imprima por pantalla la frase Tu índice de masa corporal es <imc> donde
<imc> es el índice de masa corporal calculado redondeado con dos
decimales.
• #calculo del indice de masa corporal
• peso = input("¿Cuál es tu peso en kg? ")
• talla = input("¿Cuál es tu estatura en metros?")
• imc = round(float(peso)/float(talla)**2,2)
• print("Tu índice de masa corporal es " + str(imc))

11
ejercicio6
• Una juguetería tiene mucho éxito en dos de sus productos:
payasos y muñecas. Suele hacer venta por correo y la empresa
de logística les cobra por peso de cada paquete así que deben
calcular el peso de los payasos y muñecas que saldrán en cada
paquete a demanda. Cada payaso pesa 112 g y cada muñeca
75 g. Escribir un programa que lea el número de payasos y
muñecas vendidos en el último pedido y calcule el peso total
del paquete que será enviado.

12
Solución
• #ejercicio peso total del paquete
• peso_payaso = 112
• peso_muñeca = 75
• payasos = int(input("Introduce el número de payasos a enviar: "))
• muñecas = int(input("Introduce el número de muñecas a enviar: "))
• peso_total = peso_payaso * payasos + peso_muñeca * muñecas
• print("El peso total del paquete es " + str(peso_total))

13
Ejercicios Propuestos

1. Calcule el área total de un bloque de dimensiones 20, 30, 40 cm


2. Calcule el área total de un cilindro de radio 5 y altura 4 metros
3. Calcule el área de un triángulo rectángulo cuyos diagonal mide 5 cm. y tiene un
ángulo interno de 40 grados

14
Asignaciones en Python
• Asigna valores a las variables.
• Notación Python a=10 (se asigna valor de 10 a la variable a)
• Asignaciones especiales
• Asignaciones en la misma línea y deben separarse por ;
• Se realizan de izquierda a derecha
• X=3; y=8; z=5.2
• Asignaciones múltiples
• Deben separarse por comas, la asignación se realiza de forma
correspondiente a cada variable, se asigna a cada valor de izquierda a
derecha.
• a,b,c =“saludo”, 5, 7.52

15
Asignaciones en Python – Parte ll
• Asignaciones a varias variables el mismo valor
• a=b=c=10
• Intercambio de contenidos de dos variables
• a=3
• b=5
• a,b= b,a # a contiene a 5 y b contiene a 3
• Notación abreviada para operar y asignar
• a=a+b
• a+=b
• Se aplica a otra operaciones aritmeticas

16
Instrucción para el ingreso de datos en python
• Ingresar un valor a una variable desde el teclado.
• V= input(“Ingrese valor: ”) # instrucción permite pedir que el valor se
lea por teclado.
• Para convertir el texto a valor entero
• v=int(input(‘mensaje’))
• Para convertir el texto a valor decimal
• v=float(input(‘mensaje’))

17
Ejemplos
• Ingresar un dato tipo texto
• s=input('Ingrese su nombre: ')
• Ingrese un dato (número entero) y conviértalo a tipo numérico
entero
• n=int(input('Ingrese la cantidad de hijos: '))
• Ingrese un dato (número entero o real) y conviértalo al tipo
numérico real
• p=float(input('Ingrese su peso en kg.: ‘))
• Si la conversión no se puede dar, el programa emitirá un mensaje de
error de conversión de datos

18
Instrucción para salida de datos en Python
• Se usa para mostrar mensajes o el contenido de los resultados de las variables, para mostrar el
contenido de una variable se debe escribir el nombre de la referida variable.

• print(v) # Notación de salida básica en Python.

• Ejemplos:
• print(x)
• print('El resultado es: ', x )
• print('El area es: ', s, ' El volumen es: ', t )
• Si aplicamos un salto de línea(\n) quedaría así:
• print('El area es: ', s, ' \nEl volumen es: ', t )
• Se puede imprimir con ‘’ o “” de la siguiente manera
• print(“en el ejercicio anterior dije ‘Hola Mundo’ y funciono”)
• Print(‘en el ejercicio anterior dije “Hola Mundo” y funciono’)

19
Especificaciones de formato para salida
• Opcionalmente print tiene especificaciones de formato que
mejoran la apariencia de los resultados que se muestran en la
pantalla, las cuales están precedidas con el símbolo %
• Ejemplos
• n=23 Especificaciones de formato: %cd, %c.pf, %cs, %c.pg
En donde c, p son el número de columnas y número de decimales o
• x=7.78925 dígitos respectivamente, mientras que d, f, s, g se refieren en ese orden a
datos de tipo entero(decimal), real(flotante), cadena(string) y en notación
• e='ESPOL' de potencias de 10.
• u=4.5**12
• print('Prueba %5d%8.2f%10s%12.5g'%(n,x,e,u))
• #Prueba 23 7.79 ESPOL 6.8953e+07

20
Datos adicionales acerca del formateo
• Las especificaciones de formato se pueden almacenar con un nombre
• f='Prueba %5d%8.2f%10s%12.5g'
• print(f%(n,x,e,u)) #------
> almacenando la salida e imprimiendo la variable final.

• también se puede especificar el formato con el comando format de la


siguiente manera:
• print(format(n,'5d'))

print(format(x,'8.2f'))

21
Ejercicios diversos
• Desarrolle un programa en Python que calcule el área de un triangulo,
pidiendo sus lados.
• Algoritmo: Área de un triángulo pidiendo sus lados
• Variables
• a, b, c: Lados del triángulo (Datos desconocidos)
• s: Área del triángulo (Es el resultado esperado)
• t: Semiperímetro (Valor usado para la fórmula del área
• s t(t a)(t b)(t c) = − − − , (Fórmula del área del triángulo)
• siendo t = (a + b + c)

22
Solucion1
• from math import sqrt
• a=float(input('Primer lado: '))
• b=float(input ('Segundo lado: '))
• c=float(input ('Tercer lado: '))
• t=(a+b+c)/2
• s=sqrt(t*(t-a)*(t-b)*(t-c))
• print('Respuesta: ',s)
• # mejorar la salida --- menos de 1 minuto

23
propuestos
• 1. Dados el radio y altura de un cilindro calcule el área total y el
volumen
• 2. Se tiene un recipiente cilíndrico con capacidad en litros. Su altura
es un dato en metros. Determine el diámetro de la base
• 3. Dadas las tres dimensiones de un bloque rectangular calcule y
muestre su área total y su volumen.
• 4. La siguiente fórmula proporciona el enésimo término u de una
progresión aritmética: u = a + (n − 1) r
• en donde a es el primer término, n es el la cantidad de términos y r
es la razón entre dos términos consecutivos. Calcular el valor de r
dados u, a, n
• 5. En el ejercicio anterior, calcular el valor de: n dados u, a, r

24
Operadores de aritmética entera

• División entera : // trunca los decimales del resultado y entrega la


parte entera.
• c=20//3
print(c)
6

• El operador % entrega el residuo de la división de dos enteros.


• r=20%6
print(r)
2

25
ejemplo
• Dado un numero entero de
dos cifras, escriba un
programa en Python para
sumar las cifras. #ejercicio -aritmetica entera
#Suma de dos cifras
• Solución: n=int(input("Ingrese un entero:"))
• Variables: d=n//10
u=n%10
• n: dato entero de dos cifras s=d+u
• d: digito de las decenas print('Respuesta: ',s)

• u: digito de las unidades


• s: suma de dígitos

26
La función divmod
• Sean x, y dos números
• Divmod(x,y) entrega el par (x//y, x%y)

• [a,b]=divmod(20,6)
• print(a,b)

27
Propuestos.
1. Dado un número entero (dias), determine y muestre el equivalente en años, meses y
días sobrantes. Por simplicidad suponga que un año tiene 365 días y que cada mes tiene
30 días. Use los operadores // y % para obtener cociente y resíduo.
Ejemplo. 1372 días equivalen a 3 años, 9 meses y 7 días.

2. Dado un dato con la cantidad de días. Encuentre el equivalente en meses, semanas y


días sobrantes. Suponga que cada mes tiene treinta días.
Ejemplo. Si el dato es 175 el resultado será 5 meses, 3 semanas y 4 días

3. Lea dos números de tres cifras cada uno. Sume la cifra central del primer número con la
cifra central del segundo número y muestre el resultado.

4. Dado un número entero de tres cifras. Muestre el mismo número pero con las cifras en
orden opuesto.

5. Dado un número entero (cantidad de dólares), mostrar el valor equivalente usando la


menor cantidad de billetes de 100, 50, 20, 10, 5 y 1.

28
Ejercicios de listas
• Escribir un programa que almacene las asignaturas de un curso (por
ejemplo Matemáticas, Física, Química, Historia y Lengua) en una lista y
la muestre por pantalla.
• #ejercicios de listas
• #cursos que estudio
• cursos = ["Matemáticas", "Física", "Química", "Historia", "Lengua"]
• for curso in cursos:
• print("Yo estudio " + curso)

29
• Escribir un programa que almacene en una lista los números del 1 al
10 y los muestre por pantalla en orden inverso separados por comas.
• #lista invertida
• lista_numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
• for i in range(1, 11):
• print(lista_numeros[-i], end=", ")

30
• Escribir un programa que pregunte al usuario los números ganadores
de la lotería primitiva, los almacene en una lista y los muestre por
pantalla ordenados de menor a mayor.
• #lista de numeros de loteria ganadores ordenados
• lista_ganadores = []
• for i in range(6):
• lista_ganadores.append(int(input("Introduce un número ganador: ")))
• lista_ganadores.sort()
• print("Los números ganadores son " + str(lista_ganadores))

31
• Escribir un programa que almacene las asignaturas de un curso (por
ejemplo Matemáticas, Física, Química, Historia y Lengua) en una lista y
la muestre por pantalla.
• #asignatura de cursos y las notas
• cursos = ["Matemáticas", "Física", "Química", "Historia", "Lengua"]
• notas = []
• for curso in cursos:
• nota = input("¿Qué nota has sacado en: " + curso + "?")
• notas.append(nota)
• for i in range(len(cursos)):
• print("En " + cursos[i] + " has sacado " + notas[i])

32
33

También podría gustarte