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

Introduccion A La Programacion

Este documento presenta una introducción al curso de programación. Explica que el objetivo es enseñar lógica computacional y desarrollo de aplicaciones a través de algoritmos y diagramas de flujo. Cubre conceptos preliminares como tipos de datos, tablas de decisión y lógica. También explica diagramas de flujo, incluyendo sus símbolos y reglas, y conceptos como acumuladores y archivos. Finalmente, introduce algoritmos, incluyendo sintaxis, semántica, instrucciones y manejo de variables, bucles e

Cargado por

Luis Perez
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 DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
160 vistas15 páginas

Introduccion A La Programacion

Este documento presenta una introducción al curso de programación. Explica que el objetivo es enseñar lógica computacional y desarrollo de aplicaciones a través de algoritmos y diagramas de flujo. Cubre conceptos preliminares como tipos de datos, tablas de decisión y lógica. También explica diagramas de flujo, incluyendo sus símbolos y reglas, y conceptos como acumuladores y archivos. Finalmente, introduce algoritmos, incluyendo sintaxis, semántica, instrucciones y manejo de variables, bucles e

Cargado por

Luis Perez
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 DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 15

Introducción a la Programación

Objetivo General
El curso de introducción a la computación está diseñado para que el estudiante se
identifique con la lógica de computadoras(programación) y aprenda a desarrollar
aplicaciones computacionales a través de técnicas como: algoritmos y diagramas de flujo.
Capítulo I: conceptos preliminares.
 Lógica.
 Etapas en el desarrollo de programas por computadoras.
 Tipos de datos.
 Tabla de decisión.
Capitulo II: Diagramas de flujo.
 Símbolos convencionales y reglas.
 Conceptos fundamentales.
 Acumuladores.
 Contadores.
 Archivos.
 Fin de archivos, etc.
 Diagramas secuenciales aplicados a la computación. (entrada/proceso/salida).
 Condiciones simples y subordinadas.
 Interacciones.
 Diagramas estructurados.
Capitulo III. Algoritmos
 Lenguaje algorítmico.
 Sintaxis.
 Semántica.
 Instrucciones elementales.
 Problemas algorítmicos sencillos.
 Definición del problema.
 Entrada y salida.
 Calculo y manejo de variables.
 Instrucciones de transferencia(if-case).
 Repetición bucles y recursividad (while, dowhile).
 Arrays
 Concepto
 Tipos de array (vectores y matrices)
Bibliografía
Capítulo I: conceptos preliminares
Lógica: ¿Qué es la lógica?
Lógica es la Ciencia que estudia la estructura, fundamentos y uso de las expresiones del
conocimiento humano. La Lógica de Programación define, en forma precisa, los conceptos
generales que permiten diseñar la solución a problemas para ser implementados a través de
los lenguajes de programación. Su aprendizaje no necesita del conocimiento previo de estos
lenguajes. Sólo después de dominar sus conceptos, se está en condiciones óptimas para
iniciar el estudio de cualquier lenguaje de programación y con ello dar solución a
problemas a través de computadoras. Por eso es importante conocer cuáles son los pasos
esenciales para resolver un problema utilizando esta tecnología. Precisamente es lo primero
que se aborda en este capítulo. Si estudias detenidamente este capítulo y desarrollas los
ejercicios aquí planteados, comprenderás que programar no es más que buscar soluciones
lógicas a los problemas, utilizando conceptos sencillos.

Etapas en el desarrollo de programas por computadoras:


1. Análisis del problema.: en este paso se hacen tres especificaciones:
 Entrada: se seleccionan los objetos de entrada definiendo su tipo.
 Proceso: se definen las operaciones o cálculos necesarios para dar solución
al problema.
 Salida: se declaran los objetos en los que se dará salida a los resultados de
