Practica 3 2016

Page 1

Campus Atizapán

Universidad Tecnológica de México. LICENCIATURA EN COMPUTACIONALES

INGENIERÍA

EN

SISTEMAS

MATERIA: FUNDAMENTOS Y LOGICA DE PROGRAMACIÓN.

AREA: INGENIERÍA. CUATRIMESTRE: TERCERO.

PRACTICA No. 3 Funcion Portada en c++

Fecha de Elaboración 06-Junio-2016 Fecha de revisión.: ______________ Responsable:__________________

Electricidad y Magnetismo Rev. 1

Procedimiento No. Malab 03

Retención 1 año + actual JUNIO 2005

1


OBJETIVO: Uso de librerías, ciclos for

INVESTIGACIÓN PREVIA A) Investigue el uso de las bibliotecas iostream y conio. B) Investigue el uso de getch. C) Investigue el uso de return.

MATERIAL  Computadora de escritorio  Compilador para C++

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

2


MARCO TEORICO: La función getch retorna el carácter leído desde el teclado. Por ejemplo

La biblioteca "<conio.h>" pertenece a Borland por lo que no es estándar y no la encontrarás implementada o almenos no totalmente en otros muchos compiladores, y más importante en otros sistemas, lo que reduce la potabilidad de tu código. Es una biblioteca de manejo de entrada y salida de datos en la consola para el sistema DOS. Se la considera obsoleta, y es posible que Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

3


algunas de las funciones que incluye no funcionen o lo hagan incorrectamente. No es estrictamente necesaria para programar por lo que podremos prescindir de ella. Como nos estamos centrando sólo en un entorno concreto: por ejemplo Dev-C++; lo que contemos no será completamente general, pero sí lo suficientemente como para poder adaptarnos a otros entornos de programación sin mucho esfuerzo. Recordemos que somos personas ordenadas, por lo tanto, nuestras bibliotecas tienen que ser un reflejo de ese orden. Procuraremos no mezclar en una misma biblioteca funciones sobre temas diferentes. Por ejemplo, no es buena idea crear una biblioteca que contenga funciones de tratamiendo de cadenas con funciones de resolución de ecuaciones o con funciones gráficas. Es preferible crear varias bibliotecas separadas. Además, las bibliotecas deben estar bien documentadas. Es posible que pensemos que normalmente las usaremos nosotros, y que ya sabemos qué hacen, pero también puede suceder que decidamos compartirlas, o sencillamente, que olvidemos cómo hacen lo que hacen, y necesitemos modificarlas o completarlas. CICLO FOR EN C++. ESTRUCTURA, SINTAXIS Y USO DE UN CICLO FOR EN C++ Los ciclos for son lo que se conoce como estructuras de control de flujo cíclicas o simplemente estructuras cíclicas, estos ciclos, como su nombre lo sugiere, nos permiten ejecutar una o varias líneas de código de forma iterativa, conociendo un valor especifico inicial y otro valor final, además nos permiten determinar el tamaño del paso entre cada "giro" o iteración del ciclo. En resumen, un ciclo for es una estructura de control iterativa, que nos permite ejecutar de manera repetitiva un bloque de Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

4


instrucciones, conociendo previamente un valor de inicio, un tamaño de paso y un valor final para el ciclo. ¿CÓMO FUNCIONA UN CICLO FOR? Para comprender mejor el funcionamiento del ciclo for, pongamos un ejemplo, supongamos que queremos mostrar los números pares entre el 50 y el 100, si imaginamos un poco como seria esto, podremos darnos cuenta que nuestro ciclo deberá mostrar una serie de números como la siguiente: 50 52 54 56 58 60 ... 96 98 100. Como podemos verificar, tenemos entonces los componentes necesarios para nuestro ciclo for, tenemos un valor inicial que sería el 50, tenemos también un valor final que sería el 100 y tenemos un tamaño de paso que es 2 (los números pares). Estamos ahora en capacidad de determinar los componentes esenciales para un ciclo for. Sintaxis del Ciclo For en C++: La sintaxis de un ciclo for es simple en C++, en realidad en la mayoría de los lenguajes de alto nivel es incluso muy similar, de hecho, con tan solo tener bien claros los 3 componentes del ciclo for (inicio, final y tamaño de paso) tenemos prácticamente todo hecho.

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

5


