0% encontró este documento útil (0 votos)
67 vistas15 páginas

Unidad 2 Tema 4,5,6 - Constantes, Variables, Tipos de Datos

El documento aborda los fundamentos de programación, centrándose en constantes, variables y tipos de datos. Se explica la diferencia entre variables locales y globales, así como la importancia de las constantes en la programación. Además, se presentan los tipos de datos primitivos y compuestos, junto con ejemplos de operadores y su precedencia en el lenguaje C.

Cargado por

Pablo Andres
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
67 vistas15 páginas

Unidad 2 Tema 4,5,6 - Constantes, Variables, Tipos de Datos

El documento aborda los fundamentos de programación, centrándose en constantes, variables y tipos de datos. Se explica la diferencia entre variables locales y globales, así como la importancia de las constantes en la programación. Además, se presentan los tipos de datos primitivos y compuestos, junto con ejemplos de operadores y su precedencia en el lenguaje C.

Cargado por

Pablo Andres
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

ASIGNATURA: FUNDAMENTOS DE INFORMÁTICA

UNIDAD 2. LÓGICA ALGORITMICA Y ESTRUCTURAS DE CONTROL

TEMA: CONSTANTES, VARIABLES Y TIPOS DE DATOS

1. CONSTANTES Y VARIABLES

En programación, las constantes y las variables son elementos esenciales que


permiten almacenar y manipular información en un programa. Su correcta comprensión
y uso son cruciales para desarrollar soluciones eficientes y claras.

¿Qué son las variables?


Las variables son contenedores que almacenan datos cuyo valor puede cambiar durante
la ejecución de un programa. Cada variable tiene un nombre (identificador), un tipo de
dato y un valor. Por ejemplo, en un programa que calcula la suma de dos números, se
puede usar una variable llamada respuesta para almacenar el total.

Algoritmo SUMA
Definir sumando, sumador, respuesta Como Real
leer sumando
leer sumador
respuesta = sumando + sumador
escribir respuesta
FinAlgoritmo

Las variables son fundamentales para almacenar datos dinámicos que cambian con
base en la lógica del programa o la interacción del usuario.

En programación, una variable no es más que un espacio en memoria que se utiliza


para almacenar un dato o información. Cada variable tiene un nombre que sirve como
identificador, lo que permite al programador acceder a su contenido de manera fácil y
organizada.

¿Cómo funcionan las variables en memoria?


Cuando se declara una variable, el sistema operativo o el entorno de ejecución del
programa asigna un bloque de memoria en la RAM para almacenar el valor
correspondiente. Este bloque tiene una dirección única en la memoria física, pero en
lugar de trabajar directamente con direcciones (que sería complejo), los programadores
usan nombres de variables.
Por ejemplo:
X = 10

Aquí:
• El sistema asigna un espacio en memoria para x.
• En ese espacio se almacena el valor 10.
• El programador puede usar el nombre x para acceder al valor almacenado.

Características principales de las variables como espacios en memoria


1. Nombre de la variable: Actúa como una etiqueta para identificar el espacio en
memoria.
2. Tipo de dato: Determina el tamaño del espacio reservado en memoria. Por
ejemplo, un número entero (int) puede ocupar 4 bytes, mientras que un número
flotante (float) puede ocupar 8 bytes.
3. Valor: Es el dato almacenado en el espacio asignado.
4. Dirección de memoria: Es la ubicación física en la RAM donde se encuentra
almacenado el valor (aunque normalmente no se gestiona directamente por los
programadores).

Ejemplo visual de una variable en memoria


Supongamos que declaramos la siguiente variable:

nombre = "Carlos"

Proceso:
1. Se asigna un espacio en memoria para almacenar la cadena "Carlos".
2. El espacio reservado depende del tamaño de la cadena (en este caso, cada
carácter ocupa 1 byte).
3. El programador utiliza nombre como etiqueta para acceder a este espacio.

Nombre de la Variable Valor Dirección de Memoria


nombre "Carlos" 0x7ffe23b4

Las variables no solo se distinguen por su capacidad de almacenar información, sino


también por el ámbito (scope) en el que operan. Este ámbito determina dónde una
variable puede ser accedida o modificada. En este contexto, las variables se clasifican
en locales y globales.