la operaciones o cálculos realizados, definiendo el tipo y precisión de los
mismos En lo adelante, para referirnos a la ejecución de estos tres pasos le
llamaremos abreviadamente análisis EPS (Entrada Proceso Salida).
2. Planificación de la resolución del problema, dividiéndolo, si es complicado, en una
secuencia de etapas más simples. Esta fase se lleva a cabo EN UN PAPEL,
estableciendo lo más claramente posible la finalidad de cada etapa, los datos que se
necesitan de entrada, los datos que producirían en salida, los algoritmos que se
utilizaran, etc.
3. Edición del código fuente, es decir, escritura del mismo utilizando un editor de
textos simple (sin formato) y un lenguaje de programación. Los programas fuente
serán almacenados en ficheros de texto, normalmente en el disco duro del
ordenador.
4. Compilación y ejecución del programa al lenguaje máquina.
5. Corrección de errores del programa. Los errores se corregirán en el código fuente,
repitiendo los pasos 3 y 4 tantas veces como sea necesario. Si se producen errores
en la lógica del programa, es decir, si el programa “funciona” pero produce
resultados incorrectos, hay que modificar el algoritmo volviendo al paso 2. Estos
errores son los más difíciles de detectar.
6. Documentación. Una vez que el programa funcione correctamente, es conveniente
revisar el código fuente para ordenarlos, eliminar cálculos innecesarios e incluir las
líneas de comentario necesarias, que normalmente deben incluir unas breves
explicaciones al principio del código sobre la finalidad del programa y sus
argumentos de entrada y de salida

Tipos de datos:
Un tipo de dato corresponde a una clasificación que se hace para poder tratar cada dato de
la forma más adecuada, según lo que se requiera. El tipo de dato le indica al dispositivo de
procesamiento cuanto espacio de memoria debe reservar para almacenar el dato, es decir,
para determinar el tamaño del espacio de memoria.
1. Entero, Integer – un número entero que puede tener un valor positivo, negativo o
cero. No puede ser una fracción, ni puede incluir decimales. Se utiliza comúnmente
en la programación, especialmente para aumentar los valores. La suma, la resta y la
multiplicación de dos números enteros da como resultado un número entero. Sin
embargo, la división de dos números enteros puede dar como resultado un número
entero o un decimal. El decimal resultante puede redondearse o truncarse para
producir un número entero.
2. Carácter, Character – cualquier número, letra, espacio o símbolo que pueda ser
introducido en una computadora. Cada carácter ocupa un byte de espacio.
3. Cadena, String – utilizada para representar el texto. Se compone de un conjunto de
caracteres que pueden incluir espacios y números. Las cadenas están encerradas
entre comillas para identificar los datos como cadenas, y no como nombres de
variables, ni como números.
4. Número de punto flotante, Floating Point Number- un número que contiene
decimales. Los números que contienen fracciones también se consideran números
de punto flotante.
5. Matriz, Array – una especie de lista que contiene un grupo de elementos que pueden
ser del mismo tipo de datos que un entero o una cadena. Se utiliza para organizar los
datos para facilitar la clasificación y la búsqueda de conjuntos de valores
relacionados.
6. Varchar – como su nombre indica, un varchar es un carácter variable, debido a que
el almacenamiento de la memoria tiene una longitud variable. Cada carácter ocupa
un byte de espacio, más 2 bytes adicionales para la información de longitud.Debes
utilizar el carácter para las entradas de datos con longitudes fijas, como los números
de teléfono, pero utilice Varchar para las entradas de datos con longitudes variables,
como la dirección.
7. Booleano – usado para crear declaraciones verdaderas o falsas. Para comparar
valores se utilizan los siguientes operadores: AND, OR, XOR, y NOT.
Tabla de decisiones
La tabla de decisión, conocida también como la tabla de verdad, es una representación
gráfica de una matriz de filas y columnas separadas en cuatro cuadrantes que indican
condiciones y acciones. Las reglas de decisiones, incluidas en una tabla de decisión
establecen el procedimiento a seguir cuando existen ciertas condiciones. Se utiliza la
tabla de decisión cuando existen muchas combinaciones.
Las tablas de decisión (TD) son una técnica de aplicación en el análisis y diseño de
sistemas y procedimientos, en su documentación y también como un medio de
comunicación y un instrumento de programación.
Estructura de la tabla de decisión
La tabla de decisión está integrada por cuatro secciones:

Identificación de Condiciones: señala aquellas que son más relevantes. Se detalla una
condición por renglón. Se llaman condiciones a situaciones variables que pueden
ocurrir
Entradas de Condiciones: indican qué valor, si es que lo hay, se debe asociar para una
determinada condición. Se indican valores de las condiciones indicadas en la primera
sección, dependiendo del tipo de tabla de decisión (de entrada, limitada o extendida)
que se construya para representar el proceso.
Identificación de Acciones: enlista el conjunto de todos los pasos que se deben seguir
cuando se presenta cierta condición. Se llaman acciones a los distintos comportamientos
que se asumirán en función de los valores que tomen las condiciones. Se escriben en el
orden en que deben ser ejecutadas.
Entradas de Acciones: muestran las acciones específicas del conjunto que deben
emprender cuando ciertas condiciones o combinaciones de éstas son verdaderas.
Capitulo II: Diagramas de flujo
Un diagrama de flujo es la representación gráfica de un algoritmo. Lo conforma un
conjunto de componentes que permiten representar acciones, decisiones o cálculos con
los cuales se soluciona un problema determinado. Cuando el diagrama de flujo esta
correctamente diseñado, la concepción de un programa en un lenguaje de
programación, en fácilmente codificable.

Elementos en un diagrama de flujo


Elementos en un diagrama de flujo
Reglas Para la construcción de un diagrama de flujo
1. Todo diagrama de flujo debe tener un inicio y un fin.

2. Las líneas que indican la dirección del flujo del diagrama deben ser rectas, verticales y
horizontales. 2.1 Reglas para la construcción de un diagrama de flujo

3. Toda línea que indica la dirección del flujo del diagrama debe estar conectada.

4. El diagrama de flujo debe construirse de arriba hacia abajo y de izquierda a derecha

5. La notación utilizada en el diagrama de flujo debe ser independiente del lenguaje de


programación.

6. Es conveniente poner comentarios para ayudar a entender lo que hicimos.

7. Se puede utilizar más de una hoja, utilizando los conectores adecuados y numerando las
páginas.

8. No pueden llegar más de una línea a un símbolo.

Ejemplo: Diagrama de flujo


Conceptos básicos Es importante que el lector, antes de iniciar la construcción de los
algoritmos que las incluyen, se familiarice con algunos conceptos básicos entorno a ellas.
1. Contador
Como su nombre lo indica, es una variable que tiene la función de llevar la cuenta de
determinadas situaciones que se repiten dentro de los ciclos. Por ejemplo, es común
contar:
 Goles en un juego de un partido de futbol.
 Cantidad de términos que tiene una serie numérica.
 Los amigos que se tienen en Facebook.
 Cantidad de votos que obtienen los candidatos en unas elecciones.
 El número de visitas a un video en YouTube.
Esta clase de variables se declaran de tipo Entero. Deben inicializarse antes de entrar al
ciclo, es decir, se le debe asignar un valor inicial que corresponde al número desde el cual
se requiere que inicie el conteo, generalmente se inicializan en 0; aunque todo depende del
problema que se va a resolver

