Update from obsidian - thinkpad
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
This commit is contained in:
parent
0e825121b9
commit
3473680392
14 changed files with 492 additions and 22 deletions
|
|
@ -0,0 +1,375 @@
|
|||
---
|
||||
id: Fundamentos de la programación 2
|
||||
aliases:
|
||||
- Fundamentos De la Programación
|
||||
tags: []
|
||||
date_created: Thursday, May 16th 2024, 10:03:49 am
|
||||
date_modified: 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
|
||||
|
||||
```mermaid
|
||||
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
|
||||
// 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
|
||||
# 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
|
||||
-- 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
|
||||
// JAVA
|
||||
String foo = 10 % 2 == 0 ? "10 es par" : "10 no es par";
|
||||
```
|
||||
|
||||
```python
|
||||
# PYTHON
|
||||
foo = "10 es par" if 10 % 2 == 0 else "10 no es par";
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Condicionales
|
||||
|
||||
## Switch
|
||||
|
||||
```java
|
||||
// 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
|
||||
|
||||
```mermaid
|
||||
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
|
||||
// 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
|
||||
# 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
|
||||
// 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
|
||||
# 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
|
||||
// JAVA
|
||||
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
|
||||
|
||||
for (String i : cars) {
|
||||
System.out.println(i);
|
||||
}
|
||||
```
|
||||
|
||||
```python
|
||||
# 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
|
||||
// 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
|
||||
# PYTHON
|
||||
def saludar(nombre):
|
||||
print("hola " + nombre)
|
||||
|
||||
saludar("pedro")
|
||||
saludar("juan")
|
||||
saludar("diego")
|
||||
```
|
||||
|
||||
```python
|
||||
# PYTHON
|
||||
def elevarCuadrado(num1):
|
||||
resultado = num1 * num1
|
||||
return resultado
|
||||
|
||||
foo = elevarCuadrado(2)
|
||||
print(foo)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Scope De Las Variables
|
||||
|
||||
```python
|
||||
# PYTHON
|
||||
def myFunction():
|
||||
numero = 5
|
||||
# calculos complicados
|
||||
return numero
|
||||
|
||||
myFunction()
|
||||
print(numero) # Error
|
||||
```
|
||||
|
||||
```python
|
||||
# PYTHON
|
||||
def myFunction():
|
||||
numero = 5
|
||||
# calculos complicados
|
||||
return numero
|
||||
|
||||
numero = myFunction()
|
||||
print(numero) # funciona
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Scope De Las Variables
|
||||
|
||||
```python
|
||||
# PYTHON
|
||||
|
||||
PI = 3.14
|
||||
|
||||
def areaCirculo(radio):
|
||||
area = PI * (radio * radio)
|
||||
return area
|
||||
|
||||
area = areaCirculo(3)
|
||||
print(area)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Fin :3
|
||||
Loading…
Add table
Add a link
Reference in a new issue