44
Programación Digital Ing. Carlos Alberto Silva Delgado Docente

Presentacion Laboratorio c++

Embed Size (px)

Citation preview

Programación

Digital

Ing. Carlos Alberto Silva Delgado

Docente

PARA QUE SIRVE LA PROGRAMACIÓN

Una persona piensa y se comporta

obedeciendo a un secuencial lógico.

Un computador realiza tareas y maneja

datos en memoria obedeciendo a una

secuencia de pasos lógicos para lo cual ha

sido programado.

PARA QUE SIRVE LA PROGRAMACIÓN

Programación de computadoras es la

ciencia que permite a una persona

programar una computadora para que

resuelva tareas de manera rápida.

Un Programa de computadora se puede

definir como una secuencia de instrucciones

que indica las acciones o tareas que han de

ejecutarse para dar solución a un problema

determinado.

PARA QUE SIRVE LA PROGRAMACIÓN

Programar computadoras es indispensable

en cualquier área de la ingeniería, ya que

diferentes problemas que se puedan

presentar tardan tiempo resolverlos de

manera manual.

La computadora resuelve problemas de

acuerdo como se le haya programado de

manera rápida.

QUE ES LA PROGRAMACIÓN

La definición anterior deja muchas cosas

que decir. Para llegar a tener una secuencia

de instrucciones que den solución a un

problema es necesario ejecutar varias

etapas:

Etapa de análisis: En esta etapa el

programador debe entender claramente el

problema. Saber que es lo que se quiere

resolver. (analizar)

QUE ES LA PROGRAMACIÓN

Etapa de Solución general: Escribir la serie de pasos que sean necesarios para dar solución al problema. Estos pasos se pueden desarrollar a través de un Diagrama de Flujo (DFD:Utilizando símbolos) ó a través de un Pseudo lenguaje (Utilizando Lenguaje Común). A lo anterior es lo que se conoce con el nombre de Algoritmo.

Etapa de prueba: Consiste en chequear el algoritmo paso a paso, para estar seguro, si la solución da respuesta verdadera al problema. (Prueba de escritorio).

QUE ES LA PROGRAMACIÓN

Etapa de implementación específica:

Consiste en traducir el algoritmo a un

lenguaje de programación. (Codificar).

Etapa de prueba: Consiste en ejecutar el

programa en un computador y revisar los

datos arrojados para ver si son correctos y

hacer los ajustes necesarios. (Implementar).

Etapa de uso: Consiste en instalar el

programa de manera definitiva para el uso

por parte del usuario.

QUE ES UN LENGUAJE DE PROGRAMACIÓN

Se puede definir como un conjunto de reglas ó normas, símbolos y palabras especiales, utilizadas para construir un programa y con él, darle solución a un problema determinado.

El lenguaje de programación es el encargado de que la computadora realice paso a paso las tareas que el programador a diseñado en el algoritmo.

Se puede decir que un lenguaje de programación es el intermediario entre la máquina y el usuario para que este último pueda resolver problemas a través de la computadora haciendo uso de palabras (funciones) que le traducen dicho programa a la computadora.

NIVELES DE LOS LENGUAJES

Desde que se desarrollaron las máquinas

programables se han desarrollado lenguajes con los cuales las personas puedan dar órdenes

a éstas. En su orden los lenguajes de

programación se pueden clasificar así:

Lenguaje de máquina: Las primeras computadoras se programaban en código de

máquina. Se puede decir que los programas

eran diseñados en código binario.

Eran difíciles de leer, difíciles de entender y por

su puesto difíciles de corregir. Los programas se

caracterizaban por ser pequeños.

NIVELES DE LOS LENGUAJES

Lenguajes de Bajo Nivel: Para dar solución a lo difícil que era programar en código máquina, se desarrolló un

lenguaje conocido como lenguaje ensamblador. Este

lenguaje era encargado de tomar algunas palabras

comunes a una persona y traducirlas al código máquina.

