{CIP-23 S1}
¿Cómo funcionan las computadoras?
Leonardo
Santiago
Founder
@Kodemia
2000- 2001
2003 - 2013
2013 - 2017
2018 - Hoy
2017 - 2018
Charles
Silva
Head of engineering / Co. Founder
@Kodemia
# CIP-23
Horarios y
Días de clases
Lunes a Viernes de 7 a 10 pm
2 semanas
# CIP-23
Las reglas
- Camara encendida mientras se está en clase
- El micrófono apagado en todo momento, encender solo al interactuar
- Revisaremos 2 o 3 prácticas en clase para comprensión de todos por tiempo
# CIP-23
Canales oficiales
- Avisos
- Prácticas
- Links a materiales
{CIP-23 S2}
Algoritmos y diagramas de flujo
# CIP
Repaso
# CIP
Revisemos los ejercicios...
Inicio
Escribir "Ingresa longitud de un lado de tu triangulo equilatero"
Leer longitud
perimetro = longitud * 3
Escribir "El périmetro del triangulo es:" perimetro
Terminar
perímetro = lado + lado + lado
Algoritmo para...
Calcular el perímetro de un triángulo
Inicio
Escribir "Ingresa longitud de un lado de tu cuadrado"
Leer longitud
perimetro = longitud * 4
Escribir "El périmetro del cuadrado es:" perimetro
Terminar
perímetro = lado + lado + lado + lado
Algoritmo para...
Calcular el perímetro de un cuadrado
Inicio
Escribir "Ingresa el número de lados de tu poligono regular"
Leer num_de_lados
Si num_de_lados < 3 Entonces
Escribir "Eso no es un poligono, intenta de nuevo"
Ir a linea 2
Escribir "Ingresa longitud de un lado de tu poligono"
Leer longitud
Si longitud <= 0
Escribir "Eso no es posible, intenta de nuevo"
Ir a linea 7
perimetro = num_de_lados * longitud
Escribir "El périmetro del poligono es:" perimetro
Terminar
Algoritmo para...
Calcular el perímetro de cualquier polígono regular
perímetro = num_de_lados * lado
?
# CIP
Diagramas de flujo
¿Que es un diagrama de flujo?
Herramienta visual que se utiliza para representar los pasos o procesos de un algoritmo o sistema
Se usan para analizar, diseñar, documentar y comunicar procesos de forma clara
Nos ayudan a encontrar errores incluso antes de programar
# CIP
Simbología
Terminal
Entrada / Salida
Proceso
Representa el inicio y final de un proceso
Representa la entrada y salida de datos
Representa cualquier operación
Línea de flujo
Decisión
Conector de página
Marca el orden secuencial de los procesos y subprocesos
Se usa para representar una decisión y las diferentes posibilidades
INICIO
Escribir "Vamos a preparar un sandwich"
Escribir "¿Tienes pan?"
Leer hay_pan
Si hay_pan == "Si" Entonces
pan_1 = 🍞
pan_2 = 🍞
Si no
Escribir "No puedes hacer un sandwich sin pan :c"
FIN
Escribir "¿Tienes jamon?"
Leer hay_jamon
Si hay_jamon == "Si" Entonces
jamon = 🐷
Si no
Escribir "No puedes hace un sandwich sin jamon :c"
FIN
Escribir "¿Quieres tu sandwich con mayonesa?"
Leer "quires_mayonesa"
Si quieres_mayonesa == "Si"
Escribir "¿Tienes mayonesa?"
Leer hay_mayonesa
Si hay_mayonesa == "Si"
mayonesa = 🍯
Si no
Escribir "Ve a comprar mayonesa"
FIN
Escribir "Podemos empezar a preparar el sandwich"
Si quieres_mayonesa == "Si" Entonces
Asiganr sandwich = pan_1 + mayonesa + jamon + pan_2
Si no
Asignar sandwich = pan_1 + jamon + pan_2
Escribir "Sandwich listo!"
FIN
# CIP
# Práctica
Práctica 1
Realizar el pseudocódigo y diagrama de flujo para obtener el perímetro de cualquier polígono regular
20 min
- Validar los datos de entrada y volver a preguntar por un dato válido en caso de que el ingresado no lo sea
# Práctica
Práctica 2
Realizar el pseudocódigo y diagrama de flujo para permitir a un usuario realizar las siguientes operaciones con 2 números:
- Suma
- Resta
- Multiplicación
- División
20 min
- Validar los datos ingresados
- No debería permitir dividir entre 0
{CIP-23 S3}
Scratch
# CIP
# CIP
# CIP
Nuestro primer script
"Hola mundo koders" en scratch
# CIP
Inicio
Escribir "Ingresa el número de lados de tu poligono regular"
Leer num_de_lados
Si num_de_lados < 3 Entonces
Escribir "Eso no es un poligono, intenta de nuevo"
Ir a linea 2
Escribir "Ingresa longitud de un lado de tu poligono"
Leer longitud
Si longitud <= 0
Escribir "Eso no es posible, intenta de nuevo"
Ir a linea 7
perimetro = num_de_lados * longitud
Escribir "El périmetro del poligono es:" perimetro
Terminar
Practiquemos...
Calcular el perímetro de cualquier polígono regular
En scratch
{CIP-23 S4}
Lenguajes de programación e
introducción a python
# CIP-23 S4
Recapitulemos
Ya sabemos...
- Cómo funcionan las computadoras
- Lo que es un algoritmo
- Pensamiento estructurado
- Pseudocódigo
- Diagramas de flujo
# CIP-23 S4
Recomendación
Canal de YouTube: Bits And Bytes
Videos explicativos sobre cómo funcionan las computadoras
https://www.youtube.com/@bitsandbytestvo/videos
¿Lenguaje de programación?
Lenguaje formal/artificial que permite a una persona definir instrucciones para ser cumplidas por una computadora
Lenguajes de programación
Python
C
C++
JavaScript
Scala
Swift
Ruby
PHP
Java
C#
Cobol
Kotlin
Elixir
Go
Rust
Ensamblador
Clasificación por nivel de abstracción
Python
C
C++
JavaScript
Scala
Swift
Ruby
PHP
Java
C#
Cobol
Kotlin
Elixir
Go
Rust
Ensamblador
Bajo nivel
Alto nivel
Binario
# CIP-23 S4
Clasificación por paradigmas
Imperativos
Programas usando secuencias de instrucciones explicitas que van mutando
el estado de la aplicación
Declarativos
Programas especificando el resultado que quieres obtener no el cómo obtenerlo
Lisp, Prolog
C, Basic, Pascal
Estructurados
Programas mas limpiamente, los gotos no existen y se usan loops y condicionales en su lugar
C, Pascal
# CIP-23 S4
Clasificación por paradigmas
Funcionales
El flujo de control es controlado por llamadas a funciones en lugar de asignar valores a variables
Orientados a objetos
Programas declarando objetos y enviando mensajes entre ellos
Java, C++, C#, Ruby, Python, JavaScript
Elixir, Erlang, Haskell, Lisp, Scala, JavaScript
Orientados a eventos
Programas usando emisores y escuchas de eventos, declarando cuando reaccionar y cuando lanzar eventos
JavaScript, Python
# CIP-23 S4
Clasificación por paradigmas
Multiparadigma
Estos lenguajes de programación soportan diferentes paradigmas de programación y pueden conbinarlos
JavaScript, Python, Kotlin, Java, Swift, ...
# CIP-23 S4
Clasificación por tipo de ejecucion
Compilados
Cuentan con un compilador, un programa que toma el código fuente y lo traduce a código máquina para que la computadora pueda entenderlo
C, C++, Go, Rust, Java, Kotlin, Swift
Interpretados
Cuenta con un intérprete, un programa que toma el código fuente y lo ejecuta directamente sin pasar por compilación
JavaScript, Python
- Sintaxis
- Semántica
- Estructuras de control
- Bucles
- Condicionales
- Variables
- Sistema de tipos
Elementos de un lenguaje de programación
Es la forma visible del lenguaje
Al ser puramente textuales, la sintaxis es la forma en la que se escribe el lenguaje
Sintaxis
Restricciones en la forma de escribir y hacer declaraciones
Semantica
Condicionales
Estructuras de control
Bucles
- For
- While
Se usan para ejecutar selectivamente ciertas sentencias cuando la condición dada se cumple
Se usan para ejecutar repetidamente un grupo de sentencias hasta que se cumpla una condición especifica
- If
- Else-if
Variables
Una variable es un espacio en memoria al que le asignamos un valor
- Este valor le asignamos un nombre para poder hacer referencia a el posteriormente
- Este valor puede cambiar a través del tiempo
# Python
nombre_del_ususario = "Juan Perez"
// JavaScript
let NombreDelUsuario = "Juan Perez"
// C++
// tipo nombreDeVariable = valor
string nombreDeUsuario = "Juan Perez"
Sistema de tipos
Son los tipos de datos que una variable puede albergar, estos dependen del lenguaje de programación pero generalmente son:
- Número (1,-2,10,500,...)
- Decimal / Flotante (1.1, 3.25, -5.02, ...)
- Carácter de texto ("a", "b", "c", ...)
- Texto / Cadena de caracteres / Strings ("Hola")
- Lógico / Booleano (True o False)
Aprendamos Python
Ahora...
Pero antes...
Aprendamos Python
Ahora si...
¿Qué es python?
- Lenguaje de programación
- Creado por Guido van Rossum en 1991
- Interpretado
- Multipropósito
- Multiparadigma
- Multiplataforma
¿Para que se usa python?
- Desarrollo Web
- Scripting de sistemas
- Desarrollo de software
- Ciencia de datos
- Machine learning
- Prototipado
- Etc.
¿Por qué usar python?
- Multiplataforma
- Es fácil de aprender por su sintaxis
- Fue diseñado para ser fácil de leer
YA! a escribir código 👉
Sintaxis
print("Hola koders")
print('Hola koders')
print("Hola", 'koders')
# Sintaxis
Hola mundo Koders
Escritura de texto
# Esto es un comentario en python
print("hola koders") # Esto tambien es un comentario
# Sintaxis
Comentarios
Los comentarios no son parte de las instrucciones, no se ejecutan como instrucciones
# Numeros enteros
x = 1
# Numeros con punto flotante
average = 9.9
# Cadenas de texto o Strings
name = "Pepito"
# Logicos o Booleanos
is_awesome = True
is_boring = False
# Listas (Arreglos)
koders = [ "Kari", "Vic", "Max", "Mike" ]
grades = [ 8, 9.9, 5, 1 ]
# No hay una palabra reservada para declarar variables
# Sintaxis
Variables
# nombres validos
mivariable = "ok"
mi_variable = "ok"
_mi_variable = "ok"
mi_variable_1 = "ok"
miVariable = "ok"
# nombres invalidos
1_mi_variable = "NO"
mi-variable = "NO"
mi variable = "NO"
# Sintaxis
Variables, reglas de nombrado
No empezar con número
No puede contener espacios
No se puede usar guiones medios o caracteres especiales fuera del _
# CamelCase
miNombreDeVariable = "kodemia"
# PascalCase o UpperCamelCase
MiNombreDeVariable = "kodemia"
# SnakeCase
mi_nombre_de_variable = "kodemia"
# Sintaxis
Variables, convenciones de nombrado
Nosotros usaremos SnakeCase
# Podemos usar la función isinstance() para validar el tipo de dato
# y type() para conocer el tipo de dato de una variable
# int
x = 1
type(x) # int
isinstace(x, int) # True
# float
average = 9.9
type(average) # float
print(isinstace(average, float)) # True
# str
name = "Pepito"
type(name) str
print(isinstace(name, str)) # True
# bool
is_awesome = True
is_boring = False
type(is_awesome) # bool
print(isinstace(is_awesome, bool)) # True
print(isinstace(is_boring, bool)) # True
# list
koders = [ "Kari", "Vic", "Max", "Mike" ]
grades = [ 8, 9.9, 5, 1 ]
type(koders) # list
print(isinstace(koders), list) # True
print(isinstace(grades), list) # True
# Sintaxis
Variables y tipos de datos
# el valor None lo usamos para determinar explicitamente
# que no existe un valor
# NoneType
x = None
# Sintaxis
El tipo None
# Usamos la función input()
# para recibir datos del ususario
nombre = input("Ingresa tu nombre:")
# Sintaxis
Recibir datos del usuario
# Práctica
Práctica 1
Crear un programa que le pida al usuario su nombre y lo salude usando su nombre
5 min
# Suma
x + y
# Resta
x - y
# Multiplicación
x * y
# Division
x / y
# Módulo
x % y
# Exponenciación
x ** y
# Sintaxis
Operadores aritmeticos
# Práctica
Práctica 2
Crear un programa para calcular el perimetro de cualquier poligono regular
5 min
- Los valores no necesitan ser dados por el usuario
- No enfocarse en validaciones por el momento
# Conversion a int con la función int()
x = int(1) # x seria 1
y = int(5.5) # y seria 5
z = int("1") # z seria 1
# Conversión a float con la función float()
x = float(1) # x seria 1.0
y = float(6.6) # y seria 6.6
z = float("33") # z seria 33.0
w = float("41.2") # w seria 41.2
# Conversión a str con la función str()
x = str("a1") # x seria 'a1'
y = str(2) # y seria '2'
z = str(3.0) # z seria '3.0'
w = str(True) # w seria 'True'
j = str(False) # j seria 'False'
# Sintaxis
Conversiones o "casting"
#CIP-23 S7
Práctica 2.1
Crear un programa para calcular el perimetro de cualquier poligono regular
5 min
- Los valores DEBEN ser dados por el usuario
- No enfocarse en validaciones por el momento
#CIP-23 S7
Práctica 3
Crear un programa que solicite al usuario un número y le imprima la siguiente información:
- El doble del número
- La mitad del número
- La diferencia entre ese número y el número 100
- El residuo de dividir ese numero entre 3
5 min
- No enfocarse en validaciones por el momento, asumir que el usuario ingresa un valor numérico
{CIP-23 S5}
Condicionales
Condicionales
Condicionales
Condición
Verdadero
Falso
Instrucción
Instrucción
Instrucción
Instrucción
Condicionales
numero > 5
Verdadero
"el número es mayor a 5"
numero = 10
if numero > 5:
print(numero, " es mayor a ", 5)
print ("Esto se ejecuta sin importar la condicion")
if
Condicionales
numero = 10
if numero > 5:
print(number, " es mayor a ", 5)
print ("Esto se ejecuta sin importar la condicion")
if
numero > 5
Verdadero
"el número es mayor a 5"
Condicionales
numero = 10
if numero > 5:
print(number, " es mayor a ", 5)
print ("Esto se ejecuta sin importar la condicion")
if
numero > 5
Verdadero
"el número es mayor a 5"
Condicionales
numero = 10
if numero > 5:
print(number, " es mayor a ", 5)
print ("Esto se ejecuta sin importar la condicion")
if
numero > 5
Verdadero
"el número es mayor a 5"
number = 10
if number > 5:
print(number, " es mayoar a ", 5)
# Sintaxis
Indentanción
- La indentación indica que instrucciones pertenecen a cierto bloque
- Indentar mal, causará errores en la lógica (bugs) o directamente errores de sintaxis
Condicionales
numero > 5
Verdadero
Falso
"el número es mayor a 5"
"el número es menor o igual a 5"
if ... else ...
numero = 10
if numero > 5:
print(numero, " es mayoar a ", 5)
else:
print(numero, " es menor o igual a ", 5)
if ... else
# Sintaxis
if ... elif ... else
numero > 5
Verdadero
"el número es mayor a 5"
"el número es menor o igual a 5 pero no es 0"
número == 0
Falso
Falso
Verdadero
"el número es exactamente 0"
"el número es menor o igual a 5 pero no es 0"
numero = 10
if numero > 5:
print(numero, " es mayoar a 5")
elif numero = 0:
print(numero, " es igual a 0")
else:
print(numero, " es menor o igual a 5"
# Sintaxis
if ... elif ... else
# Igual
x == y
# Diferente
x != y
# Mayor que
x > y
# Menor que
x < y
# Mayor o igual
x >= y
# Menor o igual
x <= y
# Sintaxis
Operadores de comparación
# y
and
x > 1 and y < 5
# o
or
x > 1 or y < 5
# no
not
not x > 1
# Sintaxis
Operadores logicos
#CIP-23 S7
Práctica 4
Crear un programa que solicite un número al usuario e imprima en consola "par" si el número es par o "impar" si el número es impar
15 min
- No enfocarse en validaciones por el momento (asumir que el valor ingresado es un número)
#CIP-23 S7
Práctica 5
Crear una calculadora permita:
- sumar
- restar
- dividir
- multiplicar
- potenciar
2 números
15 min
- Asumir que el usuario ingresará solo valores numéricos
{CIP-23 S6}
Bucles o Loops
# Sintaxis
Bucles o Loops
# Sintaxis
Mientras o "While"
contador = 1
while contador < 10:
print("contador: ", contador)
contador = contador + 1
#CIP-23 S7
Práctica 6
Crear un programa para calcular el perímetro de cualquier polígono regular
Usa el "while" para asegurarte de que los valores ingresados por el usuario son válidos
10 min
#CIP-23 S4
Práctica 7
Crear un programa que imprima los numeros del 1 al 100 y en cada número divisible entre 3 imprima "Fizz" junto al número, en cada número divisible entre 5 "Buzz" junto al número y FizzBuzz si es divisible entre ambos
15 min
1
2
3 - Fizz
4
5 - Buzz
6 - Fizz
7
8
9 - Fizz
10 - Buzz
15 - FizzBuzz
y así hasta el 100
- Todo esto usando while
# Sintaxis
Para o "for"
for x in range(0, 10):
print(x)
# Sintaxis
la función range
range(5) # 0,1,2,3,4
range(1,5) # 1,2,3,4
range (-2, 5) # -2, -1, 0, 1, 2, 3, 4
- El range no incluye el límite superior
#CIP-23 S4
Práctica 8
Crear un programa que imprima la tabla de multiplicar (1 al 10) de un número ingresado por el usuario
5 min
Ej. si n=5
En terminal debe verse:
5x1=5
5x2=10
5x3=15
5x4=20
5x5=25
y asi hasta el 10
#CIP-23 S4
Práctica 9
Crear un programa que imprima los numeros del 1 al 100 y en cada número divisible entre 3 imprima "Fizz" junto al número, en cada número divisible entre 5 "Buzz" junto al número y FizzBuzz si es divisible entre ambos
5 min
1
2
3 - Fizz
4
5 - Buzz
6 - Fizz
7
8
9 - Fizz
10 - Buzz
15 - FizzBuzz
y así hasta el 100
#CIP-23 S4
Práctica 10
Crear un programa para generar los primeros N números de la serie de fibonacci, Donde N es un número determinado por el usuario
15 min
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144
{CIP-23 S7}
Arreglos, Arrays o Listas
Arreglos / Arrays / Listas
Pepe
Se usan para almacenar múltiples valores en una sola variable
koders
0
1
2
3
4
5
6
7
Luis
Jess
Ana
Fer
Raul
Vic
Max
Indice
Longitud = 8
Un arreglo es una colección ordenada de valores
# CIP
Pepe
koders
0
1
2
3
4
5
6
7
Luis
Jess
Ana
Fer
Raul
Vic
Max
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
Este arreglo se ve así en python:
Listas en pyhon
# CIP
Pepe
koders
0
1
2
3
4
5
6
7
Luis
Jess
Ana
Fer
Raul
Vic
Max
koders = [
"Pepe",
"Luis",
"Jess",
"Ana",
"Fer",
"Raul",
"Vic",
"Max"
]
También puede escribirse en varias lineas
# CIP
Pepe
koders
0
1
2
3
4
5
6
7
Luis
Jess
Ana
Fer
Raul
Vic
Max
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
koders[0] # Pepe
koders[7] # Max
koders[3] # Ana
koders[10] # ERROR
Usamos los índices para acceder a los valores del arreglo
⚠️ Los indices son numericos ⚠️
# CIP
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
koders[-1] # Max
koders[-2] # Vic
koders[-3] # Raul
koders[-10] # ERROR
Índices negativos
# CIP
frutas = ["manzana", "piña", "uva", "platano"]
numeros = [10, 1, 50]
mezclado = ["manzana", 1, "piña", True, None]
# CIP
Los arreglos pueden guardar valores de diferentes tipos a la vez
el_elegido = 5
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
koders[el_elegido] # Raul
# CIP
Los índices pueden ser variables
# Práctica
Práctica 11
Crear un programa que dada una lista de koders, imprima el koder que se encuentre en el índice especificado por el usuario
5 min
⚠️ La lista no debe ser dada por el usuario aun
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
len(koders) # 8
frutas = ["manzan", "piña", "mango", "coco"]
len(frutas) # 4
vacio = []
len(vacio) # 0
# Podemos guardar ese dato en una variable
longitud = len(koders)
La función len()
# CIP
Podemos usar la función len() para saber la longitud de un arreglo
# Práctica
Práctica 12
Crear un programa que imprima todos los elementos de un arreglo junto a su indice
5 min
⚠️ La lista no debe ser dada por el usuario aun
# Práctica
Práctica 13
Crear un programa que imprima todos los elementos de un arreglo junto a su indice hasta el indice dado por el usuario
10 min
⚠️ La lista no debe ser dada por el usuario aun
# Práctica
Práctica 14
Crear un programa que promedie las calificaciones de un alumno
10 min
⚠️ Las calificaciones no son dadas por el usuario
⚠️ Las calificaciones son hardcodear en un arreglo en nuestro programa
{CIP-23 S8}
Métodos de array
# Sintaxis
El for para las listas
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
for item in koders:
print(item)
Podemos usar for para iterar una lista
Métodos de array
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
koders.clear()
len(koders) # 0
Usamos la función .clear() para vaciar un array
koders = ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max"]
koders.append("Kari")
# ["Pepe", "Luis", "Jess", "Ana", "Fer", "Raul", "Vic", "Max", "Kari"]
Usamos .append() para agregar un nuevo elemento al final del array
Podemos ver mas métodos de Array en W3Schools
# Práctica
Práctica 15
Crear un programa que imprima todos los elementos de un array usando el loop "for"
5 min
⚠️ Debe usarse el loop for
# Práctica
Práctica 16
Crear un programa que cuente cuántos elementos de cada tipo hay dentro de un array
10 min
⚠️ Considerar los tipos bool, str, int y float
💡 Recuerda la función isinstance()
# Práctica
Práctica 17
Crear un programa que imprima los elementos de un array pero en orden inverso al original
5 min
⚠️ Ver la lista de métodos de arreglo
# Práctica
Práctica 18
Crear un programa que le pida al usuario ingresar una lista de nombres, el número de nombres permitido es indeterminado
Una vez el usuario no desee ingresar más nombres, el programa le da al usuario la siguiente información:
- Cuantos nombres se ingresaron
- Si existen al menos un valor repetido o no
- Cual es el nombre más largo de todos los ingresados
- Cual es el nombre más corto de todos los ingresados
20 min
# Práctica
Práctica 19
Crear un programa que le pida al ususario ingresar una lista de nombres, el numero de nombres permitido es indeterminado
Una vez el usuario no desee ingresar más nombres.
el programa preguntará al usuario un nombre y regresará el índice del nombre ingresado
10 min
{CIP-23 S9}
Funciones
# Funciones
Funciones
Funciones
Entrada
Salida
Proceso
Funciones
Entrada
Salida
Proceso
Proceso
Suma
Funciones
Entrada
Salida
Proceso
Proceso
Suma
2
2
Funciones
Entrada
Salida
Proceso
Proceso
Suma
2
2
4
Sintaxis
def nombre(parámetro_1, parametro_2, etc):
# Instrucciones de la función
Funciones
Entrada
Salida
Proceso
Proceso
Suma
2
2
4
def suma(x, y):
resultado = x + y
return resultado
Funciones
# Definición
def suma(x, y):
resultado = x + y
return resultado
# Llamada
suma(2,2)
# Práctica
Práctica 20
Crea una función que reciba como parámetro un nombre y salude usando ese nombre
5 min
# Práctica
Práctica 21
Crea una función que reciba como parámetro una lista de nombres y regrese el nombre más largo de la lista
7 min
# Práctica
Práctica 22
Crea una función que reciba como parámetro una lista de nombres y regrese el nombre más corto de la lista
5 min
# Práctica
Práctica 23
Crea una función que reciba como parámetro una lista de nombres y regrese True si la lista contiene al menos un valor repetido y False cuando la lista no contiene valores repetidos
7 min
# Práctica
Práctica 24
Crea una función que reciba como parámetro una lista de calificaciones y regrese el promedio de las calificaciones
7 min
# Práctica
Práctica 25
Crea un función que reciba como parámetro una lista de nombres y te devuelva la lista de valores repetidos en esa lista
15 min
# Práctica
Práctica 26
Crea un función que reciba como parámetro una lista de nombres y te devuelva la misma lista pero con los nombres escritos en mayusculas
15 min
# Práctica
Práctica 27
Crea un función que reciba 2 parametros:
- una lista de números
- un número
y regrese una lista con los todos los números que son mayores al número dado como segundo parametro
15 min
# Práctica
Práctica 28
Crea un función que reciba 2 parámetros:
- una lista de nombres
- un número
y regrese una lista con los todos los nombres cuyas longitudes sean más grandes que el número dado como segundo parametro
15 min
# Práctica
Práctica 29
Crear un programa que cree un archivo llamado "prueba.txt"
# min
⚠️ Usa W3Schools para encontrar la información necesaria
# Práctica
Práctica 30
Crear un programa que escriba una nueva linea en un archivo
# min
⚠️ Usa W3Schools para encontrar la información necesaria
# Práctica
Práctica 31
Crear un programa que lea el contenido de un archivo y lo imprima en consola
# min
⚠️ Usa W3Schools para encontrar la información necesaria
# Funciones
Python modules
from archivo import funcion
from calculadora import suma
import calculadora
# CIP
from ... import
{CIP-23 S10}
El comienzo...
# CIP
¿Para que me sirve aprender a programar?
- Automatizar trabajo o tareas
- Hacer mi trabajo más rápido o con menos recursos
- Tratamiento y análisis de datos
- Conseguir un empleo
¿Que me conviene aprender si quiero conseguir un empleo como programador?
- Depende...
# CIP
Existen diferentes roles en la industria de la tecnología
- Desarrollo Web
- Desarrollo Mobile
- Back End
- Front End
- Tester / QA
- Base de datos
- SysOps / Devops / SRE
- Data science
# CIP
Desarrollo mobile
- Android
- Kotlin
- Java
- iOS
- Swift
Kotlin
Java
Swift
# CIP
Tester / QA
- Mobile
- Swift
- Kotlin
- Test suites
- Web
- Javascript
- Servicios / Backend
- JavaScript
- HTTP y protocolos
- Postman
- Proxyman
- Test suits
# CIP
Base de datos
- SQL
- PostgreSQL
- MySQL
- Linux
- Administración de servidores
# CIP
SRE
Site Relaiability Engineer
- Linux
- Sistemas operativos
- Cloud
- AWS
- GCP
- Docker
- Kubernetes (K8s)
# CIP
Data scientist
- Python
- Pandas
- Jupyter notebooks
- probabilidades y estadistica
# CIP
Desarrollo web
- Front End
- JavaScript (no es Java)
- Back End
- JavaScript (Node)
- Python
- Java
- PHP
- Ruby
- Go
- Bases de datos
# CIP
CIP-23 Python
By Carlos Silva
CIP-23 Python
- 25