2. Algoritmos y Pensamiento Lógico
¿Qué es el sistema binario?
El sistema binario es un sistema de numeración que está representado por esas dos cifras: uno y cero. Las cuales representan diferentes valores cuando hay carga, cuando no hay carga, cuando hay energía, cuando no hay energía, que es el equivalente a uno y cero.
Convertir 34 a binario 34 / 2 = 17 (queda 0) 17 / 2 = 8 (queda 1) 8 / 2 = 4 (queda 0) 4 / 2 = 2 (queda 0) 2 / 2 = 1 (queda 0) 1 / 2 = 0 (queda 1) 34 = 100010
¿Qué son Bits y Bytes? Bit y byte hacen referencia a medidas de almacenamiento de datos y parten inicialmente de un “bit”, que es la unidad de información más pequeña de una computadora que puede tener solo un estado: 1 o 0. De ahí en adelante seguimos hablando de bits, pero, en mayor medida, con mayor capacidad y mayor magnitud.
¿Qué es un bit? El término bit es acrónimo de binary digit (dígito binario), que hace referencia a los dígitos que le indican a nuestro ordenador si hay o no carga de corriente.¿Qué es una constante?
¿Qué es un byte? Es el conjunto de 8 bits y que a su vez representan el valor de un carácter (una letra, un número o un símbolo). Sin embargo, su valor y significado va más allá de eso, porque de estos 8 bits, 7 son de información y uno adicional es de control.
¿Qué es una constante? Las constantes son tipos de datos que no son mutables. Como en toda declaración de tipo, es necesario asignar un valor a la constante} en el momento de la declaración.
A las constantes se les debe asignar un valor cuando se declaran. La única excepción es si la constante se declara como “final”.
Declarar una variable final como constante significa que no puede ser reasignada, incluso si tiene un valor inicial.
Algunos lenguajes de programación como C utilizan const para declarar constantes y permiten asignarles valores en el momento de la declaración. Esto puede hacer que el código sea más legible y eficiente de usar porque elimina la necesidad de declarar e inicializar por separado.
¿Qué es una variable? Las variables se utilizan para almacenar información en un programa. También pueden llamarse símbolos, etiquetas o constantes.
Una variable es el tipo de datos más básico en un lenguaje de programación. En los lenguajes de programación se pueden utilizar variables para almacenar diferentes tipos de datos como números, palabras y cadenas en la memoria del ordenador.
¿Qué son los tipos de datos y cuál debo elegir? Los tipos de datos son los diferentes tipos de datos que empleamos para almacenar información. También podemos pensar en ellos como tipos de variables que utilizamos para representar y almacenar datos. Existen tres tipos principales: escalares, agregados y estructurados.
- El primero y más común es el tipo escalar, que es cualquier tipo de dato de un solo valor, como un entero o una cadena.
- El segundo son los tipos agregados, que son estructuras que tienen miembros con sus propios conjuntos de atributos o campos, como arrays o hashes.
- Y por último, están los estructurados, que pueden ser objetos agregados o escalares con atributos y campos anidados.
¿Cuándo debo utilizar los tipos de datos al escribir código? Los tipos de datos se usan cuando se escribe código en un lenguaje de programación. Esto ayuda al compilador a saber con qué tipo de datos está trabajando. También ayuda al programador a saber con qué tipo de datos está trabajando, para poder asignar valores o establecer funciones que trabajen con ese tipo de datos en particular.
Una variable es un nombre que se da a un lugar de almacenamiento de información, como un entero o un carácter.
En esta lista podrás ver algunos ejemplos para cada uno de los diferentes tipos de variables:
- Int: Un valor entero (contiene solo números enteros)
- Char: Un valor de caracteres (contiene letras y números)
- Float: Un número con decimales (contiene fracciones)
- Bool: Un valor booleano (conocido comúnmente como verdadero o falso)
Strings y concatenación
Un tipo String(cadena) es una secuencia de caracteres. Las cadenas se utilizan para almacenar caracteres individuales, palabras y oraciones completas.
Una variable de tipo String permite almacenar una cadena de caracteres y manipularla utilizando las funciones proporcionadas por el IDE.
Concatenación es el proceso de anexar una cadena al final de otra cadena. Las cadenas se concatenan con el operador +. 'H' - carácter "Hola" - Cadena o String
Datos numéricos
- int
- float
- short
- long
Valores de los tipos de datos
| Tipo | Descripción |
|---|---|
| byte | Puede tener valores de -128 a +127 inclusive |
| short | Puede tener valores de -32768 a +2147486347 inclusive |
| int | Puede tener valores de -2147483648 a +2147486347 inclusive |
| long | Puede tener valores de -9223372036854775808 a +9223372036854775807 inclusive |
| float | Puede tener valores desde -3.4E38 a +3.4E38 los valores se representan como aproximadamente 7 dígitos de precisión |
| double | Puede tener valores de -1.7E308 a +1.7E308. Los valores se representan con aproximadamente 17 dígitos de precisión |
Operaciones matemáticas compuestas: paréntesis y orden de evaluación
La jerarquía de operadores o orden de precedencia determina el orden en el que se resuelven las expresiones cuando se involucran operaciones aritméticas como la suma, resta, multiplicación, división, potencia, raíz y modulo de la división. Este orden es el que permite que una expresión aritmética cualquiera siempre tenga la misma interpretación ya sea resolviéndola en papel, en calculadora o en el computador.
Orden de jerarquía de operaciones
- Primero se resuelve lo que está dentro de paréntesis
( )o corchetes[ ]. - Luego vienen las potencias a b y raíces
√. - Después, multiplicaciones y divisiones (indicadas con
Xy÷), que tienen la misma prioridad y se resuelven de izquierda a derecha. - Finalmente, sumas y restas (indicadas con
+y-), también en el mismo nivel y de izquierda a derecha.
Ejemplos:
5 - 3 * 2 + 4 - 4 / 2
5 - 6 +4 - 2 = 1
(5 - 6 ) + (4 - 2) + 8
-1 + 2 + 8 = 9
True y false: booleanos y tablas de la verdad
Un booleano ese un tipo de dato que solo puede tener dos valores que ya conocemos: true y false.
Estos datos los usamos cuando tenemos preguntas lógicas que necesitan un booleano como respuesta.
¿Hay manzanas? V ¿Hay bananas? V ¿Hay naranjas? F ¿Hay uvas? V
Ahora imagina que tienes que hacer una ensalada de frutas, en este caso tu harías la pregunta de "¿Hay para preparar una ensalada de frutas?"
Pero para prepararla necesitas saber si hay los materiales, por tanto esta pregunta se puede reformular así: ¿Hay uvas? y ¿Hay manzanas? y ¿Hay bananas? y ¿Hay naranjas?
Si ves respondemos cada pregunta tendríamos V, V, V, F. Necesitamos dar un solo boleano para la pregunta inicial de la ensalada.
La respuesta final seria "Falso, no se puede hacer la ensalada porque nos hace falta un ingrediente".
Ahora veamos otro ejemplo:
Digamos que tienes mucha sed, y te preguntas "¿Hay para hace una bebida?"
Para hacer una bebida necesitas agua o naranjas. Entonces tu pregunta debe ser: ¿Hay agua? O ¿Hay naranjas?
Si respondemos esto tendríamos V, F. Necesitamos dar un solo booleano para la pregunta inicial.
La respuesta final seria: "Verdadero, aunque no hay naranjas, el agua es una bebida que también nos quitara la ser."
Aunque no lo creas, todas estas respuestas ya están "hechas" en algo llamado tablas de verdad.
Las tablas de verdad nos dices para cada combinación de booleanos cual será el resultado final.
Para los ejemplos que hicimos tendríamos unas tablas como estas:
Ejemplo 1 -> Verdadero y Verdadero y Verdadero y Falso = Falso
Ejemplo 2 -> Verdadero o Falso = Verdadero
El "y" y el "o" se les conoce como operadores lógicos, se encargan de unir cada uno de los booleanos y dependiendo del operador nos dará un resultado diferente.
Tablas de Verdad
- Composición
| Valor de posición 1 | Valor de posición 2 | Conectiva Lógica |
|---|---|---|
| V | F | Resultado |
| F | V | Resultado |
- Negación
- Una proposición que es verdadera o falsa.
| P | ~P |
|---|---|
| V | F |
| F | V |
- Conjunción
- Es verdadera solo si ambas son verdaderas, y es falsa cuando al menos uno de los valores es falso.
| p | q | p ^ q | |
|---|---|---|---|
| v | and | v | v |
| v | and | f | f |
| f | and | v | f |
| v | and | f | f |
- Disyunción inclusiva
- Es verdadera cuando por lo menos una es verdadera; de lo contrario, será falsa.
| p | q | p ∨ q | |
|---|---|---|---|
| v | or | v | v |
| v | or | f | v |
| f | or | v | v |
| f | or | f | f |
- Disyunción exclusiva
- Es falsa si ambos componentes son verdaderos o falsos.
| p | q | p ⊻ q | |
|---|---|---|---|
| v | xor | v | f |
| v | xor | f | v |
| f | xor | v | v |
| f | xor | f | f |
- Condicional
- Devuelve falso cuando el primer valor es verdadero y el segundo falso.
| p | q | p -> q | |
|---|---|---|---|
| v | then | v | v |
| v | then | f | f |
| f | then | v | v |
| f | then | f | v |
- Bicondicional
- Es verdadera cuando ambas proposiciones son verdaderas o ambas falsas.
| p | q | p <-> q | |
|---|---|---|---|
| v | if | v | v |
| v | if | f | f |
| f | if | v | f |
| f | if | f | v |
Arrays y funciones sobre arrays
Son un conjunto de elementos del mismo tipo ordenados en fila. Representación grafica de un array (vector).

- Su primera posición (index) será siempre 0.
- También puedes almacenar números, caracteres y strings.
- Su tamaño puede variar.
- Puedes ordenarlo de la forma que tu lo requieras.
- Puedes recorrerlo; es decir, podemos pasar uno a uno sobre cada una de sus posiciones y operarlas.
- Puedes acceder a una posición especifica.
- Podemos recorrer un vector y acceder a cualquier elemento con solo tener su índice
- Debemos tener claro que se empieza a contar desde cero
- También podemos ordenar letras de manera ascendente o descendente
Los vectores(arrays) permite guardar un conjunto de datos. Para acceder a cada elemento del vector se utiliza el índice, podemos tener vectores mutables e inmutables dependiendo del lenguaje de programación.
- Mutabilidad: Que puede cambiar su tamaño, cantidad de elementos
- Inmutabilidad: No puede cambiar su tamaño, cantidad de elementos.
Los vectores inician en 0 hasta n sea cual sea su longitud.