material de clases tp 03 - programación computacional
TRANSCRIPT
![Page 1: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/1.jpg)
Programación
Computacional
Tecnologías de la Computación
Aplicadas a la Ingeniería Civil II
![Page 2: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/2.jpg)
Recordemos el concepto de
software…
Cuando usamos un programa en una computadora lo
denominamos ejecución o utilización del software.
Un software o programa computacional es
un conjunto de instrucciones detalladas
paso a paso que le indican a la
computadora cómo resolver un problema
o realizar una tarea.
![Page 3: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/3.jpg)
Método Tradicional de
Programación
El método tradicional
de programación
conceptualiza la
solución al problema
como una secuencia
de pasos.
Problema
Diseño de algoritmos
Algoritmo
Programación
Programa
Fuente
Traductor
Programa
Objeto
Procesador
Programa
en Ejecución
3
![Page 4: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/4.jpg)
Programación Procedural
El método tradicional de programación emplea un paradigma procedural para conceptualizar la solución al problema como una secuencia de pasos.
Son adecuados para problemas que se resuelven fácilmente empleando un algoritmo lineal, paso por paso.
Los programas creados con lenguajes procedurales tienen un punto de inicio y un punto de final.
Un programa escrito en lenguaje procedural está integrado
por instrucciones independientes en una secuencia que
indica cómo se realizará una tarea o cómo se resolverá un
problema.
![Page 5: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/5.jpg)
Intérpretes y Compiladores
Programa Fuente
Intérprete
Traducción y
ejecución línea a
línea
Programa Fuente
Compilador
Programa Objeto
5
![Page 6: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/6.jpg)
Programación Procedural
Algoritmo: es un conjunto de pasos para realizar una tarea
que puede escribirse y aplicarse.
![Page 7: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/7.jpg)
Fases de un Algoritmo
1. Definición de variables
2. Inicialización de variables
3. Lectura de datos
4. Cálculos
5. Salida
![Page 8: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/8.jpg)
Diagramas de Flujo
Un diagrama de flujo es un dibujo que utiliza símbolos
estándar de diagramación de algoritmos para
computadora, en el que cada paso del algoritmo se
visualiza dentro del símbolo adecuado y el orden en
que estos pasos se ejecutan.
Se indica su secuencia conectándolos con flechas
llamadas líneas de flujo porque indican el flujo lógico
del algoritmo.
![Page 9: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/9.jpg)
Diagramas de Flujo
Símbolo Significado/Función Descripción
Terminal
Puede representar
el inicia o fin de un
programa
Proceso
Define un proceso
sobre las variables
y permite
inicializarlas
Entrada de datos
Permite el ingreso
de datos al
programa
Condición
Se utiliza para la
toma de
decisiones y
estructuras
cíclicas.
![Page 10: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/10.jpg)
Símbolo Significado/Función Descripción
Salida de datos
Indica la salida de
resultados por
papel o pantalla.
Líneas de flujo
Indican la
dirección o el flujo
lógico de los datos
Conectores
Diagramas de Flujo
![Page 11: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/11.jpg)
Algunos conceptos…..
Contador
• Es una variable auxiliar que se cuenta las veces que pasa por ella.
• Cont= Cont +1
Acumulador
• Es una variable auxiliar cuya misión es almacenar resultados sucesivos.
• Acum= Acum + N
Variable
• Son estructuras de datos que pueden cambiar de contenido a lo largo de una ejecución de un programa.
• Superficie: Base * Altura
Constante
• Es un valor que no puede ser alterado durante la ejecución de un programa.
• Π =3,1415926
![Page 12: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/12.jpg)
Algunos conceptos…
Operadores Aritméticos
• Permiten la realización de operaciones matemáticas con las variables y constantes.
• + - * / %(módulo)
Operadores Relacionales
• Se utilizan para establecer una relación entre dos valores.
• Compara dos valores entre si y produce un resultado verdadero o falso.
• “>” “<“ “=“ “>=“
Operadores Lógicos
• Se utilizan para establecer relaciones entre valores lógicos. Estos valores son resultado de una expresión relacional.
• And , Or , NOT
• (a<b) and (b<c)
![Page 13: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/13.jpg)
Ejemplo con estructuras
condicionales
![Page 14: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/14.jpg)
Comenzando a programar
en C con CODE::BLOCKS
1. Crear un nuevo archivo vacío.
2. Guardar el archivo con el tipo “C/C ++”
Archivos abiertos
Área de
Edición
Herramientas de análisis y depuración
![Page 15: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/15.jpg)
Comenzando a programar
en C con CODE::BLOCKS
Identificador
de línea de
código
Las líneas
comenzadas
con #, son
preprocesadas
antes de la
compilación
Función
“principal” del
programa.
Primer módulo.
• Los programas en C se componen de una o más funciones. Todos comienzan su
ejecución por la función main ()
• Cada instrucción del programa finaliza con punto y coma: ;
Los cuerpos de función
van entre llaves { } Instrucción del
programa
![Page 16: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/16.jpg)
Algunas consideraciones…
Debemos tener en cuenta los “caracteres de escape”.
Al imprimir en pantalla una línea de caracteres (en el ejemplo es
“Hola mundo !”), los caracteres se muestran como aparecen entrelas comillas (“”) de la instrucción printf , la barra invertida (\) se
conoce como carácter de escape, indica a las instrucciones que
deben hacer algo fuera de lo previsto.
Algunas de las secuencias de escape más usuales son las
siguientes:
Secuencia de
escape
Significado
\nGenera una nueva línea, colocando el cursor al
principio de la siguiente línea de la pantalla.
\\ Inserta una diagonal invertida.
\”Inserta una comilla en el texto que se muestra en la
pantalla.
![Page 17: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/17.jpg)
Trabajando con variables…
Las variables deben definirse, indicando su tipo de datos, antes de
utilizarlas en el programa.
Las variables pueden ser ingresadas por el usuario mediante el teclado, con la instrucción scanf.
scanf cuenta con dos argumentos:
Cadena de control de formato: %d, indica el tipo de dato que introducirá el
usuario. El símbolo % es un especificador de conversión.
El nombre de la variable donde se almacenará el dato ingresado por el
usuario, precedido por el operador de dirección &
Definición de las variables
Impresión del mensaje al
usuario
Toma de las variables desde el
teclado
![Page 18: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/18.jpg)
Trabajando con variables…
El signo = es un operador de asignación,
El resultado de los cálculos o procedimientos indicados a la derecha del signo =, se almacena en la variable especificada a la izquierda del
signo.
En el ejemplo, la suma del contenido de las variables a y b (a+b), se
almacena en la variable suma.
![Page 19: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/19.jpg)
Tipos de datos disponibles
para las variables
Los tipos de datos más comunes que pueden emplearse para
la definición de las variables en C son los siguientes:
TipoEspecificador
de conversión Descripción Ejemplo
int %d Número entero 4
float %fNúmero con parte
fraccional4,3345
char %c Carácter b
string %sCadena de
caractereshola
![Page 20: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/20.jpg)
Operadores aritméticos en C
Operador Descripción Ejemplo
+ Suma a+b
- Resta a-b
* Multiplicación a*b
/ División a/b
%Módulo (devuelve el resto de una
división entera)a%b
![Page 21: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/21.jpg)
Estructura de selección (control) if…else…
La instrucción de selección if…else… especifica diferentes acciones a
realizar en caso de que una condición dada sea VERDADERA o sea FALSA
Operador de
ComparaciónDescripción
== Igual que
!= Distinto que
< Menor que
<= Menor o igual que
> Mayor que
>= Mayor o igual que
! NOT – Negación lógica
AND AND lógico
OR OR lógico
![Page 22: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/22.jpg)
Estructuras repetitivas
Un ciclo es un conjunto de instrucciones que la computadora
ejecuta repetitivamente, hasta que la condición de repetición del
ciclo propuesta se haga falsa.
Pueden emplearse repeticiones:
Controladas por contador: cuando empleamos una condición de
repetición determinada por una variable auxiliar del tipo contador,
que cuenta las veces que se pasa por ella. Es una repetición definida,
ya que conocemos de antemano cuántas veces se ejecutarán las
instrucciones del ciclo. Cont = Cont + 1
Controladas por bandera (centinela): cuando no se conoce cuántas
veces deberá ejecutarse el ciclo (es una repetición indefinida), se
utiliza un tipo de variable denominada “bandera” o “centinela”, que
indicará el fin de la repetición. Para esta variable, se debe elegir unvalor que no se confunda con una entrada legítima.
![Page 23: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/23.jpg)
Repetición controlada por
contador
Se requiere:
Una variable de control contador de ciclo
Valor inicial del contador
La forma en que se modifica la variable de
control con cada repetición (incremento o
decremento)
Condición que evalúa el valor final del
contador (condición de salida).
![Page 24: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/24.jpg)
Estructura repetitiva (ciclo iterativo) for ()
La instrucción iterativa for () especifica diferentes acciones a realizar en
caso de que una condición dada sea VERDADERA o sea FALSA
Es una estructura repetitiva controlada por contador.
Variable contador
Valor inicial del contador
Condición de repeticiónIncremento del contador
Cuerpo del ciclo
![Page 25: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/25.jpg)
Estructura repetitiva (ciclo iterativo) for ()
La representación mediante Diagrama de Flujo de esta estructura es la siguiente:
Valor inicial del
contador
Cond. De
Repetición
Cuerpo de
instrucciones
Variación del
Contador
Verdadero
Falso
i = 0
i < 10
i++
Verdadero
Falso
i
Inicio
Fin
Nuestro ejemplo quedaría:
![Page 26: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/26.jpg)
Estructura repetitiva while()
Permite especificar acciones
que se repetirán mientras una
condición sea verdadera.
El cuerpo de la instrucción
while puede contener una o
más sentencias.
Cuando la condición deje de
cumplirse, se finaliza la
repetición y se continúa con la
próxima instrucción fuera del
cuerpo de while.
La representación mediante Diagrama de Flujo de esta estructura es la siguiente:
Cond. De
Repetición
Cuerpo de
instrucciones
Falso
Verdadero
![Page 27: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/27.jpg)
Ejemplo de while ()
Ejemplo: imprimir valores ingresados por el usuario hasta que el carácter ingresado sea un “0”
Valor !=0
Valor
Falso
Verdadero
Valor
Valor = 1
Inicio
Fin
![Page 28: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/28.jpg)
Estructura repetitiva do… while()
Es similar a la estructura while,
se diferencia en que evalúa la
condición de repetición al final
del ciclo.
El cuerpo del ciclo do
while siempre se ejecutará al
menos una vez.
La representación mediante Diagrama de Flujo de esta estructura es la siguiente:
Cond. De
Repetición
Falso
Verdadero
Cuerpo de
instrucciones
![Page 29: Material de Clases TP 03 - Programación Computacional](https://reader034.vdocumento.com/reader034/viewer/2022042602/55b900ddbb61eb6f658b45ec/html5/thumbnails/29.jpg)
Ejemplo de do…while ()
Ejemplo: imprimir valores ingresados por el usuario hasta que el carácter ingresado sea un “0”
Valor !=0
Valor
Falso
Verdadero
Valor
Valor = 0
Inicio
Fin