FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD...

39
FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA

Transcript of FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD...

Page 1: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA

ESCUELA DE INGENIERÍA ELECTRÓNICA

UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA

Page 2: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

“LENGUAJE DE PROGRAMACIÓN I”

ING. JOSÉ LUIS LUNA ANGULO

CURSO :

DOCENTE :

Page 3: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

¿ QUÉ ES LA PROGRAMACIÓN ?

Es la ciencia y arte de solucionar problemas.

Para ser un buen solucionador de problemas se debe enfrentar éstos en forma metódica, desde la inicial definición e inspección del problema hasta la solución final, verificación y comentarios.

Page 4: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

CONCEPTOS BASICOS

1.-ALGORITMO.- Es el conjunto de pasos o procedimientos que se siguen para solucionar un problema. El algoritmo es literal cuando las instrucciones son escritas línea a línea según una secuencia lógica (Seudocódigo), y el algoritmo es gráfico cuando los pasos que se siguen para solucionar un problema se representan por medio de símbolos.

Page 5: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

2.-PROGRAMA.- Un programa está formado por un conjunto de instrucciones ubicadas en forma lógica, donde cada una de ellas realiza una acción, como por ejemplo: asignar un valor a una variable, tomar una decisión, realizar un ingreso de datos, ejecutar una impresión, etc.

Page 6: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

3.-SEUDOCÓDIGO.- Permite escribir las instrucciones en palabras simples (en inglés o español) y facilita la escritura como la lectura de los programas.

Ejemplo: Crear un algoritmo que realice la siguiente suma: 1 + 2 + 3 + 4 +………. + 10

1.Iniciar Número a 1

2.Iniciar Suma a 0

3.Mientras numero <=10 hacer

Sumar Número a Suma

Incrementar Número en 1

fin mientras

4.Visualizar Suma

Page 7: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

4.-CODIFICACIÓN.- La codificación es la conversión del algoritmo en programa utilizando un lenguaje de programación.

Page 8: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

DEV-C++

Es un lenguaje de programación de alto nivel altamente estructurado, es un software libre con Licencia General Pública.

La programación estructurada, algunas veces llamada programación procedural, se construye a través de funciones que realizan tareas o actividades diversas.

Estas funciones tienen que ser llamadas por su nombre cuando sean requeridas.

Page 9: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

Por otro lado, en la programación orientada a objetos se construye alrededor de clases y objetos que modelan entidades del mundo real en una forma más natural.

PROGRAMA FUENTE.- Es aquel que se escribe en un lenguaje de programación de alto nivel (Dev-C++ y por lo general tiene una extensión de archivo .cpp).

PROGRAMA OBJETO.- Es aquel en lenguaje máquina binario generado por el compilador, que siempre tiene una extensión de archivo .obj

Page 10: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

CONCEPTO DE IDENTIFICADOR

En una computadora necesitamos manejar información a los que llamamos datos.

Para referirnos a los datos usaremos un identificador

Un identificador es un nombre simbólico que se refiere a un dato o una función determinada.

Ejemplo: escogemos temp_c para referirnos a un dato que mide la temperatura en grados centígrados.

Page 11: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

REGLAS PARA ESCOGER IDENTIFICADORES

Se deben tener en cuenta las siguientes reglas: No se podrá usar la palabras reservadas del Dev-

C++. Usar una secuencia de letras (minúsculas de la a

a la z; mayúsculas de la A a la Z; y dígitos del 0 al 9).

No puede contener espacios en blanco, ni otros caracteres distintos de los citados, como por ejemplo (*,;.:-+, etc.).

El primer carácter de un identificador debe ser siempre una letra o un ( _ ), es decir, no puede ser un dígito.

Se hace distinción entre letras mayúsculas y minúsculas. Así, Masa es considerado como un identificador distinto de masa y de MASA.

Page 12: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

EJEMPLOS DE IDENTIFICADORES

Ejemplos de identificadores válidos son los siguientes: tiempo, distancia1, caso_A, PI,

velocidad_de_la_luz Por el contrario, los siguientes nombres no son

válidos (¿Por qué?) 1_valor, tiempo-total, dolares$, %final

En general es muy aconsejable elegir los nombres de las funciones y las variables de forma que permitan conocer a simple vista qué tipo de variable o función representan. Esto simplifica enormemente la tarea de programación y sobre todo de corrección y mantenimiento de los programas.

Page 13: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

PALABRAS RESERVADAS

En Dev-C++, como en cualquier otro lenguaje, existen una serie de palabras reservadas (keywords) que el usuario no puede utilizar como identificadores (nombres de variables y/o de funciones).

Keywords

auto double int struct

break else long switch case enum register typedef char extern return union const float short unsigned

continue for signed void default goto sizeof volatile do if static while

Page 14: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

