Affected files: .obsidian/plugins/dataview/data.json .obsidian/plugins/obsidian-advanced-slides/data.json .obsidian/plugins/obsidian-omnivore/data.json 01. Projects/Coding Mentorship/Temas/Fundamentos de la programación 2.md
229 lines
6.3 KiB
Markdown
229 lines
6.3 KiB
Markdown
---
|
|
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: Thursday, May 16th 2024, 5:24:04 pm
|
|
---
|
|
|
|
# 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.
|
|
|
|
---
|
|
|
|
## Tipos De Datos
|
|
|
|
- Primitivos
|
|
- Numericos
|
|
- Booleanos
|
|
- Carácteres
|
|
- Complejos
|
|
- Arrays (arreglos)
|
|
- Strings (texto)
|
|
- Clases
|
|
|
|
---
|
|
|
|
## Numéricos En Java
|
|
|
|
| Tipo de dato | Tamaño | Descripción |
|
|
| ------------ | ------- | -------------------------------------------------------------------------------- |
|
|
| `byte` | 1 byte | Números enteros desde -128 hasta 127 |
|
|
| `short` | 2 bytes | Números enteros desde -32,768 hasta 32,767 |
|
|
| `int` | 4 bytes | Números enteros desde -2,147,483,648 hasta 2,147,483,647 |
|
|
| `long` | 8 bytes | Números enteros desde -9,223,372,036,854,775,808 hasta 9,223,372,036,854,775,807 |
|
|
| `float` | 4 bytes | Números con coma flotante, puede tener desde 6 hasta 7 dígitos decimales. |
|
|
| `double` | 8 bytes | Números con coma flotante. puede tener hasta 15 dígitos decimales. |
|
|
|
|
notes:
|
|
|
|
- Coma flotante have referencia a que el número se guarda como un entero y hay una parte de los bytes dedicada a guardar "donde la coma debería estar"
|
|
|
|
---
|
|
|
|
## Numéricos En Python
|
|
|
|
| Tipo de dato | Descripción |
|
|
| ------------ | ------------------------------------------------------------- |
|
|
| `int` | Números enteros, positivos o negativos sin límite. |
|
|
| `float` | Números con coma flotante, positivo o negativo sin límite. |
|
|
| `complex` | Números complejos, con una `j` denotando su parte imaginaria. |
|
|
|
|
---
|
|
|
|
## Char
|
|
|
|
| Tipo de dato | Tamaño | Descripción |
|
|
| ------------ | ------ | --------------------------------------------- |
|
|
| `char` | 2 byte | almacena solo 1 carácter/letra o valor ASCII. |
|
|
|
|
notes: no existe en python.
|
|
|
|
---
|
|
|
|
## Booleans
|
|
|
|
| Tipo de dato | Tamaño | Descripción |
|
|
| ------------ | ------ | --------------------------------- |
|
|
| `boolean` | 1 byte | Almacena valores `True` o `False` |
|
|
|
|
notes:
|
|
|
|
- aveces abreviado como `Bool`
|
|
- _"coherción"_
|
|
|
|
---
|
|
|
|
## Ejemplos
|
|
|
|
```java
|
|
// JAVA
|
|
int myNum = 5; // Integer (whole number)
|
|
float myFloatNum = 5.99f; // Floating point number
|
|
char myLetter = 'D'; // Character
|
|
boolean myBool = true; // Boolean
|
|
String myText = "Hello"; // String
|
|
```
|
|
|
|
```python
|
|
# PYTHON
|
|
myNum = 5 # Integer (whole number)
|
|
myFloatNum = 5.99 # Floating point number
|
|
myBool = True # Boolean
|
|
myText = "Hello" # String
|
|
```
|
|
|
|
---
|
|
|
|
## Arrays
|
|
|
|
Los arreglos son un tipo de dato que nos permiten almacenar multiples valores en una sola variable
|
|
|
|
### Características:
|
|
|
|
- Tienen un tamaño fijo de elementos.
|
|
- Cada elemento debe ser del mismo tipo de dato.
|
|
- Se pueden acceder a sus elementos a través de un indice.
|
|
- Un array puede container otros arrays (A.K.A. arrays multidimensionales).
|
|
|
|
note: Al ser una estructura compleja, su implementación exacta varia de lenguaje a lenguaje.
|
|
|
|
---
|
|
|
|
## Arrays
|
|
|
|
```java
|
|
// JAVA
|
|
|
|
int[] myNum = {10, 20, 30, 40};
|
|
System.out.println(myNum[0]) // imprime el N° 10
|
|
```
|
|
|
|
```python
|
|
# PYTHON
|
|
|
|
myNum = [10, 20, 30, 40]
|
|
print(myNum[0]) # imprime el N° 10
|
|
```
|
|
|
|
notes:
|
|
- Mencionar la diferencias de arrays vs lists
|
|
---
|
|
|
|
## Strings
|
|
|
|
los Strings o _"cadenas"_ son en esencia un **array de caracteres**. Se utilizan para representar texto.
|
|
|
|
---
|
|
|
|
## Otros tipos de datos
|
|
|
|
- Hashmaps (A.K.A. dictionaries, structs, associative array u otros).
|
|
- Clases
|
|
- Enums
|
|
- Sets
|
|
- Tuples
|
|
|
|
---
|
|
|
|
## Operadores Aritméticos
|
|
|
|
| operador | Nombre | Descripción | Ejemplo |
|
|
| -------- | -------------- | ---------------------------------------- | ------- |
|
|
| + | Adición | Suma dos valores | x + y |
|
|
| - | Substracción | Resta un valor desde otro<br> | x - y |
|
|
| * | Multiplicación | Multiplica dos valores | x * y |
|
|
| / | División | Divide un valor por otro | x / y |
|
|
| % | Módulo | Retorta el _resto_ de una división | x % y |
|
|
| ++ | incremento | Incrementa el valor de una variable en 1 | ++x |
|
|
| -- | Decremento | Decrementa el valor de una variable en 1 | --x |
|
|
|
|
---
|
|
|
|
## Operadores de asignación
|
|
|
|
| operador<br> | Ejemplo | Es lo mismo que |
|
|
| ------------ | ------- | --------------- |
|
|
| = | x = 5 | x = 5 |
|
|
| += | x += 3 | x = x + 3 |
|
|
| -= | x -= 3 | x = x - 3 |
|
|
| *= | x *= 3 | x = x * 3 |
|
|
| /= | x /= 3 | x = x / 3 |
|
|
| %= | x %= 3 | x = x % 3 |
|
|
|
|
---
|
|
|
|
## Operadores de comparación
|
|
|
|
| Operador | Nombre | Ejemplo |
|
|
| -------- | ----------------- | -------- |
|
|
| `==` | Igual a | `x == y` |
|
|
| `!=` | No es igual a | `x != y` |
|
|
| `>` | Mayor que | `x > y` |
|
|
| `<` | Menor que | `x < y` |
|
|
| `>=` | Mayor o igual que | `x >= y` |
|
|
| `<=` | Menor o igual que | `x <= y` |
|
|
|
|
notes:
|
|
- los operadores lógicos dan por resultado un booleano, el cuál puede ser pasado algo que lo evalúe (un if) o ser guardado en una variable
|
|
|
|
---
|
|
|
|
## Operadores lógicos
|
|
|
|
| Operador | Nombre | Descripción | Ejemplo |
|
|
| -------- | ------ | -------------------------------------------------- | ---------------- |
|
|
| && | and | Se evalúa como `True` si ambos lados son `True` | x < 5 && x < 10 |
|
|
| \|\| | or | Se evalúa como `True` si al menos 1 lado es `True` | x < 5 \|\| x < 4 |
|
|
| ! | not | Invierte el resultado de la evaluación | !(x < 5) |
|
|
|
|
---
|
|
|
|
## Funciones
|
|
|
|
|
|
|
|
---
|
|
|
|
## Ahora Te Toca a Ti
|
|
|
|

|
|
|
|
---
|
|
|
|
## Ejercicio 03
|
|
|
|
Crear un diagrama de actividad de recepción y despacho de pedido con cobro de factura.
|
|
|
|
---
|
|
|
|
## Fin :3
|