Mantenimiento Industrial Taboada

43
1 MANTENIMIENTO INDUSTRIAL ELABORACION DEL PROGRAMA EDUCATIVO CORRESPONDIENTE ALA MATERIA DE PRINCIPIOS DE PROGRAMACION R E P O R T E T É C N I C O PARA OBTENER EL TÍTULO DE TÉCNICO SUPERIOR UNIVERSITARIO EN MANTENIMIENTO INDUSTRIAL P R E S E N T A JULIO CESAR GAMBOA BASTIDA ASESOR INDUSTRIAL: ing. Valentín Aguilar Beltrán ASESOR ACADÉMICO: Ing. Miguel Ángel Taboada Razo EMPRESA: Laboratorio 1. GENERACIÓN: I 2011 - III 2012

Transcript of Mantenimiento Industrial Taboada

MANTENIMIENTO INDUSTRIALELABORACION DEL PROGRAMA EDUCATIVO CORRESPONDIENTE ALA MATERIA DE PRINCIPIOS DE PROGRAMACION RE P O R T E T C N I C O PARA OBTENER EL TTULO DE

TCNICO SUPERIOR UNIVERSITARIO EN MANTENIMIENTO INDUSTRIALP R E S E N T A

JULIO CESAR GAMBOA BASTIDAASESOR INDUSTRIAL: ing. Valentn Aguilar Beltrn ASESOR ACADMICO: Ing. Miguel ngel Taboada Razo EMPRESA: Laboratorio 1. GENERACIN: I 2011 - III 2012

1

INDICE Tabla de contenidoINDICE.................................................................................................................................................. 2 I. II. III. A. B. IV. V. VI. VII. A. 1. VIII. A. IX. X. A. 1. 2. B. C. DEDICATORIA .............................................................................................................................. 5 OBJETIVO GENERAL ..................................................................................................................... 6 OBJETIVOS ESPECIFICOS .......................................................................................................... 6 OBJETIVO 1 .............................................................................................................................. 6 OBJETIVO 2 .............................................................................................................................. 6 INTRODUCCION ....................................................................................................................... 7 MARCO TEORICO ......................................................................................................................... 8 RESUMEN ................................................................................................................................ 9 UNIDAD I ............................................................................................................................... 10 ALGORITMOS......................................................................................................................... 10 Diseo del algoritmo. ........................................................................................................ 11 Diagramas de flujo ................................................................................................................ 12 Caractersticas comunes........................................................................................................ 12 ELEMENTOS DEL DIAGRAMA DE FLUJO ................................................................................ 14 UNIDAD II FUNDAMENTOS DE PROGRAMACION..................................................................... 15 TIPOS DE DATOS, OPERADORES Y EXPRECIONES .................................................................. 15 Tipos de datos................................................................................................................. 15 TIPOS DE OPERADORES ........................................................................................... 21 EXPRECIONES ........................................................................................................................ 24 ESTRUCTURA DE UN PROGRAMA ......................................................................................... 25

DECISIN ....................................................................................................................................... 33 D. E. XI. A. B. C. REPETICION ........................................................................................................................... 35 FUNCIONES ............................................................................................................................ 36 UNIDAD III TOPICOS ESPECIFICOS ........................................................................................ 37 ARREGLOS ............................................................................................................................. 37 CADENAS ............................................................................................................................... 39 MANIPULACION DE BITS ....................................................................................................... 42

2

3

UNIVERSIDAD TECNOLOGICA DE TECAMAC

ALUMNO: JULIO CESAR GAMBOA BASTIDA GRUPO: 2MIN1 MATERIA: PRINCIPIOS DE PROGRAMACION TEMA: PROGRAMA EDUCATIVO MANTENIMIENTO INDUSTRIAL PROF: MIGUEL ANGEL TABOADA

4

I.

DEDICATORIA

A MIS PADRES

ESTE TRABAJO ESTA DIRECTAMENTE DEDICADO A MIS PADRES QUE SON LOS QUE ME HAN APOYADO EN ESTE LARGO CAMINO DE FORMACION COMO ESTUDIANTE Y PORQUE GRACIAS A SUS ENSEENSAS Y CONSEJOS E LOGRADO LLEGAR HASTA AQU, SE LOS AGRADESCO DE TODO CORAZN

5

II.

OBJETIVO GENERAL

QUE EL ALUMNO IDENTIFIQUE LAS DIFERENTES TECNICAS PARA PODER PROGRAMAR.CON LOS DIFERENTES COMANDOS QUE SE PUEDAN UNTILIZAR EN EL SOFTWARE DE PROGRAMACION PARA PODER PERFECCIONAR NUESTRAS TECNICAS DE PROGRAMACION.

III.A.

OBJETIVOS ESPECIFICOSOBJETIVO 1

QUE EL ALUMNO IDENTIFIQUELOS DIFERENTES COMANDOS Y SU UTILIDAD PARA LA PROGRAMACION DE NUEVOS SOFTWARE.

B.

OBJETIVO 2

EL ALUMNO DEBE REALIZAR PROGRAMACIONES EN EL SOFTWARE DE MANERA FLUIDA Y PODER MANEJAR PERFECTAMENTE LOS LENGUAJES DE PROGRAMACION.

6

IV.

INTRODUCCION