Lenguajes de alto nivel: Como las personas resuelven problemas y se comunican en lenguajes naturales

(español, ingles, francés, etc.), se desarrollaron lenguajes

de programación que estuvieran mas cerca de ésta

manera de resolver problemas.

Lenguajes de alto nivel: el Basic, Cobol, Fortran, Pascal,

Turbo Pascal, C, Modula, Ada. Como se hace necesario

traducir el programa a lenguaje de máquina, en los

lenguajes de alto nivel esa operación la realiza el

Compilador.

TIPOS DE PROGRAMACIÓN

Secuencial : Se considera programación secuencial a los

programas que se diseñan con instrucciones que van unas

detrás de otras. Las líneas se ejecutan una a una en

secuencia. Ejemplos tales como Basic, Cobol.

Estructurada: Se considera programación estructurada a la

programación que se hace por módulos. Cada módulo realiza

alguna tarea específica y cuando se necesite esa tarea

simplemente se hace el llamado a ese módulo independiente

de que se tengan que ejecutar los demás. Ejemplos tales

como: Turbo PASCAL, C, Modula, Ada.

Orientada a Objetos: Se considera programación orientada a

objetos aquellos lenguajes que permiten la utilización de

objetos dentro del diseño del programa y el usuario puede

pegar a cada objeto código de programa. Ejemplos de estos

lenguajes se pueden mencionar el Visual Basic de Microsoft, C

Builder de la Borland Internacional, Java, Xml entre otros.

TIPOS DE PROGRAMACIÓN

Lógica o de lenguaje natural: son aquellos programas que se diseñan con interfaces tal que la persona o

usuario puede ordenar a la máquina tareas en un

lenguaje natural. Pueden interactuar como una persona

pero nunca llegan a producir conocimiento. Ejemplo

como Prolog (Programming Logic). Estos lenguajes se

desarrollaron con base en las estructuras de sus

antecesores. Recorren o navegan las bases de datos

obedeciendo a reglas.

Inteligencia Artificial: Los programas de inteligencia artificial Son programas que se acercan a la inteligencia

humana. Estos programas son capaces de desarrollar

conocimiento. Este tipo de lenguajes trabajan similar a la

mente humana.

EL SECRETO DE PROGRAMAR

C++ por su diseño es un lenguaje estructurado. Su

estructura no permiten al programador enlazar

sentencias de cualquier manera. Existe una estructura

básica que cada programa debe seguir (Estructura de

un programa) y el compilador es estricto a la hora de

hacer cumplir estas reglas. Un programa ha de ser

codificado en varias partes y cada una de ellas debe ir

en el lugar que le corresponde.

La idea fundamental del lenguaje C ++ es crear

programas que sean comprendidos sin necesidad de

emplear docenas de páginas de diagramas de flujo y

miles de explicaciones.

Esta manera de realizar los programas es a lo que se

denomina como "PROGRAMACIÓN ESTRUCTURADA".

EL SECRETO DE PROGRAMAR

“ESTA EN LA ESTRUCTURACION”

Aunque se pueda llegar a realizar programas que

aparentan tener una estructura (ser estructurados), C++

son lenguajes que exige su utilización.

La programación estructurada le permite realizar

pequeñas rutinas específicas para cada tarea que se

quiera realizar, y a cada una de esas rutinas se les da un

nombre (Identificador) para cuando el programador la

requiera sólo la llame con su nombre y automáticamente

se ejecutará.

ELEMENTOS BÁSICOS DE UN PROGRAMA

La sección de encabezado es usada para declarar,

mencionar o identificar las variables con sus

respectivos tipos y/o las constantes que se vayan a

utilizar en el desarrollo del programa, así como

también el nombre de las funciones y/o los

procedimientos que ejecutarán las instrucciones de

los diferentes algoritmos que va a tener dicho

programa. Además en esta sección se declaran los

archivos de inclusión (Archivos con extensión “.h”)

que permiten el uso de algunas funciones que son

necesarias para el desarrollo en si del programa.

