29
Programación Computacional Tecnologías de la Computación Aplicadas a la Ingeniería Civil II

Material de Clases TP 03 - Programación Computacional

Embed Size (px)

Citation preview

Page 1: Material de Clases TP 03 - Programación Computacional

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

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

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

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

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

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

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

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

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

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

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

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

Ejemplo con estructuras

condicionales

Page 14: Material de Clases TP 03 - Programación Computacional

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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