martes, 29 de octubre de 2024

4.2.- Unidimensionales: conceptos básicos, operaciones y aplicaciones.

Conceptos básicos
Un arreglo unidimensional tiene una sola dimensión. A los arreglos de una dimensión también se les llama listas.
Un arreglo unidimensional es un tipo de datos estructurado que está formado de una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales.
El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa.
Para implementar arreglos unidimensionales se debe reservar espacio en memoria, y se debe proporcionar la dirección base del arreglo, la cota superior y la inferior.
Operaciones
Para manejar un arreglo, las operaciones a efectuarse son:
· Declaración del arreglo,
· Creación del arreglo,
· Inicialización de de los elementos del arreglo, y
· Acceso a los elementos del arreglo.


Aplicaciones
Los elementos de un arreglo son variables del tipo base del vector, por lo que se utilizan de la misma manera en expresiones y demás instrucciones, como la asignación. Por ejemplo, para asignar un valor a un elemento de un arreglo basta con escribir:
arreglo[indice] = valor;
en donde arreglo es el nombre de la variable e indice hace referencia a la posición del elemento al que se le quiere asignar el valor.
Importante: Puesto que los arreglos son estructuras complejas (es decir, no básicas), no es posible asignar un arreglo a otro mediante una simple asignación (=). Para hacer esto es necesario escribir un ciclo y asignar elemento a elemento.
Algunos lenguajes como C, no controla la validez de los índices que se emplean para referenciar un arreglo. Esto quiere decir que es posible cometer errores muy difíciles de detectar en este sentido. Es necesario prestar especial interés a los valores que toman los índices para evitar estos problemas.
Por ejemplo, la siguiente porción de código compila sin problemas (es decir, sin errores sintácticos), pero probablemente produzca un error en tiempo de ejecución al referenciarse posiciones inexistentes del arreglo.
/* Ejemplo de error por acceso fuera de rango a un arreglo. */
/* Las posiciones con índices del 20 al 29 son inválidas. */
int i, arreglo[20];
for (i=0; i<30; i++) arreglo[i] = 0;
También es común cometer estos errores olvidando que las posiciones de los arreglos están numeradas a partir del índice cero. Es decir, en un arreglo de tamaño N las posiciones están numeradas de 0 a N-1.
El nombre de un arreglo también puede emplearse sin índice, bajo ciertas circunstancias, por ejemplo, para pasar el arreglo completo como parámetro a una función. Cuando se emplea el nombre solo, lo que se está manejando es en realidad un puntero al primer elemento del arreglo. Más adelante, en la sección de strings se hará una descripción más detallada sobre esto.



Listas
Resolvamos el problema de manejar dos listas: una con los nombres de un grupo de alumnos y otra con una calificación para cada uno de los alumnos.
Primero se deberán leer los nombres de los alumnos y la calificación que corresponde a cada uno de ellos y después habrá que desplegar dos columnas: una con los nombres de los alumnos y la otra con sus respectivas calificaciones.
La lectura debe lucir de manera similar a la siguiente:
Número de alumnos: 30
Nombre [0] :
Calificación[0] :
Nombre [1] :
Calificación[1] :
Nombre [2] :
Calificación[2] :
...
...
Nombre [29] :
Calificación[29] :



4.1.- Arreglos en programación



Los arreglos en programación son estructuras de datos que permiten almacenar un conjunto de elementos relacionados bajo un solo nombre. Imagina un arreglo como una caja con compartimentos, donde cada compartimento contiene un elemento específico. Estos elementos pueden ser de cualquier tipo de dato, como números, cadenas de texto u otros objetos.

En general, la estructura for se usa en aquellas situaciones en las cuales conocemos la cantidad de veces que queremos que se ejecute el bloque de instrucciones. Ejemplo: cargar 10 números, ingresar 5 notas de alumnos, etc. Conocemos de antemano la cantidad de veces que queremos que el bloque se repita.



 