La programacin es el proceso de disear, escribir, depurar y mantener el cdigo fuente de programas computacionales. El cdigo fuente es escrito en un lenguaje de programacin. El propsito de la programacin es crear programas que exhiban un comportamiento deseado. El proceso de escribir cdigo requiere frecuentemente conocimientos en varias reas distintas, adems del dominio del lenguaje a utilizar, algoritmos especializados y lgica formal. Programar no involucra necesariamente otras tareas tales como el anlisis y diseo de la aplicacin (pero s el diseo del cdigo), aunque s suelen estar fusionadas en el desarrollo de pequeas aplicaciones. Para crear un programa, y que la computadora interprete y ejecute las instrucciones escritas en l, debe usarse un Lenguaje de programacin. En sus inicios las computadoras interpretaban slo instrucciones en un lenguaje especfico, del ms bajo nivel, conocido como cdigo mquina, siendo ste excesivamente complicado para programar. De hecho slo consiste en cadenas de nmeros 1 y 0 (Sistema binario). Para facilitar el trabajo de programacin, los primeros cientficos que trabajaban en el rea decidieron reemplazar las instrucciones, secuencias de unos y ceros, por palabras o letras provenientes del ingls; codificndolas as y creando un lenguaje de mayor nivel, que se conoce como Assembly o lenguaje ensamblador. Por ejemplo, para sumar se usa la letra A de la palabra inglesa add (sumar). En realidad escribir en lenguaje ensamblador es bsicamente lo mismo que hacerlo en lenguaje mquina, pero las letras y palabras son bastante ms fciles de recordar y entender que secuencias de nmeros binarios. A medida que la complejidad de las tareas que realizaban las computadoras aumentaba, se hizo necesario disponer de un mtodo sencillo para programar. Entonces, se crearon los lenguajes. Mientras que una tarea tan trivial como multiplicar dos nmeros puede necesitar un conjunto de instrucciones en lenguaje ensamblador, en un lenguaje de alto nivel bastar con solo una. Una vez que se termina de escribir un programa, sea en ensamblador o en un lenguaje de alto nivel, es necesario compilarlo, es decir, traducirlo a lenguaje mquina.1

7

V.

MARCO TEORICO

Se pueden utilizar muchos lenguajes para programar una computadora. El ms bsico es el lenguaje de maquina, una coleccin de instrucciones muy detallada que controla la circuitera interna de la maquina. Este es el dialecto natural de la maquina. Muy pocos programas se escriben actualmente en lenguaje de maquina por dos razones importantes: primero, porque el lenguaje de maquina es muy incomodo para trabajar y segundo por que la mayora de las maquinas se pide programar en diversos tipos de lenguajes, que son lenguajes de alto nivel, cuyas instrucciones son ms compatibles con los lenguajes y la forma de pensar humanos como lo es el lenguaje c que adems es de propsito general. Debido a que los programas diseados en este lenguaje se pueden ejecutar en cualquier maquina, casi sin modificaciones. Por tanto el uso del lenguaje de alto nivel ofrece tres ventajas importantes, sencillez, uniformidad y portabilidad. Lenguaje de programacin: Sistema de smbolos y reglas que permite la construccin de programas con los que la computadora puede operar as como resolver problemas de manera eficaz. Estos contienen un conjunto de instrucciones que nos permiten realizar operaciones de entrada / salida, calculo, manipulacin de textos, lgica / comparacin y almacenamiento / recuperacin. Los lenguajes de programacin se clasifican en:

Lenguaje Mquina: Son aquellos cuyas instrucciones son directamente entendibles por la computadora y no necesitan traduccin posterior para que la CPU pueda comprender y ejecutar el programa. Las instrucciones en lenguaje maquina se expresan en trminos de la unidad de memoria ms pequea el bit (dgito binario 0 1). Lenguaje de Bajo Nivel (Ensamblador): En este lenguaje las instrucciones se escriben en cdigos alfabticos conocidos como mnemotcnicos para las operaciones y direcciones simblicas. Lenguaje de Alto Nivel: Los lenguajes de programacin de alto nivel (BASIC, pascal, cobol, fortran, etc.) son aquellos en los que las instrucciones o sentencias a la computadora son escritas con palabras similares a los lenguajes humanos (en general en ingles), lo que facilita la escritura y comprensin del programa.

8

VI.

RESUMEN

El ordenador solo entiende el llamado cdigo mquina (1 y 0, hay o no hay corriente). Los lenguajes ms cercanos al idioma del ordenador, llamados de bajo nivel, son muy complicados (casi como el cdigo mquina) y poco usados. Los lenguajes de programacin de alto nivel permiten dar rdenes al ordenador con un lenguaje parecido al nuestro (Visual Basic, Pascal, GML, LOGO, C++, etc). El problema de los lenguajes de alto nivel es que necesitan un compilador o interprete para traducirlo al cdigo mquina. Hay otros programas como el Action Script 3.0, el Java o el PHP que son programas interpretados, es decir, se analizan y ejecutan las instrucciones por el propio programa. Estos son los mas utilizados actualmente. Los lenguajes, como todo, hay que aprendrselos, pero tienen una ventaja, y es que hay muchos puntos en comn. Los llamados Fundamentos de Programacin analiza estos puntos. Sern los que aprenderemos, aunque a la vez utilizaremos el Visual Basic 6. para aplicar los fundamentos.