Variables Locales
Una variable local es aquella que se declara y se utiliza dentro de una función o
bloque específico. Su ámbito está limitado únicamente a ese contexto, y no es
accesible fuera de él.
Características principales:
• Se crean al inicio de la ejecución de una función y desaparecen al terminar la
misma.
• Solo son accesibles dentro del bloque donde fueron definidas.
• Ayudan a evitar interferencias entre funciones, ya que su valor es independiente
del resto del programa.

Variables Globales
Una variable global es aquella que se declara fuera de cualquier función o bloque, lo
que la hace accesible en cualquier parte del programa.

Características principales:
• Pueden ser leídas y modificadas por cualquier función, siempre que se utilicen
correctamente.
• Permanecen en memoria durante toda la ejecución del programa.
• Si no se gestionan bien, pueden provocar errores, ya que varias funciones
podrían modificar su valor de manera inesperada.

Diferencias clave entre variables locales y globales

Aspecto Variable Local Variable Global


Ámbito Solo dentro de una función o bloque Todo el programa
Duración en Durante la ejecución de la función Durante toda la ejecución del programa
memoria
Acceso No accesible fuera de su bloque Accesible desde cualquier parte
Riesgo de Bajo, no afecta otras funciones Alto, puede ser modificada por error
errores desde cualquier parte

Buenas prácticas al usar variables globales y locales

1. Priorizar variables locales: Usar variables locales siempre que sea posible
facilita el mantenimiento del código y evita errores relacionados con
modificaciones no intencionales.
2. Uso cuidadoso de variables globales: Si necesitas una variable global,
asegúrate de que sea realmente necesaria. Documenta claramente su propósito
para evitar confusiones.
3. Uso de nombres descriptivos: Tanto en variables locales como globales,
utiliza nombres claros para evitar colisiones o malentendidos.
4. Evitar el uso excesivo de global: Si necesitas modificar una variable global
frecuentemente, considera reestructurar el programa para evitar dependencias
excesivas.

¿Qué son las constantes?


A diferencia de las variables, las constantes son valores que no cambian durante la
ejecución del programa. Se definen una vez y permanecen inmutables. Son útiles para
almacenar datos que no deben modificarse, como el valor de Pi o configuraciones clave
de un sistema.
Por ejemplo, en Python, una constante puede representarse siguiendo una convención
de escritura en mayúsculas:

PI = 3.14159
radio = 10
area = PI * radio ** 2 # El valor de PI no cambia

Diferencias clave entre Variable y Constante


Características Variable Constante
Modificable Sí No
Uso típico Datos dinámicos Datos fijos o configuraciones
Definición Cambia según lógica Se mantiene fija
Importancia en la programación
1. Legibilidad del código: Usar nombres claros para variables y constantes
mejora la comprensión del programa.
2. Mantenimiento: Las constantes facilitan los ajustes globales. Cambiar un valor
fijo en un solo lugar actualiza todo el programa.
3. Evita errores: Declarar constantes para datos inmutables reduce el riesgo de
modificaciones accidentales.

Ventajas de usar constantes


1. Evitan errores accidentales: Las constantes protegen valores críticos de ser
modificados por error, garantizando la estabilidad del programa.
2. Mejor mantenimiento: Si un valor constante cambia (por ejemplo, la tasa de
IVA), solo se actualiza en un único lugar en el código, evitando inconsistencias.
3. Claridad del código: Usar nombres descriptivos para constantes ayuda a que
el programa sea más fácil de leer y entender.

2. TIPOS DE DATOS EN PROGRAMACIÓN: Fundamentos y Clasificación

En programación, los tipos de datos son una parte fundamental para el desarrollo de
software. Representan las diferentes clases de valores que las variables pueden
almacenar y manipular en un programa. Entender los tipos de datos es crucial para
escribir código eficiente, claro y funcional.

¿Qué son los tipos de datos?


Un tipo de dato define el tipo de valor que una variable puede contener y las
operaciones que se pueden realizar sobre ella. Por ejemplo, un número entero se
manipula de manera diferente a un texto o una fecha.
Cuando declaramos una variable, normalmente especificamos (explícita o
implícitamente) su tipo de dato. Esto permite al sistema reservar el espacio en memoria
adecuado y prevenir errores durante la ejecución.

Tipos de datos primitivos (básicos):

• Enteros (int): Números sin decimales (ejemplo: 1, 42, -7).


• Flotantes (float): Números con decimales (ejemplo: 3.14, -2.718).
• Carácter (char): Un solo carácter alfanumérico o símbolo (ejemplo: 'a', 'Z',
'#').
• Booleanos (bool): Representan valores de verdad (true o false).
2. Tipos de datos compuestos:

• Cadenas de texto (string): Secuencia de caracteres (ejemplo: "Hola, mundo").


• Listas o arreglos (list, array): Conjunto de elementos ordenados (ejemplo: [1,
2, 3]).
• Tuplas (tuple): Conjunto de elementos ordenados e inmutables (ejemplo: (1,
"hola", 3.14)).
• Diccionarios (dict): Conjuntos de pares clave-valor (ejemplo: {"nombre":
"Juan", "edad": 25}).

Importancia:

Conocer los tipos de datos te ayuda a:

1. Seleccionar el tipo adecuado para cada tarea.


2. Optimizar el uso de memoria.
3. Evitar errores en cálculos y operaciones.

Tipos de datos en Java

Tipos de datos en C

(en un sistema típico de 32 o 64 bits):

Tipo de dato Descripción Tamaño Rango


char Carácter 1 byte -128 a 127 (o 0 a 255, sin signo)
unsigned Carácter sin signo 1 byte 0 a 255
char
int Entero 4 bytes -2,147,483,648 a 2,147,483,647
unsigned Entero sin signo 4 bytes 0 a 4,294,967,295
int
short Entero corto 2 bytes -32,768 a 32,767
unsigned Entero corto sin 2 bytes 0 a 65,535
short signo
long Entero largo 8 bytes -9,223,372,036,854,775,808 a
9,223,372,036,854,775,807
unsigned Entero largo sin 8 bytes 0 a 18,446,744,073,709,551,615
long signo
float Número decimal 4 bytes Aproximadamente ±3.4E-38 a ±3.4E+38
(punto flotante)
double Número decimal 8 bytes Aproximadamente ±1.7E-308 a
de mayor precisión ±1.7E+308
long Número decimal 16 Depende del compilador (usualmente más
double de precisión bytes preciso que double)
extendida
bool Booleano 1 byte true (1) o false (0)

TIPOS DE DATOS DEFINIDOS POR EL USUARIO

En C, los tipos de datos definidos por el usuario permiten a los programadores crear
estructuras o personalizar los tipos de datos existentes para satisfacer las necesidades
específicas de un programa. Por ejemplo:

struct (Estructuras)

• Permiten agrupar diferentes tipos de datos bajo un mismo nombre.


• Muy útiles para organizar datos relacionados.

Ejemplo:

#include <stdio.h>

struct Persona {
char nombre[50];
int edad;
float altura;
};

3. OPERADORES

Los operadores son símbolos o palabras clave que realizan operaciones sobre variables o
valores. Se clasifican en diferentes tipos, como los aritméticos, lógicos, relacionales y de
asignación. También es importante conocer la prioridad o precedencia entre ellos para
evitar errores en cálculos.

1. Operadores aritméticos

Se utilizan para realizar operaciones matemáticas.

Operador Función Ejemplo


+ Suma a + b
- Resta a - b
* Multiplicación a * b
/ División a / b
% Módulo (residuo de división) a % b
2. Operadores lógicos

Se usan para evaluar expresiones booleanas (verdadero o falso).

Operador Nombre Función Ejemplo


&& AND Devuelve true si ambas condiciones (a > 5) && (b < 10)
lógico son true
|| OR lógico Devuelve true si al menos una (a > 5) || (b < 10)
condición es true
! NOT Invierte el valor lógico (negación) !(a > 5)
lógico

3. Operadores relacionales

Se usan para comparar valores.

Operador Función Ejemplo


== Igual a a == b
!= Diferente de a != b
> Mayor que a > b
< Menor que a < b
>= Mayor o igual que a >= b
<= Menor o igual que a <= b

4. Operadores de asignación

Se usan para asignar valores a variables.

Los operadores de asignación están presentes en prácticamente todos los lenguajes de


programación y permiten asignar valores a variables. Aunque varían ligeramente según
el lenguaje, el concepto general es el mismo

Operador Función Ejemplo Equivalente


= Asignación a = 5 -
+= Suma y asigna a += 3 a = a + 3
-= Resta y asigna a -= 2 a = a - 2
*= Multiplica y asigna a *= 4 a = a * 4
/= Divide y asigna a /= 2 a = a / 2
%= Calcula el módulo y asigna a %= 3 a = a % 3

5. Prioridad o precedencia de operadores

La prioridad determina qué operadores se evalúan primero en una expresión. Si dos