Dentro del ciclo debe haber una instrucción que modifique el valor del contador, su forma
general es la siguiente:
contador = contador + valor Incremento
contador = contador - valor Decremento
El valor a incrementar o decrementar, hace referencia a cualquier cantidad de tipo
numérico, en la cual aumenta o disminuye su valor en cada iteración del ciclo. Los valores
a incrementar o decrementar son cantidades constantes. En los ejemplos anteriores, la
cantidad de amigos en Facebook se incrementa en el momento que se confirme una
solicitud de amistad o se decrementa cuando se elimina un contacto de la lista de amigos.
2. Acumulador
Un acumulador es una variable que funciona de forma similar a un contador, la diferencia
radica en que aumentan o disminuyen en cantidades variables y no en forma constante como
es el caso de los contadores. Algunos autores le dan también la denominación de totalizador
[Corona and Ancona, 2011]. Un acumulador se puede usar para: Almacenar el puntaje
acumulado en un juego. Calcular el saldo en una cuenta de ahorros. Obtener el valor de una
sumatoria de notas que luego puede ser usada para calcular un promedio. Determinar el
valor a pagar en un supermercado cuando se compran varios artículos. Conocer el
acumulado de puntos que se tienen por compras en un almacén o establecimiento comercial
que ofrezca este beneficio. Esta clase de variables se declaran de tipo numérico, bien sea
Entero o Real. Deben inicializarse antes de entrar al ciclo, es decir, se le debe asignar un
valor inicial que depender ‘a del problema a resolver, generalmente se inicializan en 0.
Dentro del ciclo debe haber una instrucción que modifique el valor del acumulador, su
forma general es la siguiente:
acumulador = acumulador + valorIncremento
acumulador = acumulador - valorDecremento
El valor a incrementar o valor a decrementar se refiere a cualquier cantidad de tipo
numérico, en la cual el acumulador aumenta o disminuye su valor en cada iteración del
ciclo. Los valores a incrementar o decrementar son cantidades variables. En los ejemplos
anteriores, el saldo en una cuenta de ahorros se incrementa con las consignaciones y se
decrementa con los retiros. De igual forma sucede con los puntos por compras, incrementan
por cada compra que se realice y decrementan en el momento en que se haga un canje por
algún artículo o promoción. Existen casos especiales donde la forma general no trabaja con
operaciones de suma o resta, sino que se involucran operaciones de multiplicación o
división:
acumulador = acumulador * valorIncremento
acumulador = acumulador / valorDecremento
3. Bandera o Centinela Una bandera, también denominada interruptor o conmutador es una
variable que puede tomar uno de dos valores (verdadero o falso) a lo largo de la ejecución del
programa y permite comunicar información de que sucedió o no un evento especifico. Son muy
usadas las banderas en ciclos para dar pr teminado el bucle al cumplirse una condición especifica
y dar por terminada el bucle
4. Archivos: un archivo es una secuencia de datos almacenados en un medio persistente que
están disponibles para ser utilizados por un programa. Todos los archivos tienen un nombre y
una ubicación dentro del sistema de archivos del sistema operativo.
Los datos en un archivo siguen estando presentes después de que termina el programa que lo
ha creado. Un programa puede guardar sus datos en archivos para usarlos en una ejecución
futura, e incluso puede leer datos desde archivos creados por otros programas.

Estructuras de control
Diagrama secuencial, es el más simple de todos. Se utiliza cuando se tiene que ejecutar una
instrucción tras otra, sin tener que evaluar una expresión.

Representación en algoritmo. Ejemplo

acción 1 1. suma  0

acción 2 2. Imprimir “Teclea un numero”

… 3. Leer en variable num

acción n 4. suma  suma + num


Diagramas secuenciales:
Un diagrama de secuencia es un tipo de diagrama de interacción porque describe cómo —y en qué
orden— un grupo de objetos funcionan en conjunto. Tanto los desarrolladores de software como
los profesionales de negocios usan estos diagramas para comprender los requisitos de un sistema
nuevo o documentar un proceso existente. A los diagramas de secuencia en ocasiones se los
conoce como diagramas de eventos o escenarios de eventos.

Condiciones simples y subordinadas.


No todos los problemas pueden resolverse empleando estructuras secuenciales. Cuando hay que
tomar una decisión aparecen las estructuras condicionales.
En nuestra vida diaria se nos presentan situaciones donde debemos decidir.
¿Elijo la carrera A o la carrera B?
¿Me pongo este pantalón?
Para ir al trabajo, ¿elijo el camino A o el camino B?
Al cursar una carrera, ¿elijo el turno mañana, tarde o noche?

Por supuesto que en un problema se combinan estructuras secuenciales y condicionales.

Estructura condicional simple.

Cuando se presenta la elección tenemos la opción de realizar una actividad o no realizar ninguna.
Representación gráfica:

Podemos observar: El rombo representa la condición. Hay dos opciones que se pueden tomar. Si la
condición da verdadera se sigue el camino del verdadero, o sea el de la derecha, si la condición da
falsa se sigue el camino de la izquierda.
Se trata de una estructura CONDICIONAL SIMPLE porque por el camino del verdadero hay
actividades y por el camino del falso no hay actividades.
Por el camino del verdadero pueden existir varias operaciones, entradas y salidas, inclusive ya
veremos que puede haber otras estructuras condicionales.

Problema:

Ingresar el sueldo de una persona, si supera los 3000 pesos mostrar un mensaje en pantalla
indicando que debe abonar impuestos.