Tablas de 5 de diferentes formas















martes, 8 de octubre de 2024

2.4.- Elementos del lenguaje

2.4.- Elementos del lenguaje


Elementos de la programación

Existen ciertos elementos que son clave a la hora de conocer o ejecutar un lenguaje de programación, entre los más representativos están:

  • Palabras reservadas. Palabras que dentro del lenguaje significan la ejecución de una instrucción determinada, por lo que no pueden ser utilizadas con otro fin.
  • Operadores. Símbolos que indican la aplicación de operaciones lógicas o matemáticas.
  • Variables. Datos que pueden variar durante la ejecución del programa.
  • Constantes. Datos que no varían durante la ejecución del programa.
  • Identificadores. Nombre que se le da a las diferentes variables para identificarlas.


2.3.- Estructura básica de un programa

 2.3.- Estructura básica de un programa

Bloques de un programa

  • Bloque de declaraciones: en él se especifican todos los objetos que utiliza el programa (constantes, variables, tablas, registros, archivos, etc.).
  • Bloque de instrucciones: constituido por el conjunto de operaciones que se han de realizar para la obtención de los resultados deseados.

Partes principales de un programa

Dentro del bloque de instrucciones de un programa se pueden diferenciar tres partes fundamentales. En algunos casos, estas tres partes están perfectamente delimitadas, pero en la mayoría sus instrucciones quedan entremezcladas a lo largo del programa, si bien mantienen una cierta localización geométrica impuesta por la propia naturaleza de las mismas.

  • Entrada de datos: la constituyen todas aquellas instrucciones que toman datos de un dispositivo externo, almacenándolos en la memoria central para que puedan ser procesados.
  • Proceso o algoritmo: está formado por las instrucciones que modifican los objetos a partir de su estado inicial hasta el estado final, dejando éstos disponibles en la memoria central.
  • Salida de resultados: conjunto de instrucciones que toman los datos finales de la memoria central y los envían a los dispositivos externos.


Investigación de conceptos

 2.2.- Características del lenguaje de programación

La popularidad de un lenguaje de programación depende de las características y utilidades que proporciona a los programadores. Aquí están las principales características que un lenguaje de programación debe poseer para destacar entre los demás: 

  • Simplicidad: el lenguaje debe ofrecer conceptos claros y simples que sean fáciles de entender, facilitando así, el aprendizaje y la aplicación. Sin embargo, la simplicidad puede ser un equilibrio difícil de alcanzar sin comprometer la capacidad general del lenguaje. 
  • Capacidad: además de ser fácil de usar, el lenguaje debe estar bien equipado con un conjunto sólido de características para realizar una amplia variedad de tareas. Si un lenguaje de programación ha sido diseñado para ser utilizado en un área específica, éste debe ofrecer los medios necesarios (operadores, estructuras y sintaxis) para lograr resultados óptimos.   
  • Abstracción: es la capacidad del lenguaje para definir y utilizar estructuras u operaciones complejas ignorando ciertos detalles de bajo nivel. 
  • Eficiencia: los lenguajes de programación que pueden ser traducidos y ejecutados de manera eficiente, ayudan a evitar el consumo excesivo de memoria y tiempo. 
  • Estructuración: el lenguaje permite a los programadores escribir su código de acuerdo con los conceptos de programación estructurada para evitar que se cometan errores. 
  • Compacidad: un lenguaje de programación con esta característica puede expresar las operaciones de forma concisa sin tener que escribir demasiados detalles. 
  • Principio de localidad: también se conoce como localidad de referencia. Este fenómeno indica la preferencia de un programa informático al haber accedido continuamente a las mismas áreas de memoria en un corto periodo de tiempo.  Permite el uso de bucles y subrutinas. Un lenguaje de programación puede aprovechar el principio de localidad para optimizar el rendimiento general de una aplicación.   


Programas de probabilidad

 

Programa de la moneda

Programa del dado



Certificado de Capacitate