operadores tienen la misma prioridad, la evaluación se realiza de izquierda a derecha
(asociatividad).
Orden de precedencia en C:

1. Paréntesis: () → Siempre se evalúan primero.


2. Operadores unarios: !, +, - (negativo), ++ (incremento), -- (decremento).
3. Aritméticos: *, /, % (multiplicación/división tienen mayor precedencia que
suma/resta).
4. Aritméticos: +, -.
5. Relacionales: <, <=, >, >=.
6. Igualdad: ==, !=.
7. Lógicos:
o AND: &&
o OR: ||
8. Asignación: =, +=, -=, etc.

Ejemplo de precedencia

Para cambiar la precedencia, usa paréntesis:

int resultado = (a + b) * c; // Primero se evalúa (a + b), luego se


multiplica por c

Ejercicios Resueltos

1. Paréntesis ( )
int resultado = (3 + 2) * 5; // Primero suma (3 + 2), luego multiplica: resultado = 25.

2. Negación lógica !
int x = 0;
int resultado = !x && 1; // Primero se evalúa `!x` (true), luego `true && 1`: resultado = true .

3. Multiplicación, división y módulo *, /, %


int resultado = 10 + 2 * 3; // Primero multiplica (2 * 3 = 6), luego suma: resultado = 16.

4. Suma y resta +, -
int resultado = 10 - 4 + 3; // Se evalúa de izquierda a derecha: resultado = 9.

5. Operadores relacionales <, >, <=, >=


int resultado = 5 + 3 > 6; // Primero suma (5 + 3 = 8), luego compara (8 > 6): resultado =
true.

6. Operadores de igualdad ==, !=


int resultado = 5 + 3 == 8; // Primero suma (5 + 3 = 8), luego compara (8 == 8): resultado =
true.

7. Operador lógico AND &&

int resultado = (5 > 3) && (3 < 8); // Evalúa cada condición y luego aplica AND: resultado =
true.

8. Operador lógico OR ||

int resultado = (5 > 3) || (3 > 8); // Evalúa primero `(5 > 3)`, luego aplica OR: resultado =
true.

9. Operador de asignación =

int x;
x = 5 + 3 * 2; // Primero multiplica (3 * 2 = 6), luego suma (5 + 6 = 11), finalmente asigna: x
= 11.

10. Expresiones combinadas con operadores ternarios

El operador ternario (condicion ? expr1 : expr2) tiene menor precedencia que la


mayoría de los operadores aritméticos, relacionales y lógicos.

int x = 5, y = 10;
int resultado = (x > y) ? x + y : x - y; // Primero evalúa `(x > y)` (false), luego ejecuta `x - y`:
resultado = -5.

Ejemplo avanzado combinando varios operadores

int resultado = 5 + 3 * (2 > 1 ? 4 : 1) - 7 / 2;


// 1. Evalúa el operador ternario: (2 > 1 ? 4 : 1) → 4.
// 2. Multiplica: 3 * 4 → 12.
// 3. Suma: 5 + 12 → 17.
// 4. Divide: 7 / 2 → 3 (división entera).
// 5. Resta: 17 - 3 → resultado = 14.
4. EXPRESIONES
En programación, una expresión es cualquier combinación de valores, variables, operadores
y funciones que un lenguaje puede interpretar y evaluar para producir un resultado. Dicho
resultado puede ser un valor numérico, lógico, una cadena, u otro tipo de dato.

Tipos de expresiones

1. Expresiones aritméticas

Estas expresiones incluyen operadores matemáticos y producen resultados


numéricos.

Ejemplo:

Lenguaje: C

int resultado = (5 + 3) * 2; // Evalúa a 16

2. Expresiones lógicas o booleanas

Evalúan condiciones y producen valores booleanos (true o false).

Ejemplo:

Lenguaje: python

x = 5
resultado = (x > 3 and x < 10) # Evalúa a True

3. Expresiones relacionales

Compara dos valores y produce un valor booleano.

Ejemplo:

Lenguaje: java

boolean resultado = (10 >= 5); // Evalúa a true

4. Expresiones de asignación

Asignan un valor a una variable y pueden incluir operaciones.

Ejemplo:

Lenguaje: C

int x = 5;
x += 3; // x ahora es 8
5. Expresiones de cadena

Combinan o manipulan valores de tipo cadena (texto).

Ejemplo:

Lenguaje: javascript

let saludo = "Hola, " + "Mundo!"; // Resultado: "Hola, Mundo!"