9

VII. UNIDAD IA. ALGORITMOS

En matemticas, ciencias de la computacin y disciplinas relacionadas, un algoritmo (del griego y latn, dixit algorithmus y este a su vez del matemtico persa Al-Juarismi1 ) es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. 2 Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solucin. Los algoritmos son el objeto de estudio de la algoritmia.1 En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrn. Algunos ejemplos en matemtica son el algoritmo de la divisin para calcular el cociente de dos nmeros, el algoritmo de Euclides para obtener el mximo comn divisor de dos enteros positivos, o el mtodo de Gauss para resolver un sistema lineal de ecuaciones. El programador de computadoras es ante que nada una persona que resuelve problemas, por lo que para llegar a ser un programador eficaz se necesita aprender a resolver problemas de un modo riguroso y sistemtico. A la metodologa necesaria para resolver problemas mediante programas se denomina Metodologa de la Programacin. El eje central de esta metodologa es el concepto, ya tratado, de algoritmo. Un algoritmo es un mtodo para resolver un problema. Aunque la popularizacin del trmino ha llegado con el advenimiento de la era informtica, algoritmo proviene de Mohammed al-Khowarizmi, matemtico persa que vivi durante el siglo IX y alcanzo gran reputacin por el enunciado de las reglas para sumar, restar, multiplicar y dividir nmeros decimales; la traduccin al latn del apellido de la palabra algorismus derivo posteriormente en algoritmo. Euclides, el gran matemtico griego (del siglo IV antes de Cristo) que invento un mtodo para encontrar el mximo comn divisor de dos nmeros, se considera con AlKhowarizmi el otro gran padre de la algoritmia (ciencia que trata de los algoritmos). El profesor Niklaus Wirth, inventor de Pascal, Modula-2 y Oberon, titulo uno de sus mas famosos libros, Algoritmos + Estructuras de Datos = Programas, significndonos que solo se puede llegar a realizar un buen programa con el diseo de un algoritmo y una correcta estructura de datos. Esta ecuacin ser de una de las hiptesis fundamentales consideradas en esta obra. La resolucin de un problema exige el diseo de un algoritmo que resuelva el problema propuesto. Los pasos para la resolucin de un problema son:

10

1. Diseo de algoritmo, que describe la secuencia ordenada de pasos que conducen a la solucin de un problema dado. (Anlisis del problema y desarrollo del algoritmo). 2. Expresar el algoritmo como un programa de lenguaje de programacin adecuado. (Fase de codificacin.) 3. Ejecucin y validacin del programa por la computadora.1.

Diseo del algoritmo.

Anlisis de proceso implica que hace el programa. Diseo implica como se hace o realiza la tarea (problema) solicitado

En el diseo:

El todo es la sumatoria de las partes. Divide el todo en varias partes.

En la resolucin de un problema complejo, se divide en varios sub problemas y seguidamente se vuelven a dividir los sub problemas en otros mas sencillos, hasta que puedan implementarse en el computador. Esta caracterstica define lo que se entiende como diseo descendente( TopDown / Norte-Sur ) o diseo modular. El proceso de ruptura del problema en cada etapa se llama refinamiento sucesivo.

Cada problema se resuelve mediante un modulo (subprograma) y tiene un solo punto de entrada y un solo punto de salida. Un programa bien diseado consta de un programa principal (modulo de nivel mas alto) que llama a subprogramas (mdulos de nivel mas bajo), que a su vez pueden llamar otros sub programas.

Los programas que se estructuran de esta forma, se dicen que tienen diseo modular y el mtodo de romper el programa en modos pequeos se llama programacin modular. Los mdulos pueden ser planificados, codificados, compilados y depurados independientemente pueden ser intercambiados entre si. Este proceso implica la ejecucin de los siguientes pasos: 1 2 3 4 programar un modulo comprobar un modulo depurar el modulo combinar el modulo con mdulos anteriores

11

VIII. Diagramas de flujoEl diagrama de flujo es la representacin grfica del algoritmo o proceso. Se utiliza en disciplinas como la programacin, la economa, los procesos industriales y la psicologa cognitiva. Estos diagramas utilizan smbolos con significados bien definidos que representan los pasos del algoritmo, y representan el flujo de ejecucin mediante flechas que conectan los puntos de inicio y de fin de proceso.

A.

Caractersticas comunes

Un diagrama de flujo siempre tiene un nico punto de inicio y un nico punto de trmino. Adems, todo camino de ejecucin debe permitir llegar desde el inicio hasta el trmino. Las siguientes son acciones previas a la realizacin del diagrama de flujo: Identificar las ideas principales a ser incluidas en el diagrama de flujo. Deben estar presentes el dueo o responsable del proceso, los dueos o responsables del proceso anterior y posterior y de otros procesos interrelacionados, otras partes interesadas. Definir qu se espera obtener del diagrama de flujo. Identificar quin lo emplear y cmo. Establecer el nivel de detalle requerido. Determinar los lmites del proceso a describir. Los pasos a seguir para construir el diagrama de flujo son: Establecer el alcance del proceso a describir. De esta manera quedar fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente. Identificar y listar las principales actividades/subprocesos que estn incluidos en el proceso a describir y su orden cronolgico. Si el nivel de detalle definido incluye actividades menores, listarlas tambin. Identificar y listar los puntos de decisin. Construir el diagrama respetando la secuencia cronolgica y asignando los correspondientes smbolos.