Igualmente se especifican las estructuras de datos

complejas que se vayan a manejar.

ELEMENTOS BÁSICOS DE UN PROGRAMA

En la sección cuerpo de programa realmente se describen todos los

procedimientos y/o funciones que se van a

ejecutar dentro del programa así como

también el código del programa principal.

Como cuerpo de programa es indispensable

que haya parte principal mientras que los

procedimientos y/o funciones son

opcionales.

TIPOS DE DATOS

Todos los datos tienen un tipo asociado con ellos. Un

dato puede ser un simple carácter, tal como ‘b’, un

valor entero tal como 35. El tipo de dato determina

la naturaleza del conjunto de valores que puede

tomar una variable.

Tipos de Datos Simples

Datos Numéricos: Permiten representar valores escalares de forma numérica, esto incluye a los números enteros y

los reales. Este tipo de datos permiten realizar

operaciones aritméticas comunes.

Datos lógicos: Son aquellos que solo pueden tener dos valores (cierto o falso) ya que representan el resultado

de una comparación entre otros datos (numéricos o

alfanuméricos).

Datos alfanuméricos (string): Es una secuencia de caracteres alfanuméricos que permiten representar

valores identificables de forma descriptiva, esto incluye

nombres de personas, direcciones, etc. Es posible

representar números como alfanuméricos, pero estos

pierden su propiedad matemática, es decir no es posible

hacer operaciones con ellos.

Identificadores Los identificadores representan los datos de un programa

(constantes, variables, tipos de datos). Un identificador es una

secuencia de caracteres que sirve para identificar una

posición en la memoria de la computadora, que permite

acceder a su contenido.

Ejemplo: Nombre, Num_hrs, Calif2, etc.

Reglas para formar un identificador.

Debe comenzar con una letra (A a Z, mayúsculas o minúsculas) y no deben contener espacios en blanco.

Letras, dígitos y caracteres como la subraya ( _ ) están

permitidos después del primer carácter.

La longitud de identificadores puede ser de varios caracteres. Pero es recomendable una longitud promedio de 8 caracteres.

El nombre del identificador debe dar una idea del valor que

contiene.

Constantes, Variables y Expresiones Constantes

Una constante es un dato numérico o alfanumérico que no

cambia durante la ejecución del programa.

Ejemplo: pi = 3.1416

Variable

Es un espacio en la memoria de la computadora que permite

almacenar temporalmente un dato durante la ejecución de

un proceso, su contenido puede cambiar durante la

ejecución del programa.

Para poder reconocer una variable en la memoria de la

computadora, es necesario darle un nombre con el cual

podamos identificarla dentro de un algoritmo.

Ejemplo: área = pi * radio2

Las variables son : el radio, el área.

La constate es: pi.

Clasificación de las Variables

Clasificación de las Variables

Por su contenido

Variables Numéricas: Son aquellas en las cuales se

almacenan valores numéricos, positivos o negativos, es

decir almacenan números del 0 al 9, signos (+ Y -) y el

punto decimal.

Ejemplo: iva = 0.15, pi = 3.1416, costo = 2500

Variables Lógicas: Son aquellas que solo pueden tener

dos valores (cierto o falso) estos representan el resultado

de una comparación entre otros datos.

Variables Alfanuméricas: Esta formada por caracteres

alfanuméricos (letras, números y caracteres especiales).

Ejemplo: letra = ’a’, apellido = ’lopez’, direccion = ’Av.

Libertad #190’

Clasificación de las Variables

Por su uso Variables de Trabajo: Variables que reciben el

resultado de una operación matemática completa

y que se usan normalmente dentro de un programa.

Ejemplo: Suma = a + b /c

Contadores: Se utilizan para llevar el control del

numero de ocasiones en que se realiza una

operación o se cumple una condición. Con los

incrementos generalmente de uno en uno.

Acumuladores: Forma que toma una variable y que

sirve para llevar la suma acumulativa de una serie

de valores que se van leyendo o calculando

progresivamente.