Vamos a ver ahora como es la sintaxis de un ciclo for en C++, así estaremos listos para usarlos en nuestros programas de ahora en adelante Vamos ahora a ver línea por línea el anterior código para comprender todo y quedar claros. Posteriormente veremos un ejemplo con valores reales. Línea 1: En esta línea está prácticamente todo lo esencial de un ciclo for. La sintaxis es simple, tenemos una variable de control llamada i que es tipo entero (int), cabe notar que la variable se puede llamar como nosotros lo deseemos y puede ser del tipo de queramos también, sin embargo en la mayoría de los casos se usa la "i" como nombre y el entero como tipo, pero somos libres de modificar esto a nuestro gusto. Esta variable "i" se le asigna un valor inicial que puede ser cualquier número correspondiente al tipo de dato asignado. Posteriormente lo que haremos será especificar hasta donde irá nuestro ciclo por medio del valor final, ten en cuenta que cada uno de estos componentes es separado por un punto y coma ";", también es importante saber que la condición final puede ser cualquier cosa, mayor, menor, mayor o igual, menor o igual, sin embargo no tiene sentido que la condición sea por ejemplo un igual, pues nuestra variable de control siempre va a cambiar entre valores, menores o mayores que el valor final deseado, si fuera un igual no tendríamos un error de sintaxis, pero nuestro for básicamente no haría nada de nada. Finalmente el ultimo componente de esta primer línea es el tamaño del paso, este componente se especifica aumentando en la cantidad deseada la variable de control. Línea 2: En la línea 2 tenemos una llave abriendo "{" lo cual como seguramente ya sabrás indica que allí comienza el bloque de instrucciones que se ejecutaran cada vez que el ciclo de un "giro". Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

6


Esta llave no es del todo obligatoria, sin embargo si no la ponemos solo se ejecutara dentro de nuestro ciclo la primera línea inmediatamente posterior a la declaración del ciclo, de modo que si deseamos que se ejecuten varias líneas dentro de nuestro ciclo, debemos usar las llaves Línea 3 a 7: En estas líneas es donde estarán todas las operaciones que queramos llevar a cabo de manera iterativa durante la ejecución del ciclo, este bloque podrá tener la cantidad de líneas necesarias incluso, como veremos más adelante dentro de estas podría haber uno o más ciclos, así que podrías tener todo un programa dentro de un ciclo. Línea 8: En esta última línea hacemos uso de la llave cerrando "}", una vez más como seguramente ya sabrás esta nos indica que allí termina el bloque del ciclo for y se dará por terminada la ejecución de este para continuar ejecutando el resto del algoritmo. No te preocupes si no comprendiste muy bien lo que acabo de escribir, estoy seguro que con un par de ejemplos que veremos a continuación, te va a quedar todo claro. EJEMPLOS DE CICLO FOR EN C++ A continuación vamos a ver unos cuantos ejemplos para comprender de manera adecuada el uso de los ciclos for en c++, Ejemplo 1: Mostrar en pantalla los números pares Vamos a retomar el ejemplo anterior, donde deseábamos sacar los números pares entre el numero 50 y el 100, es un ejemplo sencillo con el que nos aseguraremos de haber comprendido bien lo anterior: Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

7


Solución Ejemplo 1: Como pudimos ver anteriormente, tenemos entonces que el valor inicial para nuestro ciclo es el numero 50 y el valor final es el 100, además, dado que necesitamos los números pares vamos a ir de dos en dos, así que el tamaño del paso va a ser 2, teniendo estos 3 componentes identificados, estamos listos para crear nuestro ciclo for así:

El código funcional completo sería el siguiente:

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

8


Ejemplo 2: Cuenta regresiva en un ciclo for Ahora veremos otro ejemplo sencillo en cual veremos que el ciclo for también puede iterar disminuyendo el valor del contador, para comprender esto, lo que haremos será imprimir por pantalla una cuenta regresiva desde el número diez hasta el cero, veamos: Solución Ejemplo 2: Para este caso, debido a que queremos ir de un número mayor a uno más pequeño, por lo tanto para este ejemplo el valor inicial será 10 y el valor final será cero. Adicional, el tamaño de paso será de 1 negativo, es decir, -1, así:

El código funcional completo sería el siguiente: Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

9


Este código del ejemplo dos imprimirá por pantalla la serie numérica 10987654321

Ejemplo 3: Contador con un ciclo for Para este ejemplo haremos algo un poco más complejo. El ejemplo consiste en contar al interior de un ciclo for, cuántos números entre el 0 y el 10.000 son múltiplos del 13. Para ello haremos uso del Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

10


operador % (modulo) que obtiene el residuo de una división y también usaremos un pequeño condicional para verificar que el modulo sea cero al dividir por 13. Solución Ejemplo 3: Para este caso el valor inicial será 0 y el valor final será 10000. Adicional, el tamaño de paso será de 1. Al interior del ciclo, en cada iteración verificaremos si el número en el que estamos es divisible por trece o no y en caso afirmativo aumentaremos el contador en una unidad así:

El código funcional completo sería el siguiente:

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

11


Este ciclo for nos permitirá saber que existen 770 múltiplos del 13 en los números del 0 al 10000. En efecto los ciclos for, son bastante útiles, sin embargo desde el punto de vista de la eficiencia, es recomendable evitarlos en la medida de lo posible, siempre que vayas a usar un ciclo for, deberías preguntarte primero si es totalmente necesario o si existe una manera más efectiva de hacerlo. Evidentemente habrá Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

12


situaciones en las que será casi que imprescindible usar el ciclo for, pues por algo existen. Está entonces en nuestra habilidad determinar cuándo usarlos y mejor aún cómo usarlos de manera efectiva. DESARROLLO DE LA PRACTICA. PARTE I Escriba en un complilador el siguiente código

Posteriormente compilelo y guardo su código

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

13


Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

14


Posteriormente Haremos nuestra Propia Biblioteca en c++ 1. Creamos un archivo nuevo y ponemos nuestra funcion Vamos a generar nuestra propia bibioteca. Es sencillo y se el procedimiento el cual te serรก de utilidad para compilar tus programas o crear nuevas funciones .

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

15


2. Guardamos el archivo en la carpeta include del compilador dev, para esto colocamos el archivo en la siguiente direcciรณn C:/Program Files(x86)\Dev-Cpp\MinGW64\include\biblio.h ,

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

16


3. Por ejemplo para llamar a nuestra portada portada solo seria el siguiente codigo cรณdigo.

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

17


PARTE 2. Conceptos Básicos de Programacion Diseñe un programa que lea un número entero de teclado y escriba un triángulo (relleno) con tantos asteriscos (*) de altura como indique el número leído. Por ejemplo, para un número leído con valor 10, escribira:

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

18


Escriba el siguiente cรณdigo

Posteriormente ejecutalo

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

19


EJEMPLO DE SWITCH Al ingresar un numero entre 1 y 4 devolver la estación del año de acuerdo a lo siguiente tabla. Numero Estación 1 Verano 2 Otoño 3 Invierno 4 Primavera

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

20


Análisis: Para la solución de este problema, se requiere que el usuario ingrese un número entero y el sistema realice el proceso para devolver la estación.  Entrada Numero(e)  Salida Estacion(e)

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

21


Campus Atizapán

Diseño:

Algoritmo DIAGRAMA DE FLUJO

PSEUDOCODIGO

Electricidad y Magnetismo Rev. 1

Procedimiento No. Malab 03

Retención 1 año + actual JUNIO 2005

1


CODIFICACIร N EXPORTADA EN PSEINT

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

2


CODIGO NO HECHO EN PSEINT

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

3


Problemas para el alumno 1. Diseñe un programa que lea un número entero de teclado y escriba un triángulo (hueco) con tantos asteriscos (*) de altura como indique el número leído. Por ejemplo, para un número leído con valor 5, escribirá: Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

4


2. Diseñe un programa que lea un número entero de teclado y escriba un cuadrado (relleno) con tantos asteriscos (*) de lado como indique el número leído. Por ejemplo, para un número leído con valor 5, escribirla:

3. Crear un programa para encontrar el Área de un cicrculo, use la formula: A   r2

Área(A): Es el área del circulo Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

5


PI(  ): Representa el valor constante pi (3.14159) Radio (r): Es el radio del circulo Analisis: Para la solución de este problema, se requiere que el usuario ingrese el radio del circulo y el sistema procesa y obtiene el área del circulo. Expresión Algoritmica A  3.14159* r ^ 2

Entrada  Radio(r) Salida  Área(a)

NOTAS PARA LOS ALUMNOS. 1. El reporte final de la práctica deberá ser entregado a máquina de escribir o en procesador de textos (PC) sin excepción. 2. Las prácticas impresas sólo sirven de guía y referencia. 3. No se aceptan copias fotostáticas del reporte final. 4. La entrega del reporte de práctica es por alumno.

CONCLUSIONES DE APRENDIZAJE.

Fundamentos y Logica de Programación

Practica No.3

06-Mayo-2016

6


RECURSOS BIBLIOGRร FICOS. http://www.cplusplus.com/reference/cmath/pow/ https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C%2B %2B/Introducci%C3%B3n http://codigomaldito.blogspot.mx/2005/10/nmerosaleatorios.html http://c.conclase.net/curso/

Fundamentos y Logica de Programaciรณn

Practica No.3

06-Mayo-2016

7


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.