12

Asignar un ttulo al diagrama y verificar que est completo y describa con exactitud el proceso elegido.

13

IX.

ELEMENTOS DEL DIAGRAMA DE FLUJONombre Smbolo Funcin Representa el inicio y fin de un programa. Tambin puede representar una parada o interrupcin programada que sea necesaria realizar en un programa. Cualquier tipo de introduccin de datos en la memoria desde los perifricos o registro de informacin procesada en un perifrico. Cualquier tipo de operacin que pueda originar cambio de valor, formato o posicin de la informacin almacenada en memoria, operaciones aritmticas, de transformaciones, etc. Indica operaciones lgicas o de comparacin entre datos (normalmente dos) y en funcin del resultado de la misma determina (normalmente si y no) cual de los distintos caminos alternativos del programa se debe seguir Sirve para enlazar dos partes cualesquiera de un diagrama a travs de un conector en la salida y otro conector en la entrada. Se refiere a la conexin en la misma pagina del diagrama

Terminal

Entrada / salida

Proceso

Decisin

Conector Misma Pgina

Indicador de direccin o lnea de flujo

Indica el sentido de la ejecucin de las operaciones

Salida

Se utiliza en ocasiones en lugar del smbolo de salida. El dibujo representa un pedazo de hoja. Es usado para mostrar datos o resultados.

14

X.A.

UNIDAD II FUNDAMENTOS DE PROGRAMACIONTIPOS DE DATOS, OPERADORES Y EXPRECIONES

1. Tipos de datos Es uno de los conceptos fundamentales de cualquier lenguaje de programacin. Estos definen los mtodos de almacenamiento disponibles para representar informacin, junto con la manera en que dicha informacin ha de ser interpretada. Para crear una variable (de un tipo simple) en memoria debe declararse indicando su tipo de variable y su identificador que la identificar de forma nica. La sintaxis de declaracin de variables es la siguiente: TipoSimple Identificador1, Identificador2; Esta sentencia indica al compilador que reserve memoria para dos variables del tipo simple TipoSimple con nombres Identificador1 e Identificador2. Los tipos de datos en Java pueden dividirse en dos categoras: simples y compuestos. Los simples son tipos nucleares que no se derivan de otros tipos, como los enteros, de coma flotante, booleanos y de carcter. Los tipos compuestos se basan en los tipos simples, e incluyen las cadenas, las matrices y tanto las clases como las interfaces, en general. a) Tipos de datos enteros Se usan para representar nmeros enteros con signo. Hay cuatro tipos: byte, short, int y long. Tipo byte short int long Tamao 1Byte (8 bits) 2 Bytes (16 bits) 4 Bytes (32 bits) 8 Bytes (64 bits)

15

Tipos de datos enteros Literales enteros Son bsicos en la programacin en Java y presentan tres formatos:

Decimal: Los literales decimales aparecen como nmeros ordinarios sin ninguna notacin especial. Hexadecimal: Los hexadecimales (base 16) aparecen con un 0x 0X inicial, notacin similar a la utilizada en C y C++. Octal: Los octales aparecen con un 0 inicial delante de los dgitos.

Por ejemplo, un literal entero para el nmero decimal 12 se representa en Java como 12 en decimal, como 0xC en hexadecimal, y como 014 en octal. Los literales enteros se almacenan por defecto en el tipo int, (4 bytes con signo), o si se trabaja con nmeros muy grandes, con el tipo long, (8 bytes con signo), aadiendo una L l al final del nmero. La declaracin de variables enteras es muy sencilla. Un ejemplo de ello sera: long numeroLargo = 0xC; // Por defecto vale 12 b) Tipos de datos en coma flotante Se usan para representar nmeros con partes fraccionarias. Hay dos tipos de coma flotante: float y double. El primero reserva almacenamiento para un nmero de precisin simple de 4 bytes y el segundo lo hace para un numero de precisin doble de 8 bytes. Tipo float double Tamao 4 Byte (32 bits) 8 Bytes (64 bits)

16

Tipos de datos numricos en coma flotante

. Descripcin Caracter Unicode Numero octal Barra invertida Continuacin Retroceso Retorno de carro Alimentacin de formularios Tabulacin horizontal Lnea nueva Comillas simples Comillas dobles Nmeros arbigos ASCII Alfabeto ASCII en maysculas Alfabeto ASCII en minsculas Representacin \udddd \ddd \\ \ \b \r \f \u005C \ \u0008 \u000D \u000C Valor Unicode

\t \n \ \" 0-9 A.-Z

\u0009 \u000A \u0027 \u0022 \u0030 a \u0039 \u0041 a \u005A

a.-z

\u0061 a \u007A

17