TIPOS DE CLASES DE DATOS ESTANDAR EN Dev-C++

Clase de datos entero Clase de datos punto flotante Clase de datos carácter Clase de datos booleana

Page 15: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

803.4E-4932 a 1.1E4932long double

641.7E-308 a 1.7E308double

323.4E-38 a 3.4E38float

320 a 4294967295unsigned long

32-2147483648 a 2147483647

long

16-32768 a 32767short int

160 a 65535unsigned int

16-32768 a 32767int

16-32768 a 32767enum

80 a 255unsigned char

8-128 a 127char

0Sin valorvoid

#de bits que ocupa

RangoTipo

Bool True, False

Page 16: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

OBJETOS VARIABLES

Nombres de variable corresponden a posiciones en la memoria de la computadora

Cada variable dispone de un nombre, un tipo, tamaño y un valor

Cuando un nuevo valor es puesto en una variable, reemplaza el valor anterior.

Page 17: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

DECLARACIÓN DE OBJETOS VARIABLES

−Las variables deben ser declaradas previamente a ser usadas.

La declaración de las variables se hace de acuerdo con el siguiente formato:

clase variable = valor inicial opcional;

Ejemplos:char c;int i, j;long potencia;float radio, longitud;bool x = true;

Page 18: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

int numero; int x, y; int valor = 123;float num = 4060.80;Float C = 0.0;

Page 19: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

DEFINICIÓN DE CONSTANTES

Una constante es un identificador cuyo valor nunca cambia durante la ejecución del programa.

Pueden ser de varios tipos de datos. En el caso de constantes de tipo carácter, éstas irán encerradas entre comillas simples, utilizándose las comillas dobles en el caso de cadenas de caracteres. El formato de uso es:

Const clase constante = Valor constante;

Page 20: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

Ejemplos:Const float tasa_impuesto=0.07;Const char nombre[]=“CARLOS PEREZ”;Const long potencia=500;Const char respuesta[]=‘Y’;

Page 21: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

OPERADORES

Un operador es un caracter o grupo de caracteres que actúa sobre una, dos o más variables para realizar una determinada operación con un determinado resultado. Operadores de Asignación Operadores Aritméticos Operadores Incrementales Operadores Relacionales Operadores Lógicos.

Page 22: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

OPERADORES DE ASIGNACIÓN

Sirve para dar un valor a una variable.

Este valor puede ser un número que tecleamos directamente u otra variable:

a = 6; /* Se asigna el valor de 6 directamente */

a = b; /* Le damos el valor de una | variable*/

Es válida la siguiente expresión:

a = b = c = 10; /* Damos a las variables a,b,c el valor 10 */

Page 23: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

Los operadores de asignaciónc = c + 3;

puede ser abreviado como c += 3; Enunciados de la forma

variable = variable operador expresion;puede ser escrito comovariable operador= expresion;

Ejemplos:d -= 4 (d = d - 4)e *= 5 (e = e * 5)f /= 3 (f = f / 3)g %= 9 (g = g % 9)

Page 24: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

OPERADORES ARITMÉTICOS

Nos permiten realizar cálculos Aritméticos

- resta, * producto,

+ suma, / división, % módulo

División de enteros trunca el residuo

7 / 5 es igual a 1

Operador Modulo (%) retorna el residuo

7 % 5 es igual a 2

Page 25: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

OPERADORES INCREMENTALES

Incremento (++)Puede ser usado en vez de c+=1

Decremento (--)Puede ser usado en vez de c-=1

Operador es usado antes de la variable(++c or --c)

Page 26: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

OPERADORES RELACIONALES Los operadores relacionales se utilizan cuando se

desea tomar una decisión:

> mayor que

< menor que

>= mayor o igual que

<= menor o igual que

== igual que

!= distinto de Cuando se evalúa una condición el resultado que se

obtiene es 0 si no cumple (falso) y un número distinto de 0 si se cumple (verdadero). Normalmente cuando se cumplen devuelven un 1.

Page 27: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

A veces se requiere comprobar si varias condiciones se cumplen de determinada manera.

&& (Y lógico - AND ) Retorna verdadero si ambas condiciones son verdaderas

Ej. (n > 5 && n < 8) || (O lógico - OR )

Retorna verdadero si cualquiera de las condiciones es verdaderas

Ej. D == 3 || D >= 5

OPERADORES LÓGICOS

Page 28: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

ESTRUCTURA DE UN PROGRAMA EN DEV-C++

Page 29: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

// : Permite documentar un programa ó

/* bloque */ : ignora el texto escrito en el bloque

# include : Instrucción que se usa para copiar archivos encabezados de Dev-C++ dentro del programa fuente.

Ejemplo: iostream.h = Archivo de encabezado que contiene a las instrucciones de entrada y salida.