Expresiones

Las expresiones son combinaciones de constantes,

variables, símbolos de operación, paréntesis y

nombres de funciones especiales.

Por ejemplo: a + (b + 3) / c.

Cada expresión toma un valor que se determina

tomando los valores de las variables y constantes

implicadas y la ejecución de las operaciones

indicadas.

Una expresión consta de operadores y operandos.

Según sea el tipo de datos que manipulan, se

clasifican las expresiones en: Aritméticas,

Relacionales y Lógicas.

ESTRUCTURA BÁSICA

DE UN PROGRAMA

Estructura Básica de un Programa C++

# include <cstdlib> # include <iostream> using namespace std;

int main (int argc, char *argv[] ) { int a, b,c; cout<<”ingrese el valor de a: ”; cin>> a; cout<<”ingrese el valor de b:”; cin >> b;

C=a+b; cout <<“la suma de A + B es: “<<c; System (“PAUSE” ); Return EXIT_SUCCESS; }

Declaración de Librerías Función principal

Llaves de apertura de la función Declaración de variables

Secuencia de instrucciones Instrucción que permite realizar una pausa. Llaves de cierre de la función

Explicación

#include <iostream>

La parte del #include se refiere a la biblioteca de funciones que vamos a utilizar. Es decir para llamar a una biblioteca en particular debemos hacer lo siguiente:

#include <librería_solicitada>

Al incluir la sentencia using namespace std le estamos diciendo al compilador que usaremos el espacio de nombres std por lo que no tendremos que incluirlo cuando usemos elementos de este espacio de nombres, como pueden ser los objetos cout y cin, que representan el flujo de salida estándar.

std::cout << "Hola mundo" << std::endl;

int main(int argc, char *argv[])

Todo programa en C++, comienza con una función

main(), y sólo puede haber una.

En C++ el main() siempre regresa un entero, es por

eso se antepone “int” a la palabra “main”. Los

paréntesis que le siguen contienen lo que se le va a

mandar a la función. En este caso se puso la

palabra “void” que significa vacío, es decir que a la

función main no se le está mandando nada, podría

omitirse el void dentro de los paréntesis, el

compilador asume que no se enviará nada.

Explicación

Explicación

{ La llave que se abre significa que se iniciará un

bloque de instrucciones.

cout<<”ingrese el valor de a: ”;

Esta es una instrucción. La instrucción cout está definida dentro de la biblioteca iostream.h, que previamente declaramos que íbamos a utilizar.

Una función, en este caso main() siempre comienza su ejecución con una instrucción (la que se encuentra en la parte superior), y continúa así hasta que se llegue a la última instrucción (de la parte inferior). Para terminar una instrucción siempre se coloca “;”.

Explicación

system (“PAUSE”);

Esta es otra instrucción, que nos permite realizar

una pausa, con el propósito que el programador

verifique los resultados.

}

La llave de cierre de la función main() indica el

termino del bloque de instrucciones.

TIPOS DE DATOS EN C++ C++ es sensible a mayúsculas y minúsculas, así que si el

nombre de nuestra variable empieza con una letra en mayúsculas, debemos de asegurarnos que durante el resto del código nos refiramos a ella exactamente como la escribimos. Los nombres de las variables no pueden usar signos de puntuación, sólo caracteres “A-Z”, “a-z”, “_“, “0-9”, aunque ningún nombre debe comenzar con un número (0-9). Además no se deben de repetir nombres de variables en el mismo contexto.

Además de las restricciones anteriores, existe otra, y esta tiene que ver con las palabras reservadas del lenguaje, que no son muchas a comparación de otros lenguajes como Basic. Las palabras que se presentan en la siguiente lista, no pueden ocuparse como nombres de variables, funciones, u otras instrucciones definidas por el programador.

TIPOS DE DATOS EN C++

TIPO TAMAÑO RANGO

char 8 bits -128 a 127

int 32 bits -2147483,648 a 2147483,647

long 32 bits -2147483,648 a 2147483,647