c) Tipo de datos boolean Se usa para almacenar variables que presenten dos estados, que sern representados por los valores true y false. Representan valores bi-estado, provenientes del denominado lgebra de Boole. Literales Booleanos Java utiliza dos palabras clave para los estados: true (para verdadero) y false (para falso). Este tipo de literales es nuevo respecto a C/C++, lenguajes en los que el valor de falso se representaba por un 0 numrico, y verdadero cualquier nmero que no fuese el 0. Para declarar un dato del tipo booleano se utiliza la palabra reservada boolean: boolean reciboPagado = false; // Aun no nos han pagado?! d) Tipo de datos carcter Se usa para almacenar caracteres Unicode simples. Debido a que el conjunto de caracteres Unicode se compone de valores de 16 bits, el tipo de datos char se almacena en un entero sin signo de 16 bits. Java a diferencia de C/C++ distingue entre matrices de caracteres y cadenas. Literales carcter Representan un nico carcter (de la tabla de caracteres Unicode 1.1) y aparecen dentro de un par de comillas simples. De forma similar que en C/C++. Los caracteres especiales (de control y no imprimibles) se representan con una barra invertida ('\') seguida del cdigo carcter. Tabla 7: Caracteres especiales Java Las variables de tipo char se declaran de la siguiente forma: char letraMayuscula = 'A'; // Observe la necesidad de las ' ' char letraV = '\u0056'; // Letra 'V' e) Conversin de tipos de datos En Java es posible transformar el tipo de una variable u objeto en otro diferente al original con el que fue declarado. Este proceso se denomina "conversin", "moldeado" o "tipado". La conversin se lleva a cabo colocando el tipo destino entre parntesis, a la izquierda del valor que queremos convertir de la forma siguiente: char c = (char)System.in.read();

18

La funcin read devuelve un valor int, que se convierte en un char debido a la conversin (char), y el valor resultante se almacena en la variable de tipo carcter c. El tamao de los tipos que queremos convertir es muy importante. No todos los tipos se convertirn de forma segura. Por ejemplo, al convertir un long en un int, el compilador corta los 32 bits superiores dellong (de 64 bits), de forma que encajen en los 32 bits del int, con lo que si contienen informacin til, esta se perder. Por ello se establece la norma de que "en las conversiones el tipo destino siempre debe ser igual o mayor que el tipo fuente": Tipo Origen byte short char int long float Tipo Destino

double, float, long, int, char, short double, float, long, int double, float, long, int double, float, long double, float double

Tabla 8: Conversiones sin prdidas de informacin f) Vectores y Matrices Una matriz es una construccin que proporciona almacenaje a una lista de elementos del mismo tipo, ya sea simple o compuesto. Si la matriz tiene solo una dimensin, se la denomina vector. En Java los vectores se declaran utilizando corchetes ( [ y ] ), tras la declaracin del tipo de datos que contendr el vector. Por ejemplo, esta sera la declaracin de un vector de nmeros enteros (int): int vectorNumeros[ ]; // Vector de nmeros Se observa la ausencia de un nmero que indique cuntos elementos componen el vector, debido a que Java no deja indicar el tamao de un vector vaco cuando

19

le declara. La asignacin de memoria al vector se realiza de forma explcita en algn momento del programa. Para ello o se utiliza el operador new: int vectorNumeros = new int[ 5 ]; // Vector de 5 nmeros O se asigna una lista de elementos al vector: int vectorIni = { 2, 5, 8}; // == int vectorIni[3]=new int[3]; Se puede observar que los corchetes son opcionales en este tipo de declaracin de vector, tanto despus del tipo de variable como despus del identificador. Si se utiliza la forma de new se establecer el valor 0 a cada uno de los elementos del vector. g) Cadenas En Java se tratan como una clase especial llamada String. Las cadenas se gestionan internamente por medio de una instancia de la clase String. Una instancia de la clase String es un objeto que ha sido creado siguiendo la descripcin de la clase. Cadenas constantes Representan mltiples caracteres y aparecen dentro de un par de comillas dobles. Se implementan en Java con la clase String. Esta representacin es muy diferente de la de C/C++ de cadenas como una matriz de caracteres.

20

2.

TIPOS DE OPERADORES

Operador + SUMA - RESTA * MULTIPLICACION / DIVISION ^ POTENCIACION mod. MODULO En todos los lenguajes de programacin se utilizan operadores para efectuar operaciones aritmticas. Combinando las variables y constantes en expresiones aritmticas por medio de funciones adecuadas. Una expresin es un conjunto de datos o funciones unidos por operadores aritmticos, los cuales se muestran en la siguiente tabla: Operadores Lgicos En ocasiones en los programas se necesitan realizar comparaciones entre distintos valores, esto se realiza utilizando los operadores relaciones, los cuales se listan a continuacin: Operador Significado < Menor que > Mayor que = Mayor o igual que = Igual a Distinto a, diferente de .::OPERADORES ARITMETICOS Y DE ASIGNACION d(o_O)b::. A continuacin se explican los tipos de operadores (aritmticos y de asignacin) que permiten realizar operaciones matemticas en lenguaje C.

21

Operadores aritmticos Existen dos tipos de operadores aritmticos:

Los binarios:

+ * / %

Suma Resta Multiplicacin Divisin Mdulo (resto)

y los unarios:

++ --

Incremento (suma 1) Decremento (resta 1) Cambio de signo

Su sintaxis es:

binarios:

unarios: y al revs, . Operadores de asignacin La mayora de los operadores aritmticos binarios explicados con anterioridad tienen su correspondiente operador de asignacin: = Asignacin simple += Suma -= Resta *= Multiplicacin /= Divisin %= Mdulo (resto)

22

Con estos operadores se pueden escribir, de forma ms breve, expresiones del tipo: n=n+3 se puede escribir n+=3 k=k*(x-2) lo podemos sustituir por k*=x-2 Jerarqua de los operadores Ser importante tener en cuenta la precedencia de los operadores a la hora de trabajar con ellos: () Mayor precedencia ++, - *, /, % +, Menor precendencia Las operaciones con mayor precedencia se realizan antes que las de menor precedencia. Si en una operacin encontramos signos del mismo nivel de precedencia, dicha operacin se realiza de izquierda a derecha. A continuacin se muestra un ejemplo sobre ello: a*b+c/d-e 1. 2. 3. 4. a*b resultado = x c/d resultado = y x+y resultado = z z-e

23

B.

EXPRECIONES

Expresin: Conjunto de operadores y operandos Las expresiones son combinaciones de variables, palabras reservadas, literales, llamadas a mtodos y campos, y operadores que son evaluadas y dan como resultado un valor de un determinado tipo de datos. Este valor puede ser un nmero, un caracter o cualquier otro tipo de datos. El tipo de una expresin est determinado por los tipos de las partes que la componen y la semntica de los operadores. Un operador es un smbolo que transforma una variable o la combina de alguna otra manera con otra variable o literal. Por ejemplo, la siguiente expresin tiene dos operadores, '=' o asignacin y '*' o producto: a = b * c; Las expresiones con que acta un operador se llaman operandos. Existen operadores unarios y binarios, segn actuen sobre uno o dos operandos. Por ejemplo, el operador asignacin es binario mientras que el '-' es unario en este caso: a = -d;

24

C.

ESTRUCTURA DE UN PROGRAMA

Un programa de computadora es un sistema con componentes e interrelaciones. Intentaremos determinar cuales son dichos componentes y como se relacionan. En primer lugar definiremos los conceptos de programa y programa de computadora. Un programa puede ser definido como "una secuencia precisa y ordenada de instrucciones y grupos de instrucciones, las cuales, en su total, definen, describen, o caracterizan la realizacin de alguna tarea". Un programa de computadora es simplemente un programa el cual, posiblemente a trevs de una transformacin, indica a la computadora como realizar una tarea. En el nivel ms elemental, observamos que un programa de computadora est compuesto de sentencias o instrucciones. Estas instrucciones estn ordenadas en una secuencia. Podemos por lo tanto identificar a las instrucciones como componentes y a la secuencia como un relacin. Esta es la visin clsica o "algoritmica" de un programa. De esta visin tenemos como consecuencia, que el esfuerzo en el desarrollo de un programa se enfatiza en encontrar un mtodo de solucin y su transcripcin sentencia a sentencia. Para los propsitos de nuestro estudio, consideraremos que una sentencia es una lnea de cdigo que el programador escribe. La Lingstica de la Modularidad Previo a la definicin de mdulo de programa haremos algunas observaciones. Supongamos un conjunto de sentencias como las que se representan a continuacin: __________ __________ A1: BEGIN A __________ __________ B: __________

25

__________ __________ A2: END A C: __________ __________

Diremos que A1 y A2 son los lmites del conjunto o agregado de sentencias llamado A. La sentencia B se encuentra dentro de A, y C se encuentra fuera de A. Las sentencias se encuentran en el orden en que ingresaran a un compilador. Este orden es conocido como orden lexicogrfico de un programa. Para nuestro estudio el trmino lexicogrfico siempre significar "como est escrito" o el orden en que aparecen las sentencias de un programa en el listado de un compilador. Volviendo al ejemplo, diremos que la sentencia C est lexicogrficamente despus que la A2. Es importante distinguir que el orden lexicogrfico casi siempre no se corresponde con el orden de ejecucin de las sentencias. Uno de los propsitos de los elementos de lmite (A1 y A2 en el ejemplo) es el de controlar el alcance en el que identificadores son definidos y asociados a objetos (variables). Estamos ahora en condiciones de definir el trmino mdulo de programa o simplemente mdulo: Un mdulo es una secuencia lexicogrficamente contigua de sentencias, encerrada entre elementos de frontera, y que poseen un identificador del conjunto de dichas sentencias. Dicho de otra manera, un mdulo es un grupo de sentencias contiguas que poseen un identificador simple por el cual son referenciadas. Esta definicin es general y dentro de la misma podemos encontrar implementaciones particulares de lenguajes especficos como ser: "prrafos", "secciones", y "subprogramas" de COBOL, "funciones" de C, "procedimientos" de Pascal, etc. Un lenguaje de programacin incluye un determinado tipo de mdulo, solo si implementa construcciones lingsticas especficas que realizan las caractersticas de definicin y activacin de dichos mdulos.

26

Conexiones Normales y Patolgicas Diremos que entre dos mdulos existe una conexin normal cuando la conexin se produce al nivel del identificador del mdulo invocado. En oposicin si la conexin intermodular se realiza a un identificador de un elemento interno del mdulo invocado, diremos que es una conexin patolgica.