int main() : Corresponde el inicio de la declaración de la función main. La función main es el punto donde empiezan la ejecución de todos los programas en Dev-C++

Las llaves ({ and }) indican un bloque.

Page 30: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

getch(): Lee una cadena de caracteres por teclado y se utiliza para detener la

pantalla.

Page 31: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

SENTENCIAS DE ENTRADA Y SALIDA

1.-cout.- Es la sentencia de salida en Dev-C++. Para poder utilizarla debe ser declarado el archivo iostream.h

Formato:

cout <<elemento #1 <<elemento #2. . . . <<elemento #n;

Donde: << operador de inserción de flujo.

Page 32: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

Ejemplos:

cout <<250; ===== escribe: 250

cout <<1<<2<<3<<4; ===== escribe: 1234

cout <<2.75; ===== escribe: 2.75

cout <<‘A’; ===== escribe: A

cout <<“Dev-C++”; ===== escribe: Dev-C++

Cout <<“Resistencia = ”<<Resistencia<<“ohms \n”

<<“Corriente = “<<Corriente<<“Amperes\n”

<<“voltaje = “<<Voltaje<<“Volts.”<<endl;

Donde:

\n = Secuencia de escape que genera un salto de línea.

Endl = Realiza lo mismo que \n y además dirige la salida del flujo a la memoria temporal de salida.

Page 33: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

2.-cin.- Es la sentencia de entrada en Dev-C++. Para poder utilizarla debe ser declarado el archivo iostream.h

Formato:

cin >>Variable para lectura;

Donde: >> operador de extracción de flujo.

Ejemplos:

cin >>nota1;

cin >>nota2;

cin >>nota3;

Page 34: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

EJERCICIO # 1.- Elaborar un programa en Dev-C++ que imprima un mensaje de bienvenida.

//PRIMER PROGRAMA EN DEV-C++

//using namespace std;

#include <iostream.h>

//#include <conio.h>

int main()

{

system("cls");

cout <<"BUENAS TARDES\n"

<<"ESTE ES MI PRIMER PROGRAMA\n"

<<"EN DEV-C++"<<endl;

system("pause");

//getch();

}

conio.h = Archivo de encabezado que permite utilizar el getch();

Page 35: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

EJERCICIO # 2.- Elaborar un programa que permita dar un determinado formato de ancho de campo.//SEGUNDO PROGRAMA

//USO DE LA ORDEN SETW

using namespace std;

#include <iostream>

#include <iomanip>

//#include <conio.h>

int main()

{

cout <<"\n\n\n"

<<setw(15)<<"NOMBRE"

<<setw(22)<<"DIRECCION"

<<setw(23)<<"TELEFONO"<<endl;

cout <<setw(15)<<"======"

<<setw(22)<<"========="

<<setw(23)<<"========"<<endl;

cout <<setw(15)<<"JOSE LUIS"

<<setw(22)<<"CALLE LIMA 123"

<<setw(23)<<"213658";

getch();

}

iomanip.h = Archivo de encabezado que permite utilizar el setw();

Page 36: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

EJERCICIO # 3.- Elaborar un programa que calcule la suma de 2 números.

using namespace std;

# include <iostream>

# include <iomanip>

# include <conio.h>

int main()

{

float n1=0.0,n2=0.0,r=0.0;

//TITULO DEL PROGRAMA

cout <<setw(50)<<"SUMA DE DOS NUMEROS\n"

<<setw(50)<<"===================\n"

<<"\n\n\n";

Page 37: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

//PROCESO DE LECTURA

cout.setf(ios::fixed);

cout.precision(2);

cout<<setw(20)<<"NUMERO 1 = ";cin>>n1;

cout<<setw(20)<<"NUMERO 2 = ";cin>>n2;

//PROCESO DE CALCULO

r=n1+n2;

//PROCESO DE SALIDA

cout<<setw(20)<<"SUMA = "<<r<<endl;

getch();

//system("pause");

}//FIN DEL PROGRAMA

Page 38: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

Formato de salida de punto flotante:

cout.setf (ios::fixed|ios::left);

cout.precision(n);

Donde:

cout.setf = Genera una salida decimal fija.

cout.precision(n)= Indica el # de decimales.

setf y precision son 2 funciones del archivo de encabezado iostream.h

Page 39: FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA ESCUELA DE INGENIERÍA ELECTRÓNICA UNIVERSIDAD NACIONAL “SAN LUIS GONZAGA” DE ICA.

BIBLIOGRAFIA

JOYANES Luis: Turbo C++. Mc. Graw Hill, 1994

JAVIER CEBALLOS: Curso de Programación C++. Editorial RA-MA Abril-1991

VASQUEZ PARAGULLA Julio: Programación C++. ANDREW C. STAUGAARD, Jr. : Técnicas Estructuradas