Affected files: .obsidian/app.json .obsidian/plugins/obsidian-omnivore/data.json 01. Projects/Coding Mentorship/Temas/Fundamentos de la programación 2.md 01. Projects/Coding Mentorship/Temas/Fundamentos de la programación 3.md 01. Projects/Coding Mentorship/Temas/Pasted image 20240520174417.png 01. Projects/Coding Mentorship/Temas/Pasted image 20240520174436.png 01. Projects/Coding Mentorship/Temas/Requerimients.md 01. Projects/Coding Mentorship/Temas/_attachments/Pasted image 20240520174501.png 01. Projects/Coding Mentorship/Temas/_attachments/Pasted image 20240520174546.png 01. Projects/Coding Mentorship/Temas/_attachments/Pasted image 20240520175134.png 01. Projects/Coding Mentorship/Temas/_attachments/Pasted image 20240520175325.png 01. Projects/Coding Mentorship/Temas/_attachments/Pasted image 20240520175739.png 01. Projects/Coding Mentorship/Temas/_attachments/Pasted image 20240520180128.png Pasted image 20240520173241.png
6.1 KiB
6.1 KiB
| id | aliases | tags | date_created | date_modified | |
|---|---|---|---|---|---|
| Fundamentos de la programación 2 |
|
Thursday, May 16th 2024, 10:03:49 am | Sunday, May 19th 2024, 11:05:58 am |
Fundamentos De la Programación
Código
notes:
- Lo que veremos es transversal para cualquier lenguaje de programación.
- dicho esto, cada lenguaje tiene sus leves diferencias.
Flujo De Datos
- Condicionales
- Bucles
- Funciones
Condicionales
flowchart TD
start([Inicio]) ---> entrada1[/ x = 1 /]
entrada1 ---> if1{"¿x < 10?"}
if1 --si--> salida1[/x es menor que 10/]
if1 --no--> salida2[/x no es menor que 10/]
salida1 ---> finish([Fin])
salida2 ---> finish([Fin])
Condicionales
If/Else
| Sentencia | Traducción literal | Descripción |
|---|---|---|
if |
Si… | El siguiente bloque de código se ejecuta si la sentencia se evalúa como verdadera |
else |
de lo contrario… | El siguiente bloque se ejecuta si la última sentencia if se evalúa como falsa |
else if/elif |
de lo contrario, si… | El siguiente bloque se ejecuta si la ultima sentencia if se evalúa como falsa y la siguiente condición se evalúa como verdadera |
Condicionales
If/Else
// JAVA
int x = 1;
if (x < 10) {
System.out.println("x es menor a 10");
else if (x < 50) {
System.out.println("x es menor a 50");
} else {
System.out.println("x es un número muy grande");
}
# PYTHON
x = 1;
if x < 10:
print("x es menor a 10");
elif x < 50:
print("x es menor a 10");
else:
print("x es un número muy grande");
-- LUA
x = 1;
if x < 10 then
print("x es menor a 10");
elseif x < 50 then
print("x es menor a 10");
else
print("x es un número muy grande");
end
Condicionales
Ternary Operator
// JAVA
String foo = 10 % 2 == 0 ? "10 es par" : "10 no es par";
# PYTHON
foo = "10 es par" if 10 % 2 == 0 else "10 no es par";
Condicionales
Switch
// JAVA
int dia = 4;
switch (dia) {
case 6:
System.out.println("Hoy es sábado");
break;
case 7:
System.out.println("Hoy es domingo");
break;
default:
System.out.println("Esperando el fin de semana :3");
}
Ciclos/Bucles
flowchart TD
start([Inicio]) --> entrada1[/ x = 1 /]
entrada1 --> if1{"¿x < 10?"}
if1 --no--> finish([Fin])
if1 --si--> salida1[/x es menor que 10/]
salida1 --> process1[x += 1]
process1 --> if1
Ciclos
While
// JAVA
int i = 1;
while (i < 10) {
System.out.println(i);
i += 1;
}
/* --- */
int j = 0;
do {
System.out.println(j);
j += 1;
}
while (j < 50);
# PYTHON
i = 1
while i < 10:
print(i)
i += 1
notes:
- El bloque del while se ejecuta mientras la condicional sea Verdadera
- Preguntar: "¿cuál es el ultimo número que se va a imprimir?" -> 9
- El while se usa cuando no sabemos cuando la condición se vaya a cumplir.
- while: mientras verdadero, hacer
- do-while: hacer, mientras verdadero
Bucles
For
// JAVA
for (int i = 0; i <= 5; i++) {
System.out.println(i);
}
/* --- */
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (int i = 0; i < cars.length(); i++) {
System.out.println(cars[i]);
}
# PYTHON
for x in range(6):
print(x)
notes:
- python declara el for de esta manera por ser un lenguaje más declarativo.
Bucles
For Each
// JAVA
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (String i : cars) {
System.out.println(i);
}
# PYTHON
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)
Bucles
| Sentencia | Significado literal | Descripción |
|---|---|---|
Continue |
Continuar | Detiene la ejecución del código y continúa con la siguiente iteración |
break |
Romper | Sale del bucle, independiente si la condición sigue siendo verdadera |
Bucles
// JAVA
while (true) {
boolean error = Math.calculos_complicados()
if (error) {
break;
}
}
/* --- */
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (String i : cars) {
if (i == "BMW") {
System.out.println("No trabajamos con BMW!");
continue;
}
Fabrica.procesar(i);
}
Funciones
Las funciones son bloques de código re-utilizables, ayuda a evitar la duplicidad del código siguiendo lógicas como "don't repeat yourself".
Las funciones vendrían a representar un "proceso".
notes:
- en java no existen las funciones fuera de una clase, por lo que sólo las veremos en OOP cómo métodos.
- entrada, proceso, salida.
Funciones
- Las funciones deben ser definidas antes de ser llamadas.
- pueden recibir argumentos/parámetros.
- En lenguajes tipeados, deben tener un tipo de retorno.
Funciones
# PYTHON
def saludar(nombre):
print("hola " + nombre)
saludar("pedro")
saludar("juan")
saludar("diego")
# PYTHON
def elevarCuadrado(num1):
resultado = num1 * num1
return resultado
foo = elevarCuadrado(2)
print(foo)
Scope De Las Variables
# PYTHON
def myFunction():
numero = 5
# calculos complicados
return numero
myFunction()
print(numero) # Error
# PYTHON
def myFunction():
numero = 5
# calculos complicados
return numero
numero = myFunction()
print(numero) # funciona
Scope De Las Variables
# PYTHON
PI = 3.14
def areaCirculo(radio):
area = PI * (radio * radio)
return area
area = areaCirculo(3)
print(area)