Diagrama de flujo:

Podemos observar lo siguiente: Siempre se hace la carga del sueldo, pero si el sueldo que
ingresamos supera 3000 pesos se mostrará por pantalla el mensaje "Esta persona debe abonar
impuestos", en caso de que la persona cobre 3000 o menos no aparece nada por pantalla.

Estructura condicional subordinada o compuesta.


Cuando se presenta la elección tenemos la opción de realizar una actividad u otra. Es decir,
tenemos actividades por el verdadero y por el falso de la condición. Lo más importante que hay
que tener en cuenta que se realizan las actividades de la rama del verdadero o las del falso,
NUNCA se realizan las actividades de las dos ramas.
Representación gráfica:

En una estructura condicional compuesta tenemos entradas, salidas, operaciones, tanto por la
rama del verdadero como por la rama del falso.

Problema:

Realizar un programa que solicite ingresar dos números distintos y muestre por pantalla el mayor
de ellos.

Diagrama de flujo:
Se hace la entrada de num1 y num2 por teclado. Para saber cuál variable tiene un valor mayor
preguntamos si el contenido de num1 es mayor (>) que el contenido de num2, si la respuesta es
verdadera vamos por la rama de la derecha e imprimimos num1, en caso de que la condición sea
falsa vamos por la rama de la izquierda (Falsa) e imprimimos num2.
Como podemos observar nunca se imprimen num1 y num2 simultáneamente.

Estamos en presencia de una ESTRUCTURA CONDICIONAL COMPUESTA ya que tenemos


actividades por la rama del verdadero y del falso.

Sentencias de iteración
Permiten repetir una sentencias o conjunto de ellas. Es lo que se denomina ejecutar un bucle.
Existen tres formas de iteraciones: los bucles while; do…while y for.

En todos los casos el bucle puede estar constituido por una sola sentencia o por varias. En cuyo
caso se trata de un bloque de código delimitado por un par de corchetes { }. Si se trata de una sola
sentencia, los corchetes no son necesarios.

Diagramas estructurados
Los Diagramas Estructurados, son una técnica que permite formular algoritmos mediante una
representación geométrica y de asignación de espacios de un bloque específico.

El diagrama estructurado N-S también conocido como diagrama de chapin es como un diagrama
de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se
pueden escribir en cajas sucesivas y como en los diagramas de flujo, se pueden escribir diferentes
acciones en una caja. Un algoritmo se represente en la siguiente forma:

(While)
Los ciclos controlados por centinela, primero evalúa la condición, si da como resultado verdadero
realiza la acción, luego vuelve a evaluar la condición, si su resultado es falso, se sale del ciclo y
continúa con la ejecución del programa. Hay que tener mucho cuidado, cuando trabajamos con
ciclos, ya que podemos caer en un ciclo infinito, es decir que nunca se sale de él. Lo cual no es un
error de sintaxis sino de lógica. Por lo cual en las acciones debemos siempre colocar algo que haga
que se modifique el resultado de la condición, lo cual puede ser una bandera, un contador o un
acumulador. La sentencia en C es while ( ) { }, acontinuacion la sintaxis. SINTAXIS while while
(expresión) { sentencia; } Donde sentencia puede ser una sentencia vacía, una sentencia única o un
bloque de sentencias que se repetirán. Cuando el flujo del programa llega a esta instrucción,
primero se revisa si la condición es verdad para ejecutar la(s) sentencia(s), y después el ciclo while
se repetirá mientras la condición sea verdadera. Cuando llega a ser falsa, el control del programa
pasa a la línea que sigue al ciclo.

(Do while)
LA SENTENCIA do-while Al contrario de los ciclos for y while que comprueban la condición en lo
alto del bucle, el bucle do { } while ( ); la examina en la parte baja del mismo. Esta característica
provoca que un ciclo do {} while siempre se ejecute al menos una vez. SINTAXIS: do
{sentencia;}while (condición); Aunque no son necesarias las llaves cuando sólo está presente una
sentencia, se usan normalmente por legibilidad y para evitar confusión (respecto al lector, y no del
compilador) con la sentencia while.

Arreglos

También podría gustarte