float 32 bits 3.4 x 10-38 a 3.4 x 10+38

Palabras Reservadas

and bitand case compl default dynamic_cast export for inline namespace operator protected return static template try union void xor

and_eq bitor match const delete else extern riend int new or public short static_cast this typedef unsigned volatile xor_eq

asm bool char const_cast do enum false goto long not or_eq register signed struct throw typeid using wchar_t

auto break class continue Double explicit float if mutable not_eq private reinterpret_cast sizeof switch true typename virtual while

Creación de Programas en C++

Luego de instalar el programa Dev C++.

Ubicamos el icono que nos permite ingresar al entorno

Integrado de Desarrollo (IDE)

IDE C++ Es la interfaz visual que nos permite utilizar las diferentes

herramientas de C++ , con las cuales podemos crear, editar y

manejar los programas en C++.

El uso del entorno integrado de desarrollo es sencillo y

presenta una manera intuitiva para seleccionar cualquiera de las acciones que se desea utilizar.

Presenta una barra de menus para indicar al IDE que realice

una determinada tarea.

Editando un Programa

Editar

Programa

Ejecutar Guardar Compilar

ABRIR

Editando un Programa

Diseñar el programa que permita Invertir el orden

de un numero de tres dígitos

Solución:

I. Análisis

Datos de Entrada: NUM

Modelo Matemático:

U = num mod 10

D = (num div 10) mod 10

C = num div 100

NUMINV = U*100+D*10+C

Datos de Salida: NUMINV

II. Diseño

DFD

Inicio

Final

Lee: NUM

U = num mod 10

D = (num div 10) mod 10

C = num div 100

NUMINV = U*100+D*10+C

Programa

1. Editar el

programa en

el IDE.

2. Grabar el programa.

3. Compilar el

programa.

4. Ejecutar el

programa

Ejecución de un programa

I.- Calcular el Área y la Longitud de un Círculo

conociendo su radio #include <cstdlib>

#include <iostream>

using namespace std;

int main(int argc, char *argv[])

{

const float pi=3.141592;

int radio;

float area, longitud;

cout <<"Programa que calcula el area y longitud de un circulo"<<endl;

cout <<"*****************************************************"<<endl;

cout<<"\n ingrese el valor del radio :";

cin>>radio;

area=pi*radio*radio;

longitud = 2* pi * radio;

cout<<"\n el área del circulo es: "<<area<<endl;

cout<<"\n la longitud del circulo es: "<<longitud<<endl<<endl;

system("PAUSE");

return EXIT_SUCCESS;

}

inicio

Leer: radio

area = pi *radio2

Escribir: area ,

longitud

fin

longitud = 2 * pi * radio

*radio2

Trabajo a Realizar

1.- Escribir un programa que lea dos números por

teclado y escriba su suma, diferencia, producto y

cociente.

2.- Diseñe el programa que permita ingresar una

cierta cantidad de segundos y muestre como

resultado Horas Minutos y segundos.

3.- Diseñe el programa que permita ingresar dos

valores reales y los intercambie.

4. Escribe un programa que lea una cantidad depositada en un banco y que calcule la cantidad final después de aplicarle un 20% de interés.

5. Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo de estudiantes.

6. Un alumno desea saber cual será su calificación final en la materia de Lógica Computacional. Dicha calificación se compone de tres exámenes parciales cuya ponderación es de 30%, 30% y 40%.

7. Una farmacia aplica al precio de los remedios el 10% de descuento. Hacer un programa que ingresado el costo de los medicamentos calcule el descuento y el precio final.

8.-Diseñar el programa de los ejercicios secuenciales desarrollados en clase.

Trabajo a Realizar

Informe de Laboratorio

Contenido:

1.- Planteamiento del problema

2.- Análisis

a. Datos de entrada

b. Modelo Matemático o Lógico

c. Datos de salida

3.-Diseño

a. DFD

b. Pseudocódigo

4.- Programación.

5.- Verificación

PROVECHO