Diagramas de Flujo de Datos Los diagramas de flujo de datos que usaremos en la etapa de diseo son similares a los utilizados para la etapa del anlisis. Las transformaciones son representadas por burbujas (crculos) y los flujos de datos se representan con flechas. Cada flujo se etiqueta con su contenido. Si dos flujos dibujados adyacentemente son ambos necesarios para realizar una determinada transformacin (a la cual arriban), dibujaremos entre ambos un asterisco ("*"). Este smbolo al igual que en otras disciplinas matemticas representa el operador "Y" o de conjuncin. De igual manera, si solo uno de los flujos es necesario, utilizaremos el smbolo , que representa al operador "O" o de disyuncin. La cantidad de detalle mostrado en el diagrama de flujo de datos variar de problema en problema y de diseador en diseador. (ver ejemplo en Const/Your) Los diagramas de flujo de datos sern de gran utilidad en el estudio del concepto de cohesin,y su utilidad principal es el de herramienta grfica en la estrategia de diseo estructural llamada anlisis de transformacin.

27

Estructura y Procedimiento Tanto nefitos como veteranos, muchas veces encuentran difcil de comprender la diferencia entre el procedimiento y la estructura de programas y sistemas. Peor an son las fallas en la diferenciacin entre codificacin y diseo estructural. La estructura nos da una relacin jerrquica de control existente entre los mdulos que conforman un programa.

Diagramas de Flujo y Diagramas de Estructura Normalmente los procedimientos se representan con diagramas de flujo (no confundir con diagramas de flujo de datos) los cuales modelan la secuencia de operaciones que realiza el programa a travs del tiempo. Un diagrama de estructura en cambio no modela la secuencia de ejecucin sino la jerarqua de control existente entre los mdulos que conforman el programa, independientemente del factor tiempo. Existe un mdulo raz de mximo nivel, del cual dependen los dems, en una estructura arborescente. En el estudio de la estructura de programas, se pueden realizar comparaciones tiles entre dichas estructuras, y las estructuras de las organizaciones humanas.

28

3.8 Notacin de los Diagramas de Flujo de control

29

30

3.9 Notacin de los Diagramas de Estructura

31

Ejemplo Comparativo entre Diagramas de Procesamiento y de Estructura

Diagrama de Flujo

Diagrama de Estructura

32

DECISINLas instrucciones de decisin son necesarias cuando en un algoritmo una o muchas tareas se deben hacer o no, dependiendo de una situacin en particular. esta situacin nos ayudar a decidir si hacemos o no las tareas indicadas. Las instrucciones de decisin que estudiaremos son las bsicas, la Instruccin De Decisin SI y la Instruccin De Decisin SI NO. Instruccin de decisin si: La estructura es la siguiente: Inicio Instruccin 1 Si expresin lgica entonces .......Instruccin 11 .......Instruccin 12 .......Instruccin 13 Fin si Instruccin n Fin del programa se evala la expresin lgica si es verdadera se realizan las instrucciones internas, de lo contrario se salta a la siguiente instruccin fuera de la estructura en este caso a la instruccin n.

Instrucciones de decisin si no La estructura es la siguiente: Inicio Instruccin 1 Si expresin lgica entonces .......Instruccin 11 .......Instruccin 12 .......Instruccin 13 Si no .......Instruccin 21 .......Instruccin 22 .......Instruccin 23 Fin si

33

Se evala la expresin lgica si es verdadera se realizan las instrucciones internas al si en este caso las instrucciones (l1, l2, l3,...) y luego se sigue con la instruccin n. Si la expresin lgica es falsa se realizan las instrucciones internas al si no en este caso las instrucciones (21, 22, 23) y luego se sigue con la instruccin n. Es de notar que este tipo de instruccin es excluyente, o sea que si entra por el si, no entra por el si no. Y si entra por el si no, no entra por el si. Instruccin de decisin mltiple Instruccin de repeticin Las instrucciones de repeticin son necesarias cuando en un algoritmo hay que realizar una o muchas tareas varias veces, las instrucciones de repeticin bsicas son: el MIENTRAS y el PARA, cada una de las cuales tiene su propia representacin y su propia manera de controlar el nmero de veces que se repetir el ciclo (instrucciones internas). Estas caractersticas hacen que una instruccin de repeticin sea ms adecuada que la otra en una situacin particular. Mientras La estructura repetitiva mientras es aquella en que las instrucciones internas (bucle )se ejecutan mientras se cumple una determinada condicin. La estructura es la siguiente: Inicio Instruccin 1 mientras expresin_lgica haga .......Instruccin 11 .......Instruccin 12 .......Instruccin 13 fin mientras Instruccin n fin del programa Cuando se ejecuta la instruccin mientras. La primera cosa que sucede es que se evala la condicin (una expresin lgica). Si la expresin es falsa, ninguna accin del bucle( parte interna) se ejecuta y el programa continua en la siguiente instruccin al bucle. Si la expresin es verdadera, entonces se ejecuta el cuerpo del bucle. Despus de lo cual se evala de nuevo la expresin booleana. Este proceso se repite una y otra vez mientras la expresin lgica (condicin) sea verdadera. Dentro del cuerpo del bucle debe existir una instruccin que modifique la expresin de tal manera que en algn momento haga que su valor sea falso. Es decir que garantice la terminacin del ciclo.