6. Expresiones de función

Involucran llamadas a funciones que devuelven un valor.

Ejemplo:

Lenguaje: python

resultado = len("Hola"); # Devuelve 4

Evaluación de expresiones

Orden de evaluación (precedencia de operadores)

El orden en el que se evalúan las expresiones depende de las reglas de precedencia y


asociatividad de los operadores en el lenguaje. Por ejemplo:

1. Paréntesis: Se evalúan primero.


2. Operadores unarios: Como !, - (negativo), ++.
3. Operadores aritméticos: *, /, % tienen más precedencia que +, -.
4. Operadores relacionales: Se evalúan después de los aritméticos.
5. Operadores lógicos: && (AND) tiene más prioridad que || (OR).

Características de las expresiones

1. Tienen un valor: Siempre devuelven un resultado.


2. Pueden ser simples o complejas:
• Simples: 5 + 2
• Complejas: (x + y) * (z - w)

3. Dependientes del contexto: Una expresión puede evaluarse de manera diferente


según el tipo de datos involucrados.

¿Por qué son importantes las expresiones?

1. Realizan cálculos: Desde operaciones simples hasta algoritmos complejos.


2. Controlan el flujo del programa: Usando expresiones lógicas y relacionales.
3. Manipulan datos: Permiten combinar o transformar información.
5. Entrada y salida de datos en programación

En programación, entrada y salida de datos (E/S) se refiere a las


operaciones que permiten la interacción entre un programa y su entorno
externo, como el usuario, archivos, u otros dispositivos. Estas operaciones
son esenciales para obtener información, procesarla, y luego presentar
resultados.

1. ¿Qué es la entrada de datos?


La entrada de datos es el proceso mediante el cual un programa recibe
información desde el exterior para procesarla. Esta entrada puede provenir
de:
• Usuario: utilizando dispositivos como el teclado o el mouse.
• Archivos: leyendo datos almacenados en el sistema.
• Sensores: en sistemas embebidos, como la lectura de un termómetro.

Ejemplo en pseudocódigo:
Imprimir "Introduce tu nombre:"
Leer nombre //Instrucción para recibir una entrada por teclado
Imprimir "Hola", nombre

2. ¿Qué es la salida de datos?


La salida de datos es el proceso mediante el cual un programa comunica
resultados o información hacia el exterior. Esta salida puede mostrarse en:
• Pantalla: como texto o gráficos.
• Archivos: guardando resultados para su uso posterior.
• Dispositivos externos: como una impresora o un monitor externo.
Ejemplo en pseudocódigo:
Calcular suma ← 5 + 3
Imprimir "El resultado de la suma es:", suma //Instrucción para mostrar una
salida en pantalla
3. Tipos comunes de entrada y salida
Entrada Salida
Teclado Pantalla (monitor)
Ratón Archivos (escritura)
Sensores (hardware) Impresoras
Archivos (lectura) Dispositivos externos

4. Métodos de entrada y salida en lenguajes de programación


a) En C:
• Entrada: scanf
• Salida: printf

#include <stdio.h>
int main() {
int numero;
printf("Introduce un número: ");
scanf("%d", &numero);
printf("El número ingresado es: %d\n", numero);
return 0;
}

b) En Python:
• Entrada: input()
• Salida: print()

nombre = input("Introduce tu nombre: ")


print("Hola,", nombre)

c) En Java:
• Entrada: Scanner
• Salida: System.out.println
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Introduce tu nombre: ");
String nombre = scanner.nextLine();
System.out.println("Hola, " + nombre);
}
}

5. Consideraciones importantes

1. Validación de datos:
Antes de procesar la entrada, asegúrate de validar que sea correcta
para evitar errores en el programa.
2. Formato de salida:
Al mostrar datos, considera usar un formato claro y comprensible para
el usuario.
3. Errores de entrada/salida:
o Maneja errores como datos mal ingresados o archivos no
encontrados.
o Utiliza estructuras de control para gestionar excepciones en lenguajes
como Python o Java.

6. Importancia en programación
La entrada y salida de datos son fundamentales porque permiten:
• La interacción directa entre el usuario y el programa.
• La capacidad de almacenar resultados para su análisis futuro.
• La conexión con otros dispositivos o sistemas, como bases de datos o
hardware.
Sin entrada y salida, los programas no podrían cumplir tareas útiles para el
mundo real, ya que no podrían comunicarse con su entorno.

También podría gustarte