34

D.

REPETICION

Las instrucciones de repeticin son necesarias cuando en un algoritmo hay que realizar una o muchas tareas varias veces, las instrucciones de repeticin bsicas son: el MIENTRAS y el PARA, cada una de las cuales tiene su propia representacin y su propia manera de controlar el nmero de veces que se repetir el ciclo (instrucciones internas). Estas caractersticas hacen que una instruccin de repeticin sea ms adecuada que la otra en una situacin particular. Mientras La estructura repetitiva mientras es aquella en que las instrucciones internas (bucle )se ejecutan mientras se cumple una determinada condicin. La estructura es la siguiente: Inicio Instruccin 1 mientras expresin_lgica haga .......Instruccin 11 .......Instruccin 12 .......Instruccin 13 fin mientras Instruccin n fin del programa Cuando se ejecuta la instruccin mientras. La primera cosa que sucede es que se evala la condicin (una expresin lgica). Si la expresin es falsa, ninguna accin del bucle( parte interna) se ejecuta y el programa continua en la siguiente instruccin al bucle. Si la expresin es verdadera, entonces se ejecuta el cuerpo del bucle. Despus de lo cual se evala de nuevo la expresin booleana. Este proceso se repite una y otra vez mientras la expresin lgica (condicin) sea verdadera. Dentro del cuerpo del bucle debe existir una instruccin que modifique la expresin de tal manera que en algn momento haga que su valor sea falso. Es decir que garantice la terminacin del ciclo. ESTRUCTURA DE REPETICIN PARA (FOR) Permite que un grupo de instrucciones se repita cero o mas veces, dependiendo del valor que resulte al evaluar una expresin de tipo lgico. La estructura es la siguiente: Para expresin_inicio, expresin_lgica, expresion_incremento .......Instruccion1 .......Instruccion2

35

......Instruccion3 ......Instruccion4 Fin para Instruccin n La expresin_inicio establece la condicin inicial para la variable de control evaluada en la expresin lgica. La expresion_incremento modifica la variable de control. La expresin_lgica es una expresin formado con la variable de control, y que sirve para controlar el nmero de iteraciones del ciclo el cual termina cuando su valor sea falso.

E.

FUNCIONES

La funcin podra ser definida como un conjunto de instrucciones que permiten procesar las variables para obtener un resultado. Puede que esta definicin resulte un poco vaga si no nos servimos de un ejemplo para ilustrarla. Supongamos que queremos calcular el valor total de un pedido a partir de la simple suma de los precios de cada uno de los artculos. Podramos definir una funcin suma en nuestro lenguaje ficticio: definir funcin suma (art1, art2, art3) suma=art1+art2+art3 imprimir(suma) fin funcin

Este supuesto programa nos permitira calcular la suma de tres elementos e imprimir el resultado en pantalla. Lo interesante de utilizar este tipo de funciones es que ellas nos permiten su utilizacin sistemtica tantas veces como queramos sin necesidad de escribir las instrucciones tantas veces como veces queremos utilizarla. Por supuesto, podemos prescindir de esta declaracin de funcin e introducir una lnea del siguiente tipo: imprimir (art1+art2+art3) Evidentemente, cuanto ms complicada sea la funcin y ms a menudo la utilicemos en nuestros scripts ms til resulta definirlas.

36

XI.A.

UNIDAD III TOPICOS ESPECIFICOSARREGLOS

Un arreglo es una coleccin de datos del mismo tipo, que se almacenan en posiciones consecutivas de memoria y reciben un nombre comn. Para referirse a un determinado elemento de un arreglo se deber utilizar el nombre del arreglo acompaado de un ndice el cual especifica la posicin relativa en que se encuentra el elemento. Los arreglos pueden ser: unidimensionales (vectores). Bidimensionales (matrices, tablas). Multidimensionales(tres dimensiones o ms). ARRAY UNIDIMENSIONALES O VECTORES Los pasos para la utilizacin de un vector son; 1 Declarar el vector: consiste en establecer el nombre, el tamao y el tipo de los datos que se van a almacenar en el arreglo ejemplo: hay que diferenciar dos trminos : tamao del vector (T): es el numero mximo de elementos que puede contener el vector. Numero de elementos(N): que indica cuantos elementos hay almacenados en el arreglo en determinado momento. Nota N largo ) { return false;

39

} for (int i=0; i ~ Y AND (bit a bit) O OR INCLUSIVA O OR EXCLUSIVA ROTACION A LA IZQUIER

EJEMPLO ORDEN DE EVAL. a&b a|b a^b a > b COMPLEMENTO A UNO ~a

42

XII. CONCLUCIONESTodo este programa de la materia de programacin se debe cumplir para el perfeccionamiento del manejo de los comandos para la fluidez necesaria a la hora de programar en el software de programacin llamado Microsoft Visual Basic y poder realizar los programas de forma adecuada poder hacer una programacin de alto nivel para un mejor desarrollo en la empresa y mejores oportunidades de crecimiento dentro del campo laboral ya que la programacin ya se esta utilizando mucho en la industria y dentro de poco puede ser un requisito tener conocimientos de programacin para el ingreso a un trabajo. Por eso pienso que es muy importante esta materia.

XIII. BIBLIOGRAFIA

43