segundo_media_infor.docx

323
UNIDAD EDUCATIVA SAN CAYETANO DE CHONE“Educación de calidad para un mundo competitivo INDICE SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED INTRODUCCION .................................................... ................................................................ 2 REQUISITOS ...................................................... ................................................................. .... 3 EVLUACION INICIAL ......................................................... .................................................. 4 ORIENTACIONES GENERALES ....................................................... .................................. 6 UNIDAD 1 INFORMÁTICA ....................................................... 7 INTRODUCCIÓN ................................................................................................... ...... 7 HISTORIA DE LA COMPUTADORA ..................................................... ............................. 7 El ábaco ........................................................ .............................................................. ........ 7 Pascalina .................................................... .............................................................. .......... 7 Máquina deferencial .................................................. ....................................................... 7 Telar ........................................................ .............................................................. ............. 7 MarK I ............................................................

Transcript of segundo_media_infor.docx

Page 1: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE

CHONE” “Educación de calidad para un mundo competitivo

INDICE SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED INTRODUCCION .................................................................................................................... 2 REQUISITOS ........................................................................................................................... 3 EVLUACION INICIAL ........................................................................................................... 4 ORIENTACIONES GENERALES ......................................................................................... 6

UNIDAD 1 INFORMÁTICA ....................................................... 7 INTRODUCCIÓN ......................................................................................................... 7 HISTORIA DE LA COMPUTADORA .................................................................................. 7

El ábaco .............................................................................................................................. 7 Pascalina ............................................................................................................................ 7 Máquina deferencial ......................................................................................................... 7 Telar ................................................................................................................................... 7 MarK I ............................................................................................................................... 8 Eniac ................................................................................................................................... 8 Edvac .................................................................................................................................. 9 Taller .................................................................................................................................. 9

GENERACION DE COMPUTADORAS ............................................................................... 10 Primera generacion ........................................................................................................... 10 Segunda generación .......................................................................................................... 11 Tercera generación............................................................................................................ 12 Cuarta generación ............................................................................................................. 13 Quinta generación ............................................................................................................. 14 Taller .................................................................................................................................. 14

COMPUTADORA .................................................................................................................... 15 Tipos de computadora ...................................................................................................... 15

DEFINICIÓN Y ORIGEN DE INFORMÁTICA .................................................................. 16 SITEMAS INFORMÁTICOS ............................................................................................... 17 UNIDADES DE MEDIDA ....................................................................................................... 17 DATOS E INFORMACIÓN .................................................................................................... 18 PARTES INTERNAS DEL COMPUTADOR ....................................................................... 20

Mainboard ......................................................................................................................... 20 El procesador ..................................................................................................................... 23 Memoria RAM .................................................................................................................. 25 Memoria Cache ................................................................................................................. 25 PerIfericos .......................................................................................................................... 26

UNIDAD 2 SISTEMAS OPERATIVOS ..................................... 27 ¿Qué es el SO? ................................................................................................................... 27 Historia del SO .................................................................................................................. 27 Concepto SO ...................................................................................................................... 28 Instalación del SO ............................................................................................................. 29 Instalación del SO compilado ........................................................................................... 33 SISTEMA OPERATIVO MONOUSUARIO MS-DOS.........................................................39

Page 2: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE

CHONE” “Educación de calidad para un mundo competitivo

Historia .............................................................................................................................. 39 Panorama ........................................................................................................................... 41 Ingreso al MS-DOS ........................................................................................................... 42 Caracteres de interacción ................................................................................................. 44 Tipos de archivos ............................................................................................................... 44 Comandos del MS-DOS .................................................................................................... 45

Comandos internos ............................................................................................... 45 Comandos externos .............................................................................................. 46

SISTEMAS OPERATIVOS MULTIUSUARIO UNIX ......................................................... 47 Historia ............................................................................................................................... 47 El estándar de UNIX ......................................................................................................... 49 Comandos principales ....................................................................................................... 49

UNIDAD 3ELECTRÓNICA BÁSICA ....................................... 53 Simbolos y componentes ................................................................................................... 53 Herramientas fundamentales ........................................................................................... 55 Códigos de colores de las resistencias .............................................................................. 55 Soldadura eléctrica............................................................................................................ 56

Como soldar .......................................................................................................... 56 Procedimiento ....................................................................................................... 58

Ejemplos de circuitos ........................................................................................................ 59

Unidad 4 MANTENIMIENTO DE COMPUTADORAS ........... 66 Recomendaciones de seguridad ....................................................................................... 66

MANTENIMIENTO PRECENTIVO Y CORRECTIVO ..................................................... 66 HERRAMIENTAS ................................................................................................................... 67 PASOS PARA UN BUEN MANTENIMIENTO .................................................................... 68 LIMPIEZA DEL MONITOR .................................................................................................. 79 QUE OTRAS COSAS DEBO SABER .................................................................................... 80 ACTITUDES Y VALORES ..................................................................................................... 81

UNIDAD 5 REDES INFORMÁTICAS ...................................... 82 NIVELES DE COMPONENTE .............................................................................................. 82 TIPOS DE REDES.................................................................................................................... 82

Redes LAN ......................................................................................................................... 82 Redes WAN ........................................................................................................................ 83

TOPOLOGÍA DE REDES ....................................................................................................... 83 Tipos de topologías ........................................................................................................... 84

PROTOCOLO CLIENTE SERVIDOR ................................................................................. 85 MEDIOS DE TRANSMISIÓN ................................................................................................ 86 PASOS PARA PONCHAR UN CABLE UTP ........................................................................ 89 ESTRATEGIAS DE ENSEÑANZA Y APRENDISAJE ....................................................... 95 RECURSOS ............................................................................................................................... 96 EVALUACION FINAL ............................................................................................................ 97

PROGRAMACIÓN EN LENGUAJES ESTRUCTURADOS INTRODUCCIÓN .................................................................................................................... 101 REQUISITOS ...........................................................................................................................102EVALUACIÓN INICIAL ........................................................................................................ 103

Page 3: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE

CHONE” “Educación de calidad para un mundo competitivo

ORIENTACIONES GENERALES ......................................................................................... 104 Unidad 6 JAVA ............................................................................. 106 PROGRAMACIÓN ORIENTAD A OBJETOS .................................................................... 106

Programacion convencional ............................................................................................. 106 Objetos ............................................................................................................................... 106

INTRODUCCIÓN A JAVA ..................................................................................................... 108 Historia de Java ................................................................................................................. 108 ¿Cómo realizar un programa en Java? ........................................................................... 110 Tipos de datos .................................................................................................................... 110 Elementos de un programa en Java ................................................................................ 112 Usu de variables ................................................................................................................ 114 Operadores, comentarios y literales ............................................................................... 115

ENTORNO GRÁFICO ............................................................................................................ 118 Paquete javax.swing.*:...................................................................................................... 118 Leer datos ........................................................................................................................... 119

APPLET’S ................................................................................................................................. 120 Uso de Applet ..................................................................................................................... 120 ¿Qué es un Applet? .......................................................................................................... 120 Características de los Applet’s ......................................................................................... 121 Métodos de los Applet’s .................................................................................................... 121 Métodos para dibujar en Applet’s ................................................................................... 122 Colores en los Applet’s...................................................................................................... 125

CADENA DE CARACTERES ................................................................................................ 125 Variables ............................................................................................................................ 125 Los objetos ......................................................................................................................... 126

MÉTODOS MATEMÁTICOS ................................................................................................ 128 EXCEPCIONES........................................................................................................................ 130 SENTENCIAS DE CONTROL ............................................................................................... 131

Estructuras selectivas........................................................................................................ 131 Estructuras repetitivas...................................................................................................... 136

ARREGLOS EN JAVA ............................................................................................................ 140 Arreglos unidimensionales .............................................................................................. 140 Arreglos bidimensionales.................................................................................................. 140 Características de los arreglos ......................................................................................... 142 Clases en java .................................................................................................................... 143 Constructures ................................................................................................................... 146

UNIDAD 7 JAVA SCRIPT .......................................................... 151 ESTRUCTURA DE UN FICHERO HTML .......................................................................... 152 SINTAXIS BÁSICA ................................................................................................................. 153 VARIABLES ............................................................................................................................. 155 TIPOS DE DATOS ................................................................................................................... 156

Tipo de dato string ............................................................................................................ 157 Tipo de fato numbre.......................................................................................................... 157

CONTADORES ........................................................................................................................ 158 CONVERSIÓN ENTRE TIPOS DE DATOS ........................................................................159

Page 4: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE

CHONE” “Educación de calidad para un mundo competitivo

Conversión implicita ......................................................................................................... 159Conversión explicita .......................................................................................................... 159

OPERADORES ......................................................................................................................... 161 Operadores lógicos y relacionales .................................................................................... 161

ESTRUCTURAS DE CONTROL ........................................................................................... 161 Estructura if/else ............................................................................................................... 161 Estructuras while .............................................................................................................. 163 Contadores ......................................................................................................................... 163 Estructura for .................................................................................................................... 165 Estructura switch – case ................................................................................................... 168 Estructura Do – while ....................................................................................................... 170

OBJETO MATH ....................................................................................................................... 171 NÚMEROS ALEATORIOS .................................................................................................... 172 FUNCIONES ............................................................................................................................. 173

Funciones sin retorno ........................................................................................................ 173 Funciones con retorno....................................................................................................... 175

MATRICES Y ARRAYS ......................................................................................................... 176 UNIDAD 8 PHP ............................................................................................. 181

INTRODUCCIÓN .................................................................................................................... 181 VARIABLES ............................................................................................................................. 181 CONVERTIR TIPOS .............................................................................................................. 182

Variables características ................................................................................................... 182 CONSTANTES ......................................................................................................................... 182 OPERADORES ......................................................................................................................... 183 ESTRUCTURAS DE CONTROL ........................................................................................... 185

Estructura if ....................................................................................................................... 185 Estructura switch .............................................................................................................. 186 Bucle for ............................................................................................................................. 186 Bucle while ......................................................................................................................... 186 Bucle Do while ................................................................................................................... 187

FUNCIONES ............................................................................................................................. 187 MATRICES ............................................................................................................................... 188

Recorrido de una matriz ................................................................................................... 188 Inserción de elementos ..................................................................................................... 189 Ordenación de matrices .................................................................................................... 190

CADENA DE CARACTERES ................................................................................................ 190 Acceso al contenido ........................................................................................................... 193 Apoyo a HTML ................................................................................................................. 193

CLASES ..................................................................................................................................... 194 FECHAS .................................................................................................................................... 197

Formato de fechas ............................................................................................................. 198 Estableciendo horas y fechas ............................................................................................ 200 Validación de fechas .......................................................................................................... 201

ENTRADA Y SALIDA ............................................................................................................. 201 Abrir un fichero ................................................................................................................ 201 Escritura en ficheros .........................................................................................................202Acceso directo a ficheros .................................................................................................. 202Operaciones con ficheros .................................................................................................. 203

Page 5: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE

CHONE” “Educación de calidad para un mundo competitivo

UNIDAD 9 LENGUAJE SQL Y MYSQL ................................... 204 SQL ............................................................................................................................................ 204

Creación y modificación de tablas ................................................................................... 204 Eliminar tablas .................................................................................................................. 205 Modificar tablas ................................................................................................................ 206

MANIPULACION DE DATOS EN SQL ............................................................................... 206 Inserción de datos .............................................................................................................. 206 Consulta de datos .............................................................................................................. 206 Eliminación de datos ......................................................................................................... 206

CONEXIÓN CON MYSQL ..................................................................................................... 207 SESIONES ................................................................................................................................. 208 FORMULARIOS CON PHP ................................................................................................... 210

ESTRATEGIAS DE ENSEÑANZA Y APRENDIZAJE ............................................................ 215 RECURSOS .................................................................................................................................... 216 EVALUACION FINAL ................................................................................................................. 217 EVALUACION GENERAL DEL FOLLETO ............................................................................ 224 BIBLIOGRAFIA............................................................................................................................ 228

Page 6: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

SISTEMAS INFORMÁTICOS

MULTIUSUARIOS Y EN RED

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 1

Page 7: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo Conocer los avances tecnológicos y características de las computadoras tanto en software

como en hardware para entender su funcionamiento y clasificación de las mismas realizando un estudio desde la creación de las primeras máquinas hasta la actualidad.

INTRODUCCIÓN. Desde hace ya bastante tiempo, el hombre ha tenido la necesidad de tratar y transmitir la información de una forma continuada. Para conseguir los objetivos deseados, se han utilizado diferentes técnicas y medios. Teniendo en cuenta esta necesidad, poco a poco se han creado herramientas que han ido facilitando una solución a estas necesidades, hasta que hace algunos años se empezaron a diseñar y construir herramientas complejas para el tratamiento y la transmisión de información. La historia de la informática personal comenzó a finales de la década de los setenta cuando la compañía norteamericana International Business Machine (IBM), decidió dar nuevos aires a la informática empresarial, hasta entonces prácticamente limitada a grandes ordenadores, extremadamente costosos y que requerían unas condiciones de funcionamiento y control extremos. Lo primero que hizo IBM fue contactar con una empresa capaz de diseñar y desarrollar un microprocesador adaptado al objetivo que esta tenia. La empresa contactada fue la norteamericana Intel que se comprometió a desarrollar el primer procesador de una serie que, luego, llegaría a convertirse en la familia de procesadores más conocida en el mundo de la informática. El procesador 8088 de Intel se transformó en el cerebro de los nuevos productos de IBM, sus famosos PC. Es el ordenador la herramienta que actualmente nos permite el tratamiento automático de la información, facilitándonos en gran medida su organización, proceso, transmisión y almacenamiento. Un ordenador, computador o computadora es una máquina capaz de aceptar unos datos de entrada, efectuar con ellos operaciones lógicas y aritméticas, y proporcionar la información resultante a través de un medio de salida; todo ello sin intervención de un operador humano y bajo el control de un programa de instrucciones previamente almacenado en el propio computador. Informática es una palabra de origen francés formada por la contracción de los vocablos Información y automática. La Real Academia de la Lengua Española define la informática como ―el conjunto de conocimientos científicos y técnicas que hacen posible el tratamiento automático de la información por medio de ordenadores. Se puede decir que Informática o Ciencia e Ingeniería de os computadores es el campo de conocimiento que abarca todos los aspectos del diseño y uso de los computadores. Como disciplina utiliza los métodos y procedimientos de los desarrollos teóricos, experimentales y de diseños, por lo que es tanto una ciencia como una ingeniería. La disciplina de informática es el cuerpo de conocimiento que trata del diseño, análisis, implementación, eficiencia, y aplicación de procesos que transforman la información. El ordenador se puede definir como una máquina compuesta de elementos físicos, en su mayoría de origen electrónico, capaz de realizar una gran variedad de trabajos a gran velocidad y con gran precisión. El conjunto de órdenes o instrucciones que se introducen en un ordenador para realizar un proceso determinado se denomina programa. El conjunto de varios programas se denomina aplicación informática. Instrucciones, programas y aplicaciones informáticas, en general, junto con los datos que manejan estos quedan definidos bajo el término de software. Por otro lado, hay que considerar que para que estos programas funcionen y puedan genera la información que el usuario precisa, se necesitan determinados componentes físicos. Estos se agrupan bajo la denominación de hardware. El conjunto de componentes hardware constituyen un sistema informático. Por último, el Firmware es la parte intangible de componentes de hardware. Un ejemplo es el software con el que están programadas las memorias ROM, el software de configuración de dispositivos de comunicaciones, como routers o switches.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 2

Page 8: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

PREREQUISITOS

Definiciones básicas como: • Computadora • Software • Hardware • Computación

Manejo de Microsoft Office

• Word • Excel • Power Point • Access

EVALUACIÓN INICIAL

A) Elija la respuesta correcta 1. La computadora es:

a. Máquina electrónica rápida y exacta que es capaz de aceptar datos a través de un medio de entrada, procesarlos automáticamente bajo el control de un programa previamente almacenado, y proporcionar la información resultante a un medio de salida.

b. Programas que realizan un determinado trabajo en un tiempo indicado. c. Maquina que son capaces de tomar deciciones por si mismas

B) Conteste.

1. ¿Cuál es la principal diferencia entre hardware y software? __________________________________________________________________ __________________________________________________________________

__________________________________________________________________

2. ¿Qué trabajos podemos realizar en Excel? ______________________________________________________________________________________________________________________________________________________________________________________________________

C) Realizar. 1. Realizar una factura en Ecxel aplicando los cálculos básicos mas el IVA y un

descuento al sub total según la siguiente tabla

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 3

Page 9: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

Sub total $ Descuento %

0 a 50 0

51 a 100 10

100 a 200 15

200 o mas 20

D) Grafique y ponga el concepto

1. Dispositivos de entrada

2. Dispositivos de salida

3. Dispositivos de almacenamiento

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 4

Page 10: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

ORIENTACIONES GENERALES

El Modulo de sistemas informáticos multiusuario y en red el módulo revisaremos temas como historia del computador en el cual trabajaremos con investigaciones sobre los temas revisados en la hora clase.

En generaciones de Computadoras formaremos grupos de trabajo para realizar exposiciones de los temas entregados. Definición y orígenes de términos informáticos. Analizaremos los conceptos relevantes al área de informática y realizaremos cálculos matemáticos para las transformaciones de las medidas de almacenamiento. En el ámbito de hardware estudiaremos las partes internas y externas del computador miestras que en el ámbito de software revisaremos manejo, uso e instalacion de los sistemas operativos tanto en software libre como privado. Se estudiara las principales fallas de un computador y de esta manera podremos poner en practica el mantenimiento preventivo o correctivo según sea el caso Veremos la aplicación de las redes infomáticas en el campo laboral y asi seremos capaces de implementar redes lan. Los estudiantes deberán aprobar el modulo con un promedio igual o mayor a siete caso contrario deberá rendir el supletorio correspondiente.

UNIDAD 1 INFORMÁTICA INTRODUCCIÓN

HISTORIA DE LA COMPUTACIÓN

El ábaco

Uno de los primeros dispositivos mecánicos para contar fue el ábaco, cuya historia se remonta a las antiguas civilizaciones griega y romana. Este dispositivo es muy sencillo, consta de cuentas ensartadas en varillas que a su vez están montadas en un marco rectangular. Al

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 5

Page 11: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo desplazar las cuentas sobre varillas, sus posiciones representan valores almacenados, y es mediante dichas posiciones que este representa y almacena datos. A este dispositivo no se le puede llamar computadora por carecer del elemento fundamental llamado programa.

Pascalina

Otro de los inventos mecánicos fue la Pascalina inventada por Blaise Pascal (1623 - 1662) de Francia y la de Gottfried Wilhelm von Leibniz (1646 - 1716) de Alemania. Con estas máquinas, los datos se representaban mediante las posiciones de los engranajes, y los datos se introducían manualmente estableciendo dichas posiciones finales de las ruedas, de manera similar a como leemos los números en el cuentakilómetros de un automóvil.

Maquina diferencial

La primera máquina analítica fue creada por Charles Babbage, profesor matemático de la Universidad de Cambridge en el siglo XIX. La idea que tuvo Charles Babbage sobre un computador nació debido a que la elaboración de las tablas matemáticas era un proceso tedioso y propenso a errores. En 1823 el gobierno Británico lo apoyo para crear el proyecto de una máquina de diferencias, un dispositivo mecánico para efectuar sumas repetidas.

El primero de estos dispositivos fue concebido en 1786 por Johann Helfrich von Müller pero nunca fue construido.

Telar

Mientras tanto Charles Jacquard (francés), fabricante de tejidos, había creado un telar que podía reproducir automáticamente patrones de tejidos leyendo la información codificada en patrones de agujeros perforados en tarjetas de papel rígido. Al enterarse de este método Babbage abandonó la máquina de diferencias y se dedicó al proyecto de la máquina analítica que se pudiera programar con tarjetas perforadas para efectuar cualquier cálculo con una precisión de 20 dígitos. La tecnología de la época no bastaba para hacer realidad sus ideas.

El mundo no estaba listo, y no lo estaría por cien años más.

Mark I

En 1944 se construyó en la Universidad de Harvard, la Mark I, diseñada por un equipo encabezado por Howard H. Aiken. Esta máquina no está considerada como computadora electrónica debido a que no era de propósito general y su funcionamiento estaba basado en dispositivos electromecánicos llamados relevadores.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 6

Page 12: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

ENIAC

En 1947 se construyó en la Universidad de Pennsylvania la ENIAC (Electronic Numerical Integrator And Calculator) que fue la primera computadora electrónica, el equipo de diseño lo encabezaron los ingenieros John Mauchly y John Eckert. Esta máquina ocupaba todo un sótano de la Universidad, tenía más de 18 000 tubos de vacío, consumía 200 KW de energía eléctrica y requería todo un sistema de aire acondicionado, pero tenía la capacidad de realizar cinco mil operaciones aritméticas en un segundo.

El proyecto, auspiciado por el departamento de Defensa de los Estados Unidos, culminó dos años después, cuando se integró a ese equipo el ingeniero y matemático húngaro John von Neumann (1903 - 1957). Las ideas de von Neumann resultaron tan fundamentales para su desarrollo posterior, que es considerado el padre de las computadoras.

EDVAC

La EDVAC (Electronic Discrete Variable Automatic Computer) fue diseñada por este nuevo equipo. Tenía aproximadamente cuatro mil bulbos y usaba un tipo de memoria basado en tubos llenos de mercurio por donde circulaban señales eléctricas sujetas a retardos.

La idea fundamental de von Neumann fue: permitir que en la memoria coexistan datos con instrucciones, para que entonces la computadora pueda ser programada en un

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 7

Page 13: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo lenguaje, y no por medio de alambres que eléctricamente interconectaban varias secciones de control, como en la ENIAC.

Todo este desarrollo de las computadoras suele divisarse por generaciones y el criterio que se determinó para determinar el cambio de generación no está muy bien definido, pero resulta aparente que deben cumplirse al menos los siguientes requisitos:

TALLER EN CLASE

Realizar un organizador grafico el cual resuma las principales características de cada una de las maquinas anteriores.

GENERACIONES DE COMPUTADORAS Primera Generación

En esta generación había un gran desconocimiento de las capacidades de las computadoras, puesto que se realizó un estudio en esta época que determinó que con veinte computadoras se saturaría el mercado de los Estados Unidos en el campo de procesamiento de datos.

Esta generación abarco la década de los cincuenta. Y se conoce como la primera generación. Estas máquinas tenían las siguientes características:

En 1951 aparece la UNIVAC (NIVersAl Computer), fue la primera computadora comercial, que disponía de mil palabras de memoria central y podían leer cintas magnéticas, se utilizó para procesar el censo de 1950 en los Estados Unidos.

En las dos primeras generaciones, las unidades de entrada utilizaban tarjetas perforadas, retomadas por Herman Hollerith (1860 - 1929), quien además fundó una compañía que con el paso del tiempo se conocería como IBM (International

Bussines Machines).

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 8

Forma en que el ser humano se comunica con ellas.

La forma en que están construidas.

s).de miles de dólareEn esta generación las máquinas son grandes y costosas (de un costo aproximado de ciento

Eran programadas en lenguaje de máquina.

Estas máquinas estaban construidas por medio de tubos de vacío.

Page 14: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

Después se desarrolló por IBM la IBM 701 de la cual se entregaron 18 unidades entre 1953 y 1957.

Posteriormente, la compañía Remington Rand fabricó el modelo 1103, que competía con la 701 en el campo científico, por lo que la IBM desarrollo la 702, la cual presentó problemas en memoria, debido a esto no duró en el mercado.

La computadora más exitosa de la primera

generación fue la IBM 650, de la cual se produjeron varios cientos. Esta computadora que usaba un esquema de memoria secundaria llamado tambor magnético, que es el antecesor de los discos actuales.

Segunda Generación

Cerca de la década de 1960, las computadoras seguían evolucionando, se reducía su tamaño y crecía su capacidad de procesamiento. También en esta época se empezó a definir la forma de comunicarse con las computadoras, que recibía el nombre de programación de sistemas.

Las características de la segunda generación son las siguientes:

Algunas de estas computadoras se programaban con cintas perforadas y otras más por medio de cableado en un tablero. El usuario final de la información no tenía contacto directo con las computadoras. Esta situación en un principio se produjo en las primeras computadoras personales, pues se requería saberlas ―programar‖ (alimentarle instrucciones) para obtener resultados; por lo tanto su uso estaba limitado a aquellos audaces pioneros que gustaran de pasar un buen número de horas escribiendo instrucciones, ―corriendo‖ el programa resultante y verificando y corrigiendo los errores o bugs que aparecieran. Además, para no perder el ―programa‖ resultante había que ―guardarlo‖ (almacenarlo) en una grabadora de astte, pues en esa época no había discos flexibles y mucho

menos discos duros para las PC; este procedimiento podía tomar de 10 a 45 minutos, según el programa. El panorama se modificó totalmente con la aparición de las computadoras personales con mejores circuitos, más memoria, unidades de disco flexible y sobre todo con la aparición de programas de aplicación general en donde el usuario compra el programa y se pone a trabajar.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 9

Se reducen de tamaño y son de menor costo.

Se programan en nuevos lenguajes llamados lenguajes de alto nivel.

nsistores. Están construidas con circuitos de tra

Primer transistor

Page 15: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo Aparecen los programas procesadores de palabras como el célebre Word Star, la impresionante hoja de cálculo (spreadsheet) Visicalc y otros más que de la noche a la mañana cambian la imagen de la PC. El software empieza a tratar de alcanzar el paso del hardware. Pero aquí aparece un nuevo elemento: el usuario.

El usuario de las computadoras va cambiando y evolucionando con el tiempo. De estar totalmente desconectado a ellas en las máquinas grandes pasa la PC a ser pieza clave en el diseño tanto del hardware como del software. Aparece el concepto de human interface que es la relación entre el usuario y su computadora. Se habla entonces de hardware ergonómico (adaptado a las dimensiones humanas para reducir el cansancio), diseños de pantallas antirreflejos y teclados que descansen la muñeca. Con respecto al software se inicia una verdadera carrera para encontrar la manera en que el usuario pase menos tiempo capacitándose y entrenándose y más tiempo produciendo. Se ponen al alcance programas con menús (listas de opciones) que orientan en todo momento al usuario (con el consiguiente aburrimiento de los usuarios expertos); otros programas ofrecen toda una artillería de teclas de control y teclas de funciones (atajos) para efectuar toda suerte de efectos en el trabajo (con la consiguiente desorientación de los usuarios novatos). Se ofrecen un sinnúmero de cursos prometiendo que en pocas semanas hacen de cualquier persona un experto en los programas comerciales. Pero el problema ―constante‖ es que ninguna solución para el uso de los programas es ―constante‖. Cada nuevo programa requiere aprender nuevos controles, nuevos trucos, nuevos menús. Se empieza a sentir que la relación usuario-PC no está acorde con los desarrollos del equipo y de la potencia de los programas. Hace falta una relación amistosa entre el usuario y la PC.

Las computadoras de esta generación fueron: la Philco 212 (esta compañía se retiró del mercado en 1964) y la UNIVAC M460, la Control Data Corporation modelo 1604, seguida por la serie 3000, la IBM mejoró la 709 y sacó al mercado la 7090, la National Cash Register empezó a producir máquinas para proceso de datos de tipo comercial, introdujo el modelo NCR 315.

La Radio Corporation of América introdujo el modelo 501, que manejaba el lenguaje COBOL, para procesos administrativos y comerciales. Después salió al mercado la RCA 601.

Tercera generación

Con los progresos de la electrónica y los avances de comunicación con las computadoras en la década de los 1960, surge la tercera generación de las computadoras. Se inaugura con la IBM 360 en abril de 1964.3

Las características de esta generación fueron las siguientes:

• Su fabricación electrónica está basada en circuitos integrados.

• Su manejo es por medio de los lenguajes de control de los sistemas

operativos.

La IBM produce la serie 360 con los modelos 20, 22, 30, 40, 50, 65, 67, 75, 85, 90, 195 que utilizaban técnicas especiales del procesador, unidades de cinta de nueve canales, paquetes de discos magnéticos y otras características que ahora son estándares (no todos los modelos usaban estas técnicas, sino que estaba dividido por aplicaciones).

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 10

Page 16: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

El sistema operativo de la serie 360, se llamó OS que contaba con varias configuraciones, incluía un conjunto de técnicas de manejo

de memoria y del procesador que pronto se convirtieron en estándares.

En 1964 CDC introdujo la serie 6000 con la computadora 6600 que se consideró durante algunos años como la más rápida.

En la década de 1970, la IBM produce la serie 370 (modelos 115, 125, 135, 145, 158, 168). UNIVAC compite son los modelos 1108 y 1110, máquinas en gran escala; mientras que CDC produce su serie 7000 con el modelo 7600. Estas computadoras se caracterizan por ser muy potentes y veloces. A finales de esta década la IBM de su serie 370 produce los modelos 3031, 3033, 4341. Burroughs con su serie 6000 produce los modelos 6500 y 6700 de avanzado diseño, que se reemplazaron por su serie 7000. Honey - Well participa con su computadora DPS con varios modelos.

A mediados de la década de 1970, aparecen en el mercado las computadoras de tamaño mediano, o minicomputadoras que no son tan costosas como las grandes (llamadas también como mainframes que significa también, gran sistema), pero disponen de gran capacidad de procesamiento. Algunas minicomputadoras fueron las siguientes: la PDP - 8 y la PDP - 11 de Digital Equipment Corporation, la VAX (Virtual Address eXtended) de la misma compañía, los modelos NOVA y ECLIPSE de Data General, la serie 3000 y 9000 de Hewlett - Packard con varios modelos el 36 y el 34, la Wang y Honey - Well -Bull, Siemens de origen alemán, la ICL fabricada en Inglaterra. En la Unión Soviética se utilizó la US (Sistema Unificado, Ryad) que ha pasado por varias generaciones.

Cuarta Generación

Aquí aparecen los microprocesadores que es un gran adelanto de la microelectrónica, son circuitos integrados de alta densidad y con una velocidad impresionante. Las microcomputadoras con base en estos circuitos son extremadamente pequeñas y baratas, por lo que su uso se extiende al mercado industrial. Aquí nacen las computadoras personales que han adquirido proporciones enormes y que han influido en la sociedad en general sobre la llamada “revolución informática”.

En 1976 Steve Wozniak y Steve Jobs inventan la primera microcomputadora de uso masivo y más tarde forman la compañía conocida como la Apple que fue la segunda compañía más grande del mundo, antecedida tan solo por IBM; y está por su parte es aún de las cinco compañías más grandes del mundo.

En 1981 se vendieron 800 00 computadoras personales, al siguiente subió a 1 400 000. Entre 1984 y 1987 se vendieron alrededor de 60 millones de computadoras personales, por lo que no queda duda que su impacto y penetración han sido enormes.

Con el surgimiento de las computadoras personales, el software y los sistemas que con ellas de manejan han tenido un considerable avance, porque han hecho más interactiva la comunicación con el usuario. Surgen otras aplicaciones como los procesadores de palabra, las hojas electrónicas de cálculo, paquetes gráficos, etc. También las industrias del Software de las computadoras personales crece con gran rapidez, Gary Kildall y William Gates se dedicaron durante años a la creación de sistemas operativos y métodos para lograr una utilización sencilla de las microcomputadoras (son los creadores de CP/M y de los productos de Microsoft).

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 11

Page 17: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo No todo son microcomputadoras, por supuesto, las minicomputadoras y los grandes sistemas continúan en desarrollo. De hecho las máquinas pequeñas rebasaban por mucho la capacidad de los grandes sistemas de 10 o 15 años antes, que requerían de instalaciones costosas y especiales, pero sería equivocado suponer que las grandes computadoras han desaparecido; por el contrario, su presencia era ya ineludible en prácticamente todas las esferas de control gubernamental, militar y de la gran industria. Las enormes computadoras de las series CDC, CRAY, Hitachi o IBM por ejemplo, eran capaces de atender a varios cientos de millones de operaciones por segundo. Quinta Generación

En vista de la acelerada marcha de la microelectrónica, la sociedad industrial se ha dado a la tarea de poner también a esa altura el desarrollo del software y los sistemas con que se manejan las computadoras. Surge la competencia internacional por el dominio del mercado de la computación, en la que se perfilan dos líderes que, sin embargo, no han podido alcanzar el nivel que se desea: la capacidad de comunicarse con la computadora en un lenguaje más cotidiano y no a través de códigos o lenguajes de control especializados.

Japón lanzó en 1983 el llamado ―programa de la quinta generación de computadoras‖, con los objetivos explícitos de producir máquinas con innovaciones reales en los criterios mencionados. Y en los Estados Unidos ya está en actividad un programa en desarrollo que persigue objetivos semejantes, que pueden resumirse de la siguiente manera:

El futuro previsible de la computación es muy interesante, y se puede esperar que esta ciencia siga siendo objeto de atención prioritaria de gobiernos y de la sociedad en conjunto.

TALLER EN CLASE

Conteste:

1. ¿Qué determina el cambio de generación en las computadoras?

2. ¿Site a los grandes inventores de la computación y por qué?

3. ¿Cuál de todas las generaciones cree que es la mas importante y por qué?

COMPUTADORA Máquina capaz de efectuar una secuencia de operaciones mediante un programa, de tal manera, que se realice un procesamiento sobre un conjunto de datos de entrada, obteniéndose otro conjunto de datos de salida.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 12

Manejo de lenguaje natural y sistemas de inteligencia artificial.

de gran velocidad. Procesamiento en paralelo mediante arquitecturas y diseños especiales y circuitos

Page 18: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo Tipos de computadoras

Se clasifican de acuerdo al principio de operación de Analógicas y Digitales.

Computadoras digitales

Son computadoras que operan contando números y haciendo comparaciones lógicas entre factores que tienen valores numéricos.

Características de las Computadoras Digitales:

• Su funcionamiento está basado en el conteo de los valores que le son introducidos. • Este tipo de computadora debe ser programada antes de ser utilizada para algún fin específico. • Son máquinas de propósito general; dado un programa, ellas pueden resolver virtualmente todo

tipo de problemas. • Son precisas, proveen exactamente la respuesta correcta a algún problema específico. • Estas computadoras tienen una gran memoria interna, donde pueden ser introducidos millones de

caracteres. • Estas computadoras son las más utilizadas. En la actualidad el 95% de los computadores utilizados

son digitales dado a su gran utilidad a nivel comercial, científico y educativo.

Computadoras analógicas

Las computadoras analógicas no computan directamente, sino que perciben constantemente valores, señales o magnitudes físicas variadas.

Características de las Computadoras Analógicas

• Son las computadoras más rápidas. Todas las computadoras son rápidas pero la naturaleza directa de los circuitos que la componen las hacen más rápidas.

• La programación en estas computadoras no es necesaria; las relaciones de cálculo son construidas y forman parte de éstas.

• Son máquinas de propósitos específicos. • Dan respuestas aproximadas, ya que están diseñadas para representar electrónicamente algunos

conjuntos de daros del mundo real, por lo que sus resultados son cercanos a la realidad.

Estos se utilizan generalmente para supervisar las condiciones del mundo real, tales como Viento, Temperatura, Sonido, Movimiento.

DEFINICIÓN Y ORIGEN DEL TÉRMINO INFORMÁTICA

La informática es una ciencia con una historia tan reciente como densa. Hace poco más de medio siglo que se crearon los fundamentos teóricos para la construcción de los ordenadores electrónicos.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 13

Page 19: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

La informática nace de la idea de ayudar al hombre en aquellos trabajos rutinarios y repetitivos, generalmente de cálculo y de gestión, donde es frecuente la repetición de tareas.

La idea es que una máquina pueda realizarlos mejor, aunque siempre bajo la supervisión del hombre. El término informática se creó en Francia en el año 1962 bajo la denominación de INFORMATIQUE y procede de la contracción de las palabras INFORmation autoMATIQUE; posteriormente fue reconocido por el resto de países, siendo adoptado en España en el año 68 bajo el nombre de INFORMÁTICA que, como puede deducirse fácilmente viene de la contracción de las palabras INFORmación autoMATICA. En los países anglosajones se conoce con el nombre de COMPUTER SCIENCE. La informática se puede definir de muchas formas y de hecho aparece en diversas publicaciones con una gran variedad de definiciones, si bien ellas giran en torno a la misma idea. Nosotros vamos a utilizar la definición más extendida:

Informática: Es la ciencia que estudia el tratamiento automático y racional de la información.

Un computador es capaz de realizar diferentes operaciones sobre la información: lectura, almacenamiento, cálculos aritméticos, comparaciones lógicas y escritura a una gran velocidad, además de poder enviar y recibir datos a distancia, tratar los problemas en tiempo real, etc. Lo que le convierte en una herramienta muy valiosa. Para realizar cualquier tarea, el computador u ordenador deberá recuperar la información, empezando por el programa y continuando con los datos que deba manejar, una vez procesada la información, mostrará los resultados o información de salida.

SISTEMAS INFORMÁTICOS

UNIDADES DE MEDIA DE LA INFORMÁTICA Usamos los metros para medir las longitudes. Usamos los litros para medir capacidades. Cuando necesitamos medir peso, utilizamos los gramos. Y el tiempo, lo medimos en horas, minutos y segundos. Para medir la capacidad de almacenamiento de información, utilizamos los Bytes. Dentro de la computadora la información se almacena y se transmite en base a un código que sólo usa dos símbolos, el 0 y el 1, y a este código se le denomina código binario. Todas las computadoras reducen toda la información a ceros y unos, es decir que representan todos los datos, procesos e información con el código binario, un sistema que denota todos los números con combinaciones de 2 dígitos. Es decir que el potencial de la computadora se basa en sólo dos estados electrónicos: encendido y apagado. Las características físicas de la computadora permiten que se combinen estos dos estados electrónicos para representar letras, números y colores.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 14

Page 20: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo Un estado electrónico de "encendido" o "apagado" se representa por medio de un bit. La presencia o la ausencia de un bit se le conoce como un bit encendido o un bit apagado, respectivamente. En el sistema de numeración binario y en el texto escrito, el bit encendido es un 1 y el bit apagado es un 0. Las computadoras cuentan con software que convierte automáticamente los números decimales en binarios y viceversa. El procesamiento de número binarios de la computadora es totalmente invisible para el usuario humano. Para que las palabras, frases y párrafos se ajusten a los circuitos exclusivamente binarios de la computadora, se han creado códigos que representan cada letra, dígito y carácter especial como una cadena única de bits. El código más común es el ASCII (American Standard Code for Information Interchange, Código estándar estadounidense para el intercambio de información). Un grupo de bits puede representar colores, sonidos y casi cualquier otro tipo de información que pueda llegar a procesar un computador. La computadora almacena los programas y los datos como colecciones de bits. Hay que recordar que los múltiplos de mediciones digitales no se mueven de a millares como en el sistema decimal, sino de a 1024 (que es una potencia de 2, ya que en el ámbito digital se suelen utilizar sólo 1 y 0, o sea un sistema binario o de base 2). La siguiente tabla muestra la relación entre las distintas unidades de almacenamiento que usan las computadoras. Los cálculos binarios se basan en unidades de 1024. En informática, cada letra, número o signo de puntuación ocupa un byte (8 bits). Por ejemplo, cuando se dice que un archivo de texto ocupa 5.000 bytes estamos afirmando que éste equivale a 5.000 letras o caracteres. Ya que el byte es una unidad de información muy pequeña, se suelen utilizar sus múltiplos: kilobyte (kB), megabyte (MB), gigabyte (GB).

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 15

Page 21: segundo_media_infor.docx

UNIDAD EDUCATIVA “SAN CAYETANO DE CHONE” “Educación de calidad para un mundo competitivo

DATOS E INFORMACIÓN En la vida cotidiana resulta bastante común emplear indistintamente y con el mismo significado los términos dato e información. Pero cuando nos referimos a los sistemas de computación es conveniente hacer distinción entre ambos conceptos.

Dato es un concepto básico, elemental y sin elaborar. Por ejemplo, los nombres con que designamos los objetos que nos rodean, un precio, una dirección, Información es un conjunto de datos ya procesados con un computador convertidos una forma útil e inteligible como, por ejemplo, un documento impreso y con un procesador de textos, un recibo de pago, una tabla de pesos y edades,

El sistema informático usa una computadora para el procesamiento de datos proporcionados como entrada. Una vez procesados estos datos, la computadora genera la información de salida solicitada por el usuario.

Los datos son la materia prima necesaria para la obtención de la información. De un conjunto de datos suficientemente organizados y procesados convenientemente, extraeremos el conocimiento que nos faculta para una actuación apropiada.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 16

INFORMACIÓNSALIDA DE PROCESO ENTRADA DE DATOS

Page 22: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Para que un ordenador pueda tratar automáticamente un problema, se le proporcionará un plan de trabajo muy concreto: un programa, que será un conjunto de instrucciones que dirán a la máquina qué trabajo debe realizar, además necesitará que se le proporcionen una serie de datos, cuya manipulación permitirá obtener los resultados deseados. Para que el ordenador pueda realizar las operaciones necesarias con los datos que se le suministran es necesario darle las instrucciones en un lenguaje específico y ''comprensible'', que es lo que se denomina lenguaje programación. Al ordenador se le suministra, por tanto, dos cosas: los datos y los programas; los cuales son fundamentales en cualquier aplicación informática, y producen un resultado. Por cuestiones de índole, técnica, los circuitos electrónicos que conforman una computadora, suelen estar capacitados, en la mayoría de los casos, para reconocer señales eléctricas de tipo digital; por tanto, se hace necesario que los métodos de codificación internos tengan su origen en el sistema binario, y con ellos se puedan representar todo tipo de informaciones que maneje la computadora. En los circuitos electrónicos, desde el punto de vista lógico, suele representarse la presencia de tensión en un punto del circuito (respecto a masa) por medio de un 1, correspondiendo el 0 a la ausencia de tensión. Si se hacen las consideraciones anteriores, se dice que se está utilizando lógica positiva (utilizada en la mayoría de los casos). Por otro lado, si se asocia el 0 a la presencia de tensión y el 1 a la ausencia de la misma, se dice que se utiliza lógica negativa. Componentes físicos

No hace falta saber cómo funciona un ordenador para poder utilizarlo, como tampoco hace falta saber cuáles son los fundamentos de los motores de combustión interna para poder conducir un coche. Sin embargo, cuanto mejor conozca el funcionamiento interno del ordenador y cuáles son sus componentes, mejor podrá entender su comportamiento y en ocasiones, dar solución a los pequeños problemas que puedan surgirle. El hardware, como ya hemos dicho, es la parte física del ordenador. Son elementos tangibles. Algunos componentes hardware son la memoria, la fuente de alimentación, los cables, la tarjeta gráfica, el disco duro, etc... El hardware tuvo especial importancia en las primeras generaciones de ordenadores, debido sobre todo, a que no se utilizaban los medios electrónicos miniaturizados que se usan en la actualidad. El ENIAC2000, por ejemplo, era un ordenador capaz únicamente, de procesar operaciones como una calculadora sencilla y que ocupaba el espacio de una habitación completa. La conmutación de las operaciones de realizaba de forma manual, como si se tratase de una centralita de teléfonos de hace más de treinta años. Un ordenador se compone de las siguientes unidades funcionales: Unidad de entrada: Es el dispositivo por donde se introducen en el computador los datos e instrucciones. En estas unidades se transforman las informaciones de entrada en señales binarias de naturaleza eléctrica. Estas pueden ser: el teclado, un digitalizador, un scanner, un lector de tarjetas de crédito, etc. Unidad de salida: Es un dispositivo por donde se obtienen los resultados de los programas ejecutados en el computador. La mayor parte de estas unidades transforman las señales eléctricas binarias en caracteres escritos o visualizados o en imágenes. Estas pueden ser: el monitor, la impresora, el modem, etc.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 17

Page 23: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Unidad central de proceso (CPU). Consta de la unidad aritmético-lógica (ALU), de la unidad de control (UC) y de la memoria central. Unidades periféricas o periféricos de entrada y salida.

DESCRIPCIÓN DE LAS PARTES INTERNAS DEL COMPUTADOR

Mainboard:

Historia La historia de las tarjetas madres comienza en 1947 cuando William Shockley, Walter Brattain y John Bardeen, científicos de los laboratorios Bell, muestran su invento, el transistor amplificador de puntocontacto, iniciando el desarrollo de la miniaturización de circuitos electrónicos. Dummer, un británico que en 1952 presentó sobre la utilización de un bloque de material sólido que puede ser utilizado para conectar componentes electrónicos sin cables de conexión. 1961 cuando Fairchild Semiconductor anuncia el primer circuito integrado, Con estos inventos se comienza a trabajar en la computadora con una tarjeta, Concepto de la tarjeta madre. La mainboard es la parte principal de un computador ya que nos sirve de alojamiento de los demás componentes permitiendo que estos interactúen entre si y puedan realizar procesos. La tarjeta madre es escogida según nuestras necesidades. Partes de la tarjeta madre • Bios • Ranuras PCI • Caché • Chipset • Conectores USB • Zócalo ZIP • Ranuras DIMM • Ranuras SIMM • Conector EIDE (disco duro) • Conector disquetera • Ranuras AGP • Ranuras ISA • Pila del sistema • Conector disquetera • Conector electrónico Bios: (Basic Input Output Sistem), sistema básico de entrada-salida. Programa incorporado en un chip de la tarjeta madre que se encarga de realizar las funciones básicas de manejo y configuración del ordenador.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 18

Page 24: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ranuras PCI: Pueden dar hasta 132 MB/s a 33 MHz, lo que es suficiente para casi todo, excepto quizá para algunas tarjetas de vídeo 3D. Miden unos 8,5 cm y generalmente son blancas. Caché: es un tipo de memoria del ordenador; por tanto, en ella se guardarán datos que el ordenador necesita para trabajar. Chipset: es el conjunto de chips que se encargan de controlar determinadas funciones del ordenador USB: Conectores usados para insertar dispositivos transportables Zócalo ZIF: Es el lugar donde se aloja el procesador Slot de Expansión: son ranuras de plástico con conectores eléctricos (slots) donde se introducen las tarjetas de expansión Ranuras PCI: Peripheral Component Interconnect ("Interconexión de Componentes Periféricos") Generalmente son de color blanco, miden 8.5 cm es de hasta 132 MB/s a 33 MHz, no es compatible para alguna tarjetas de vídeo 3D. Ranuras DIMM: son ranuras de 168 contactos y 13 cm. de color negro. Ranuras SIMM: tienen 30 conectores, y meden 8,5 cm. En 486 aparecieron los de 72 contactos, más largos: unos 10,5 cm de color blanco. Ranuras AGP: Se dedica exclusivamente a conectar tarjetas de vídeo 3D,. Ofrece 264 MB/s o incluso 528 MB/s. Mide unos 8 cm Ranuras ISA: son las más antiguas. Funcionan con 8 MHz-16MB/s sirve para conectar un módem o una tarjeta de sonido, Miden unos 14 cm y su color suele ser negro Pila: se encarga de conservar los parámetros de la BIOS como la fecha y hora.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 19

Page 25: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

El procesador. Funciones, componentes, tipos y características.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 20

Page 26: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

El procesador es el elemento encargado del control y ejecución de las operaciones que se realizan dentro del ordenador con el fin de realizar el tratamiento automático de la información. Es la parte fundamental del ordenador. Se encarga de controlar todas las tareas y procesos que se realizan dentro de él. Al procesador se le denomina unidad central de proceso (CPU del ingles Central Process Unit). Está formado por la Unidad de Control y la Unidad Aritmético Lógica y su propia memoria que no es la RAM. El procesador es la parte pensante del ordenador; se encarga de todo: controla los periféricos, la memoria, la información que se va a procesar, etc.. Además de los componentes aquí mencionados también son necesarios los mencionados en la introducción a este epígrafe, la memoria y las unidades de entrada y salida. Una cosa que nos debe quedar clara es que el ordenador, a través de su microprocesador, solamente es capaz de procesar órdenes elementales. Lógicamente el procesar un conjunto de estas órdenes sencillas, nos lleva a realizar el tratamiento de un programa. La frecuencia con la que trabaja el microprocesador indica el número de instrucciones que es capaz de procesar por segundo. A mayor frecuencia, mayor número de instrucciones para procesar. Es microprocesador está conectado a un oscilador (reloj) que genera impulsos igualmente espaciados en el tiempo. Su frecuencia base es de 14.31 Mhz (millones de ciclos por segundo). Es el propio microprocesador el que divide esta frecuencia base para implementar un ciclo de máquina. El ciclo más frecuente y con el que empezaron a funcionar la mayoría de los ordenadores es 1/3 de la frecuencia base, es decir, 4.77 Mhz. Pues bien, varios ciclos de máquina son los que una instrucción necesita para ejecutarse. Por tanto una de las características que define a los procesadores es la velocidad o frecuencia a la que trabajan. Esta velocidad se mide en megahertzios (Mhz), y de ella dependerá la velocidad de proceso de nuestro ordenador. Las velocidades o frecuencias de trabajo de los ordenadores han pasado

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 21

Page 27: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo desde los 4.77 Mhz de los primeros, denominados XT, hasta más de 2 Ghz. Pero esto no parece tener fin, pues los fabricantes crean procesadores cada vez más rápidos y fiables.

Unidad de Control (UC) La unidad de control detecta señales de estado procedentes de las distintas unidades, indicando su situación o condición de funcionamiento. Capta de la memoria una a una las instrucciones del programa, y genera, de acuerdo con el código de operación de la instrucción captada y con las señales de estado, señales de control dirigidas a todas las unidades, monitorizando las operaciones que implican la ejecución de la instrucción. Para realizar todas estas operaciones, la UC dispone de pequeños espacios de almacenamiento denominados registros que son su esencia. Contienen la dirección en la que se encuentran almacenados datos e instrucciones. Los registros más importantes son:

• Registros de uso general (R0 a Rm) : Estos registros se utilizan como almacén temporal de los datos con los que va a operar la ALU o de resultados intermedios. También pueden dedicarse a almacenar direcciones de memoria.

• Acumulador : Es un registro significado (R0) que se usa con gran frecuencia en los lenguajes máquina para operar entre este y otro registro o el contenido de una posición de memoria, depositándose el resultado en el acumulador de nuevo.

• Flags Flip-flops o biestables indicadores o de condición : que se ponen a 1 o 0 dependiendo de la última operación realizada en la ALU. Al conjunto de estos biestables se les denomina palabra de estado (SW Status Word)

• Registro de instrucción : Es el encargado de almacenar la instrucción. Consta de diferentes campos :

CO : Código de operación que se va a realizar. MD : Modo de direccionamiento de la memoria. CDE : Campo de dirección efectiva de la información.

• Registro contador de programas : Contiene la dirección de la siguiente instrucción que se va a

ejecutar. Se entiende que esa dirección es de memoria central.

• Registro de dirección de memoria (DM) : Se utiliza para almacenar direcciones de memoria en las que se puede leer o escribir datos. En él se almacena la información de los datos que se van a leer o escribir sobre la memoria principal.

• Registro de memoria (RM) : Donde se almacenará el dato a escribir en la memoria o la información leída de la memoria, dependiendo del caso.

• Controlador y decodificador : Se encarga de controlar el flujo de instrucciones en la CPU interpretando la instrucción para su posterior proceso. La memoria principal se conecta al exterior por dos buses uno de direcciones y otro de datos, además dispone de una señal de control, denominada R/¬W para especificar si debe leer o escribir.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 22

Page 28: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Unidad Aritmético-Lógica (ALU) Esta unidad contiene los circuitos electrónicos con los que se hacen las operaciones detipo aritmético y de tipo lógico. Esta unidad también se puede denominar unidad de tratamiento o camino o ruta de datos ya que aparte de considerar los circuitos específicos que realizan las operaciones aritmético-lógicas se consideran también otros elementos auxiliares por donde se trasmiten o almacenan temporalmente los datos al objeto de operar con ellos.

Memoria RAM Es un componente necesario para que se pueda procesar la información. Lo normal es que los procesadores incorporen otro tipo de memoria para agilizar los cálculos de las instrucciones. Esta memoria intermedia que almacena y procesa temporalmente la información se denomina memoria caché. Esta memoria no es RAM propiamente dicha, sino un conjunto de registros que almacenan la información que se utiliza con más frecuencia.

La memoria caché: Esta memoria de acceso rápido, más aun que la propia RAM, se incorpora en la placa base de los equipos, especialmente en los de la última generación, para reducir la frecuencia de accesos a memoria RAM que el procesador tiene que realizar. La característica fundamental de esta memoria es que al inicio de una sesión, el ordenador se encuentra sin ninguna información. Una vez que el procesador accede a memoria RAM para llevar o traer información, ésta pasa por la memoria caché, quedándose almacenada en ella. De esta forma, si tenemos que acceder, por la circunstancia que sea, a la misma información de la memoria RAM, ya no será necesario ir hasta ella, sino que esa información se encontrará ya almacenada en la memoria caché; así, el acceso a la misma información será mucho más rápido.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 23

Page 29: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

El principal problema de la memoria caché es que no tiene demasiada capacidad; por eso, la información que se quedará almacenada en esta memoria será solamente aquella que utilicemos con mayor frecuencia. Los ordenadores actuales suelen montar dos tipos de memoria caché. Los hay que incorporan o montan caché asociado al propio procesador. Esta memoria agiliza en gran medida las operaciones que se han de realizar por el propio procesador, ya que no necesita acceder a la RAM continuamente. Este tipo de caché, llamado caché interno, es de pequeña capacidad, pero de elevado rendimiento. Los ordenadores denominados celeron son más baratos que los normales. Esto es debido a que no incorporan este tipo de memoria caché asociada al procesador, disminuyendo la velocidad real de proceso. El otro tipo de caché, que incorporan todos los equipos actuales, se sitúa, normalmente, entre el microprocesador y el resto de componentes hardware, como la propia RAM y el controlador de entrada / salida. Sirve de almacenamiento intermedio, almacenando aquellas rutinas, instrucciones o información que más se utiliza. Con ello, se consigue realizar menos accesos reales a la RAM y ganar velocidad de proceso. Este tipo de memoria se denomina caché externo. Podemos pensar que en algún momento la memoria caché puede llegar a saturarse. Esto es cierto, pero el propio procesador irá actualizando la información que se almacena en ella. Eliminará información que se utilice poco o que tenga poca importancia y se cargará con información más importante.

Periféricos. Tipos y características. Se denominan periféricos tanto a las unidades o dispositivos a través de los cuales la CPU se comunica con el mundo exterior, como a los sistemas que almacenan o archivan información, sirviendo de memoria auxiliar de la memoria principal. Según la definición de periférico dada anteriormente, éstos están constituidos por unidades de entrada, unidades de salida y unidades de memoria masiva. Estas últimas unidades también pueden considerarse como unidades de entrada / salida, ya que la CPU y memoria principal puede escribir sobre ellas, y la información escrita puede ser leída; es decir, ser dada como entrada. Ahora bien, la información grabada en estos soportes no es directamente inteligible para el usuario del computador; esto es, no puede haber una intercomunicación directa usuario-computador como la que hay a través de un tecladopantalla. El ordenador es una máquina que no tendría sentido si no se comunicase con el exterior, es decir, si careciese de periféricos. Debe disponer de:

Unidades de entrada, a través de las cuales poderle dar los programas que queremos que ejecute y los datos correspondientes.

Unidades de salida, con las que el computador nos da los resultados de los programas. Memoria masiva auxiliar, que facilite el funcionamiento y utilización del computador.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 24

Page 30: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

UNIDAD 2 SISTEMAS OPERATIVOS Introducción

Para instalar un Sistema Operativo hay que realizar varios pasos previos: preparar el disco, formatearlo, verificar si tiene errores y si los hay, solucionarlos y después comenzar con la instalación. Todos estos pasos se detallan en los siguientes capítulos. Monousuario: Los sistemas operativos monousuarios son aquellos que soportan a un solo usuario a la vez, sin importar el número de procesadores que tenga la computadora o el número de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo, las computadoras personales típicamente se han clasificado en este renglón. Multiusuarios: Los sistemas operativos multiusuarios son capaces de dar servicio a más de un usuario a la vez, ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones remotas en una red de comunicaciones, ni importa el número de procesadores en la maquina ni el número de procesos que cada usuario puede ejecutar simultáneamente. Mono tareas: Los sistemas Mono tareas son aquellos que solo permiten una tarea a la vez por el usuario. Puede darse el caso de un sistema multiusuario y mono tarea, en el cual se admiten varios usuarios al mismo tiempo pero cada uno de ellos puede estar haciendo solo una tarea la vez ¿Qué es el Sistema Operativo?

El Sistema Operativo, es el "intermediario" entre los programas y los componentes electrónicos de la computadora, es decir que es el que se encarga de la gestión de los recursos del sistema y de realizar las operaciones que solicitan los programas. Estos sistemas llevan a cabo dos funciones:

• El sistema operativo como una maquina extendida: en este caso, lo que el programa hace es ocultar la verdad acerca del hardware al programador, y presentar una agradable y sencilla visión de los archivos con su nombre, en los cuales se puedan leer o escribir. Es decir que en esta perspectiva, la función del sistema operativo es presentar al usuario el equivalente de una máquina virtual, que sea más fácil de programar que el hardware subyacente.

• El sistema operativo como controlador de recursos: la función en este caso es la de controlar todas las piezas de un complejo sistema, es decir que la labor que el sistema operativo debe cumplir es la de proporcionar una asignación ordenada y controlada de los procesadores, memorias y dispositivos de Entrada/Salida para los varios programas que compiten por ellos. En resumen, el sistema operativo sostiene que su principal tarea es la de llevar un registro de la utilización de los recursos, llevar la cuenta de su uso y mediar entre las solicitudes en conflicto de los distintos programas y usuarios. Historia de los Sistemas Operativos Origen de los Sistemas Operativos Las computadoras de 1960, no poseían programas que ayudaran a gestionar su funcionamiento. A esta organización se le llamó Sistema Monolítico y facilitaran el trabajo a los usuarios. De hecho, tampoco existían lenguajes de alto nivel que permitieran al programador sortear las limitaciones de la computadora a la que programaba. Si el usuario quería leer un archivo, debía escribir el mismo las rutinas para poner en marcha el motor de la unidad de cintas, buscar la información, comprobar que no existían errores. Además, todo ello debía realizarse en el código binario del procesador con el que estuviera trabajando.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 25

Page 31: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Conforme se mejoraban los circuitos electrónicos, se fueron añadiendo facilidades vía grupos de programas que permitían organizar la ejecución de los procesos, así como el almacenamiento de los datos. De esta manera nacieron los Sistemas de Procesamiento por Lotes [Batch]. Los archivos BAT del MS-DOS son herederos directos de esta tecnología. A finales de los años 60, dentro del mundo universitario en Estados Unidos de América se diseñó el primer Sistema Operativo moderno: Multics. Este sistema permitía un uso racional de los recursos de la computadora, automatizando el sistema de archivos, la gestión de procesos y permitiendo el trabajo de "múltiples" usuarios en una misma máquina. Posteriormente se crearon otros Sistemas Operativos, pero el más importante fue UNIX. Este, era descendiente directo de Multics, y fue implementado por primera vez para una computadora PDP-7 en 1969. Una característica que los distinguió desde el principio es que no depende de la máquina en la que funciona. Sólo una pequeñísima parte de su código está en ensamblador, y el resto en lenguaje C, por lo que se extendió muy rápidamente a distintas máquinas. Actualmente domina el mercado de Minis y Super Computadoras. Estos Sistemas Operativos, que funcionaban en las antiguas y costosísimas computadoras, debían permitir el uso de varias personas simultáneamente para aprovechar al máximo el rendimiento de la máquina. Se establecía una estructura en la que la computadora era el centro y, alrededor suyo, se establecían múltiples terminales sin capacidad de proceso. A estos Sistemas Operativos se les llamó de Tiempo Compartido. Posteriormente, con el abaratamiento de los circuitos electrónicos, se comenzaron a fabricar Micro Computadoras para uso personal. En 1980, IBM lanzó su popularísima PC que incorporaba la primera versión del MS-DOS. Con la aparición de computadoras personales, se crearon los Sistemas Operativos monousuario. MSDOS es un claro exponente, ya que sólo puede trabajar un usuario a la vez. Por ello, este sistema no es más que una simplificación de los anteriores. Al desarrollarse las comunicaciones y fabricarse redes de computadoras, se tuvo que diseñar otro tipo de Sistema Operativo para gestionar la red. Ahora, debido a los avances en velocidad y calidad de transmisión de las telecomunicaciones, el establecimiento de redes de computadoras privadas, las computadoras multiproceso y al inmenso parque mundial de computadoras, se está diseñando una nueva arquitectura de Sistema Operativo. En ella, el mismo Sistema Operativo se encuentra distribuido por diversas máquinas para aprovechar al máximo los recursos globales del sistema. Concepto de los Sistemas Operativos La interfaz entre el sistema operativo y los programas del usuario se define como el conjunto de "instrucciones ampliadas" que proporciona el sistema operativo. Estas instrucciones ampliadas se conocen como llamadas al sistema. Estas crean, eliminan y utilizan varios objetos del software, controlados por el sistema operativo. Los más importantes son los procesos y archivos. Procesos

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 26

Page 32: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo El concepto central de cualquier sistema operativo es el proceso, una abstracción de un programa en ejecución. Todas las computadoras modernas hacen varias cosas al mismo tiempo. A la vez que ejecuta un programa del usuario, una computadora puede leer de un disco e imprimir en una terminal o impresora. Aunque en sentido estricto, la CPU ejecuta en cierto instante un solo programa, durante un segundo puede trabajar con varios de ellos, lo que da una apariencia de paralelismo. A veces, las personas hablan de seudoparalelismo para indicar este rápido intercambio de los programas en la CPU, para distinguirlo del paralelismo real del hardware, donde se hacen cálculos en la CPU a la vez que operan uno o más dispositivos en E/S. Es difícil mantener un registro de las distintas actividades paralelas, los diseñadores de sistema operativos ha desarrollado un modelo que facilita el uso del paralelismo. Archivos Como ya mencionamos anteriormente, una de las funciones principales del sistema operativo es la de ocultar las peculiaridades de los discos y demás dispositivos de entrada/salida, para presentar al programador un modelo agradable y nítido de archivos independientes de los dispositivos. Para poder proporcionar un espacio donde almacenar los archivos, los sistemas operativos soportan el concepto de directorio como una forma de agrupar los archivos. Es evidente la necesidad de llamadas al sistema en la creación, eliminación, lectura y escritura de archivos. Antes de poder leer un archivo, hay que abrir este, después de leer un archivo, este debe cerrarse; siendo las llamadas al sistema, las que permiten realizar estas operaciones. Instalacion de los sistemas operativos

Desarrollo: Fases de instalación de un sistema operativo

1. Preparar el equipo para arrancar desde CD/DVD. 2. Preparación del Disco Duro: 3. Ejecutar el programa de instalación 4. Proporcionar el nombre y contraseña del usuario que será administrador del sistema. 5. Seleccionar los componentes software opcionales que queremos instalar. 6. Ajustar los parámetros de la red. 7. Instalar el gestor de arranque. 8. Realizar las actualizaciones de seguridad. 9. Instalar los plugins del navegador. 10. Instalar los Drivers necesarios para los dispositivos no reconocidos en la instalación. 1. Preparar el equipo para arrancar desde CD/DVD. Los equipos modernos suelen estar ya preparados para ello. No obstante, si al introducir el CD de instalación, no se ejecutase el programa de instalación, habrá que modificar la configuración de la BIOS, para escoger el CD/DVD como primer dispositivo para el arranque. Esta operación depende del modelo de placa base/madre del equipo, por lo que de ser posible consultaremos la documentación del fabricante. Normalmente, para acceder a la modificación de la configuración de BIOS, hay que pulsar la tecla ―Suprimir‖, ―F2‖ en los primeros segundos del POST (comprobación del sistema en el encendido). Luego, en la configuración avanzada, debemos cambiar el parámetro BOOT para que el primer dispositivo sea el CD. Esta operación difiere mucho entre distintos ordenadores. Manipular otros

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 27

Page 33: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo parámetros de la BIOS puede dejar al ordenador inservible. Solicite ayuda a algún experto si no sabe qué hacer. Seleccione la opción de salir sin salvar los cambios (EXIT Without update). Finalmente, hay que seleccionar la opción salvar cambios y salir (normalmente pulsando F10). 2. Preparación del Disco Duro: Esta fase consiste en crear las particiones del tipo necesario para que nuestro S.O. Pueda instalarse. En Windows los tipos de particiones que se emplean son FAT32 (Windows 95/98) y NTFS (Windows NT/2000 y XP). En Linux/UNIX, se aceptan muchos más tipos de particiones, siendo el sistema de ficheros más popular el EXT3. Si queremos instalar un sistema operativo en un disco donde ya haya otro sistema operativo instalado, es muy importante hacer copia de seguridad de los datos importantes antes de proseguir la instalación, ya que existe un alto riesgo de perderlos TODOS por un error durante el proceso. Una vez hecho esto, tendremos dos opciones: Sustituir el sistema operativo anterior. Instalarlo permitiendo su coexistencia y selección durante el periodo de arranque del ordenador. Si elegimos la primera opción, suele ser buena idea borrar en el proceso de instalación las particiones antiguas y después crear las nuevas, realizando una comprobación completa de su estado para conocer si hay errores o defectos en el disco. En el caso de querer hacer una instalación dual, habrá que conseguir espacio suficiente para instalar el nuevo sistema operativo, normalmente restándoselo a las particiones existentes anteriormente para el primer sistema. Esta delicada tarea, suele hacerse con herramientas software especial, como ―Partition Magic‖ o libre y gratuito bajo Linux QTParted. En ambos casos, es muy recomendable realizar una sola modificación cada vez y llevarla a efecto, en lugar de programar varias encadenadas. Los programas instaladores de Linux, suelen incorporar herramientas que permiten dicha modificación. No ocurre así en los de Windows, que solo permiten borrar antiguas y crear nuevas. Suele ser muy interesante por motivos de seguridad, crear particiones independientes para guardar los datos de los usuarios (por ejemplo una unidad D: en Windows, o directorio /home en Linux). 3. Ejecutar el programa de instalación Para ello, normalmente bastará con introducir el CD de instalación y volver a encender el equipo con el dentro. Debemos estar atentos a los primeros instantes para leer un posible mensaje de proceder a la instalación y aceptarlo. En caso contrario, bastará con esperar sin hacer nada. 4. Proporcionar el nombre y contraseña del usuario que será administrador del sistema. Todo sistema multiusuario que se precie, debe tener un responsable de su funcionamiento, mantenimiento y de otorgar permisos de uso del equipo y/o sus recursos a terceros. Es durante la fase de instalación durante la que se especifica la contraseña pare el mismo. En los sistemas UNIX, el nombre del administrador es siempre ―root‖. En sistemas como Windows, UBUNTU o GuadaLinex, esta labor la lleva el primer usuario creado, hasta que se especifique lo contrario. 5. Seleccionar los componentes software opcionales que queremos instalar. Muchas distribuciones de S.O. pueden contener software adicional (en ocasiones varios CD o DVDs) que puede ser instalado durante la instalación del mismo. Es habitual que se nos pregunte por qué selección de programas recomendada o personalizada queremos instalar. Una vez hecho esto, comienza la copia de todos los ficheros necesarios desde los soportes de instalación al disco duro del equipo. 6. Ajustar los parámetros de la red. Si nuestro equipo va a ser utilizado en una red local o en Internet, habremos de configurar adecuadamente el dispositivo de comunicaciones (normalmente la tarjeta de red). Para ello, necesitaremos obtener la información pertinente del administrador de la red o del proveedor de servicios de Internet que tengamos contratado en su caso. Lo más común, (y por tanto la instalación por defecto) es que los equipos se configuren de modo que automáticamente consigan el ajuste necesario de la red desde otro equipo que los coordina a todos, mediante un protocolo denominado DHCP (Dinamyc Host Control Protocol). Si es así, no necesitamos hacer nada más.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 28

Page 34: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo En caso contrario, deberemos obtener y anotar la información correspondiente para la tarjeta de red: (todos ellos combinaciones de 4 números del 0 al 255 separados por puntos) Dirección IP: el número que distingue nuestro ordenador en la red para comunicar. Máscara de subred: un número que ayuda a distinguir si las direcciones que buscamos son de nuestra red local o externos. Normalmente es 255.255.255.0 Puerta de enlace predeterminada: la dirección I.P. del equipo (p.ej. Router) que nos da acceso a otras redes, como por ejemplo Internet. Dirección de un servidor de D.N.S.: La dirección del equipo que puede informarnos de la dirección IP de otro que solo conocemos por su nombre de dominio. Hacen el trabajo de las ―páginas blancas‖ de Internet. Pueden obtenerse I.P.'s de DNS desde: http://www.bandaancha.st/toolsdns.php 7. Instalar el gestor de arranque. Al instalar el sistema operativo, es necesario incluir en el sector de arranque del Disco Duro (llamado MBR o Master Boot Record), un pequeño programa que nos permite encontrar en qué parte del disco se encuentran los distintos sistemas operativos, y seleccionar uno para comenzar a trabajar cuando encendemos el equipo. En las instalaciones de Linux, el programa en cuestión suele ser el LILO (Linux Loader) o GRUB (GRand Unified Bootloader). En Windows, tras su instalación, se destruye el cargador de arranque que estuviese antes, y solo quedará la posibilidad de acceder a dicho sistema operativo. Es por ello muy conveniente que de tener instalado Linux en nuestro ordenador además de Windows, dispongamos de un disquete de arranque que también tenga el GRUB o LiLo en él para poder arreglar el destrozo que provocará la reinstalación de Windows cuando probablemente ocurra. Si tras instalar Linux, no podemos arrancar el Windows anteriormente instalado (caso poco probable), podremos reponer el de Windows con un disco de arranque de Windows introduciendo por teclado la orden: fdisk /mbr Asegúrese de tener antes un disquete o CD de arranque con LiLo o GRUB configurado antes de usar fdisk, o no podrá volver a arrancar Linux después. 8. Realizar las actualizaciones de seguridad. Probablemente, desde que se publicó la versión de nuestro S.O. hasta el momento de la instalación, se han publicado correcciones del mismo que pueden aplicarse mediante un proceso de actualización a través de Internet, o de discos de ―Service Pack‖ que las contienen cuando ya son muy numerosas. De no llevarlas a cabo, es muy probable que en poco tiempo tengamos problemas causados por virus, intrusos a través de la red o fallos del propio S.O. desconocidos en el momento de su publicación. 9. Reiniciar el sistema Es la fase final de la instalación, y nos mostrará que el sistema está convenientemente instalado. Antes de hacerlo, debemos asegurarnos de que hemos retirado el CD/DVD de instalación, o volveremos otra vez iniciar el proceso. Si es así, apagamos el equipo y sacamos inmediatamente el CD/DVD en los primeros instantes del arranque. 10. Instalar los “plugins” del navegador Los ―plugins‖ son pequeños programas que añaden a otras nuevas funcionalidades, como permitir a nuestro navegador visualizar contenidos y páginas web que no son documentos puros HTML. Los más usados y considerados imprescindibles son: JAVA (http://java.sun.com) para ejecutar programas interactivos, juegos, chats, etc. Macromedia Flash Player /Shokwave (http://macromedia.com ó http://www.adobe.com) para visualizar contenidos multimedia interactivos desarrollados con programas de dicho fabricante. Adobe Reader (http://www.adobe.com) para visualizar documentos en formato .pdf que cada vez están más extendidos. Normalmente, en Windows, al visitar una página que los emplee, les dirigirá de forma automática a la página donde descargar el plugin para que lo instale.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 29

Page 35: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo En Linux, la instalación debe realizarla en administrador, preferentemente mediante el correspondiente paquete de su distribución. 11. Instalar los Drivers necesarios para los dispositivos no reconocidos en la instalación Es habitual que si se instala el sistema operativo, ano nos funcione aún o al menos correctamente la impresora, el escáner, la ―tarjeta de sonido‖ la tarjeta gráfica, la tarjeta sintonizadora de TV, etc. Para que puedan hacerlo, es necesario instalar en nuestro S.O. Los DRIVERS de los mencionados dispositivos correspondientes a la versión de nuestro sistema operativo, y a ser posible actualizados. Un ―Driver‖ es un pequeño programa que se encarga de hacer comunicar y funcionar un dispositivo hardware en el S.O. En muchos casos, el propio S.O. los instala, pero debido a la gran variedad de tipos de dispositivos y de fabricantes existentes en la actualidad, es imposible incluirlos todos. Para conseguir los drivers, recurrimos al disco de instalación del dispositivo o a la página WEB del fabricante del mismo (por ej.: HP, EPSON, Nvidia, ATI, CREATIVE, etc...), seleccionando los de nuestro S.O. y versión del mismo. En ocasiones suele ser necesario reiniciar el ordenador (casi siempre en Windows). Procedimiento estándar para la instalación de un sistema operativo

I- Salva de información. 1. De los usuarios que se encuentran en:

a. Partición de trabajo (por lo general en D) b. En la carpeta personal del usuario

• En caso de sistema en Windows XP en C:/Documents and Settings/usuario/escritorio y mis documentos.

• En caso de sistema Windows 7 en C:/users/usuario/Desktop y documents. 2. Salva de los eventos de seguridad.

Con el nombre, por ejemplo: Nombre de la PC – año-mes-día Esta salva debe ser comprobada contra virus.

II- Preparación de la PC 1. Revisión del CD de los driver de la PC. En caso de no poseer el disco de los driver extraerlos con

la siguiente aplicación: 2. Driver.Genius.Professional.Edition.v9.0.0.180.Multilingual. 3. Configurar el Setup para que la PC realice el proceso de arrancada (booteo) desde el CD.

III- Proceso de instalación 1. Particionado y formateado del disco duro mediante el programa Partition Magic teniendo en

cuenta capacidad del disco duro y sistema operativo a instalar, según la siguiente tabla:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 30

Page 36: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Nota: Solo en casos excepcionales y si el disco duro de la PC tiene 80 Gb o más se podrá instalar un segundo sistema operativo, previa autorización del jefe de área y con el siguiente particionado:

2. Instalación del sistema operativo compilado.

Siempre que las características técnicas de la PC lo permitan se instalará la versión más reciente del sistema operativo, así para:

PC con Memoria Ram Sistema

Operativo Windows

Sistema Linux

Operativo

hasta 256 Mb Windows XP

> de 256 Mb Windows 7

En el caso del sistema operativo Windows, se instalará la versión más reciente compilada por el D.I.C. que contiene las últimas actualizaciones de seguridad. En el caso del sistema operativo Linux se escogerán versiones cuyo repositorio exista en los servidores de la Institución o en la red nacional que posibilite su actualización sistemática.

3. Instalación de los programas básicos siguientes:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 31

Page 37: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Estos programas formarán parte de la última compilación realizada por el D.I.C. con el sistema operativo parcheado con las últimas actualizaciones de seguridad y los programas siguientes actualizados: Drivers: Controlador de dispositivo es el software que comunica los periféricos con el sistema operativo. Navegador de Internet: Mozilla Firefox por defecto. Cliente jabber para mensajería instantánea: Gajim Antivirus: Según las propiedades de la PC, que se actualizan de forma automática y estén aprobados en el PSI de la Institución, por ejemplo:

Memoria Ram Antivirus

< de 128 Mb Sav32

Entre 128 y 256 Mb Kaspersky o Nod32

> de 256 Mb AVG Calendario: Exstora (Para ver la fecha del año) Complementos: Flash_player_10.1.exe, ramework2.0.exe, Shockwave Player 11.5.8.612, Silverlight 4.0.50524.exe Convertidor de video y audio: Format Factory. Lector de PDF: FoxiT Reader. Colección para codificar y descodificar los formatos de audio y vídeo: K-lite_codec. Complemento para el SO (XML): Microsoft Xml. Reproductor multimedia: Mplayer. Procesador de texto: NotePad++. Paquete Ofimático: se instalara el Word (procesador de textos), Excel (hoja de cálculo), Access (base de datos), PowerPoint (presentaciones electrónicas) y el Outlook (cliente de correo electrónico) de una de las versiones del Office, según las propiedades de la PC, por ejemplo:

Memoria Ram Sistema operativo

< de 256 Mb Office 2003 > de 256 Mb Office 2007 o superior

Reproductor multimedia: Winamp. Compresor de ficheros: Winrar. Impresoras y escáner: en dependencia de la existencia de estos equipos en el local, previendo su utilización en red. Herramientas para: • Convertir PDF a Doc, Excel, HTML, Text o CSV: PDF Converter. • Crear archivos PDF: PDF Converter. • Explorador para trabajar con carpetas y ficheros del sistema: Totalcmd. • Desconexión rápida de dispositivos extraíbles: USB SafelyRemove. IV- configuración de la maquina:

1. Nombrar la PC. En: propiedades de mi PC/nombre de equipo /cambiar, se cambia el nombre de la PC atendiendo al área y lugar al que pertenece, por ejemplo:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 32

Page 38: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Área Local PC

Ciencias Técnicas Industrial CT-Ind-#

2. Agregar la PC a la base de datos. Acceder a: http://claves.ucp.ho.rimed.cu/infopc y llenar los datos que te pide la pagina

3. Agregar la PC al dominio. Acceder a: propiedades de mi PC/Nombre de equipo/cambiar y en Miembro del dominio escribir: UCP.HO.RIMED.CU

4. Especificar el tamaño de la memoria virtual Acceder a: propiedades de mi PC/Opciones avanzadas/Opciones de Rendimiento/Opciones avanzadas y en Memoria virtual configurar dejando administrado por el sistema el tamaño del archivo de paginación para todas las unidades.

5. Sincronizar la hora y fecha de la PC con la del servidor En el panel de control acceder a Fecha y hora y: a) En Hora de internet y marcar en Sincronizar automáticamente con un servidor horario de

Internet, seleccionando como servidor time.ucp.ho.rimed.cu y dar click en Actualizar Ahora.

b) En Zona horaria seleccionar GMT-05:00 Hora oriental (EE.UU. y Canadá) y marcar en cambiar la hora automáticamente según el horario de verano.

6. Configurar el idioma del teclado ¿¿?? 7. Configurar la tarjeta de Red

Se configura para obtener una dirección IP automáticamente. ¿¿Cómo se llega?? ¿¿El número IP se asigna por DHCP atendiendo a: 152 . 123 . # de área . # de PC según el orden general que tiene dentro del levantamiento de las PC del área??

8. Configurar las herramientas administrativas En el panel de control acceder a herramientas administrativas y a) Activar las directivas de auditorías • Seleccione Directivas de seguridad local/Directivas auditoria y para cada auditoría active los

sucesos tanto correctos como erróneos. b) Configurar el tamaño del registro de auditoría • Selecciones Visor de sucesos y para cada visor aumente el tamaño del registro a 1024 Kb y

seleccione sobrescribir el suceso cuando sea necesario. 9. Implementar la RM 85/2007 10. Configurar el Firewall de windows 11. Configuración de las cuentas de usuarios

a) Usuarios: solo dejar invitado (desactivado) y administrador (con contraseña), eliminar los otros.

b) Definir permisos de usuarios sobre las particiones C y D. • Acceder a las propiedades de la partición configurando las opciones avanzadas de seguridad

eliminando los permisos de lectura y ejecución al grupo usuarios. Debe quedar, de la siguiente forma:

Partición Usuarios del dominio Administradores dominio

del

C /tmp lectura escritura /RECYCLER: lectura escritura

/ lectura

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 33

Page 39: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

D

/ Jefe de área, jdpto, Resp SI del área: lectura. /RECYCLER: lectura escritura. /trabajo: lectura escritura solo para usuarios de dicha PC /usuario del dominio: lectura escritura.

/ lectura

12. Configuración de programas instalados

a) Antivirus • Configurar la actualización automática del antivirus. • En dependencia del antivirus, configurar el análisis automático de: o Memoria USB: al

insertarla en la PC, o Objetos de inicio: al iniciar el programa, o Zonas críticas: Una vez a la semana, o Mi PC: una vez cada quince días.

b) Configurar el navegador Mozilla Firefox. • Ejecute las aplicaciones FirefoxConfig.exe y InstallRootCA.exe que se encuentran en

http://ftp.ucp.ho.rimed.cu/Aplicaciones/RootCA/ • ¿¿Se puede actualizar de forma automática desde los servidores de la Institución??

13. Configuración del Setup de la PC: a. realice el proceso de arrancada (booteo) desde el disco duro y deshabilitar las demás

opciones. b. Reducir la cantidad de memoria de video onboard. c. Poner contraseña

NOTA: A mi entender una vez ejecutado el paso 3 (agregar la PC al dominio), muchos de los pasos pudieran ser obviados si se aplican las políticas del dominio. V- Restaurar la información salvada en el dispositivo de almacenamiento extraíble o el pdc para la

maquina con el mismo proceso de copiado, pegado y comprobar si ha sido restaurada toda la información.

NOTA: Creo que tomando como base este se pudiera hacer el procedimiento, detallando cada paso, recuerda que hay usuarios que pueden instalar sus PC, además están las PC de las sedes y puede tomarse de ejemplo para los nodos municipales, etc. Hay detalles que pueden estar en el PSI como: • los antivirus a instalar, • el nombre de la PC, • el # IP, • como se actualiza el DHCP, • que datos son necesarios que aparezcan cuando se agrega la PC a la base de datos • cuál es el tamaño ―mínimo‖ de la memoria virtual, • con que frecuencia y quien debe mantener la salva del Visor de sucesos de cada máquina, cuáles

son los parámetros del firewall que hay que configurar, • etc.

Otros procedimientos

Para instala el Windows 98 o Windows Millenium. 1.- Introduce el CD-ROM de Windows 98 o Windows Millenium, teclea E: y Enter. 2.- Teclea Instalar y Enter. Nos avisará que iniciará la instalación y Enter. 3.- Ahora comenzará a hacer un ScanDisk y al terminar nos dará un informe de errores si encuentra alguno (lógicamente no habrá ninguno ya que acabamos de formatear la unidad C:) 4.- Con la tecla ® selecciona Salir y Enter. La instalación ha comenzado. 5.- Oprime Siguiente cuando aparezca la ventana del Asistente. Haz clic en Acepto el contrato y presiona Siguiente.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 34

Page 40: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 6.- Introduce el código del producto que acompaña al CD-ROM de Windows por ejemplo (CDF22 AR987 HJKLM ABCDE VWX4Y) y presiona Siguiente. 7.- En la siguiente ventana escoge el directorio donde quieres que se instale Windows, por defecto está en C:\Windows, presiona Siguiente y en Opciones de instalación seleccionamos Típica y presiona Siguiente. 8.- Introduce el nombre y organización que quieras, por ejemplo puedes poner tu nombre y en organización Personal y presiona Siguiente. 9.- En la ventana de Componentes de Windows selecciona Instalar los componentes más comunes (Recomendado) y presiona Siguiente. 10.- En identificación en Red si no quieres no pongas nada déjalo como está, o por el contrario si lo deseas puedes cambiar todo y luego presiona Siguiente. 11.- Escoge el País o Región y presiona Siguiente. 12.- Escoge la Zona horaria y presiona Siguiente. 13.- Ahora comenzará a crear un disco de Inicio, si no lo deseas presiona Cancelar y si por el contrario quieres hacer uno, entonces retira el que tienes en la disquetera e introduce un disquete formateado y etiquetado y presiona Aceptar. 14.- Una vez creado el disco de Inicio o Cancelado la creación del disco, presiona Finalizar y continuará la carga de Windows y verás el progreso de la instalación. 15.- Se reiniciará varias veces el equipo durante la instalación y finalizará la instalación 16.- Después aparecerá el cuadro de Contraseña de Windows, tienes la opción de no poner nada y la computadora no tendrá contraseña o por el contrario puedes poner un nombre de usuario y contraseña para entrar en la computadora y presiona Aceptar, después de unos segundos por fin verás el Escritorio de Windows. Instalación de un Sistema Operativo Microsoft Windows con disquete de inicio. Para instalarlo de cero los pasos serian los siguientes.

a. Formatear el Disco Rígido con un formateo rápido o común según corresponda. b. Reiniciar el sistema con un disquete de inicio del Sistema Operativo a instalar, o utilizar el CD

deMicrosoft Windows XP para la instalación del mismo. O en este caso (como tendrá que hacer en máquinas viejitas, un poco más complicado), con el disquete de inicio del Sistema Operativo Microsoft Windows Me tendrá las siguientes opciones en pantalla:

MENÚ DE INICIO D EMICROSOFT WINDOWS MILLENNIUM 1. AYUDA 2. INICIAR PC CON COMPATIBILIDAD CON

CD-ROM 3. INICIAR PC SIN COMPATIBILIDAD CON CD-ROM 4. INICIO MÍNIMO

Hay que seleccionar la opción número 2. De esta forma se cargarán los Drivers para la lectora de CD desde la cual se instalará este Sistema Operativo.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 35

Page 41: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Diríjase a la unidad de CD escribe setup, install o instalar según la versión que se disponga instalar de Microsoft Windows. No ocurre nada si se equivoca y escribe ―setup‖ cuando debió haber escrito ―instalar‖, solo mostrará un mensaje diciendo que no encontró el archivo. Al ejecutar el programa de instalación (por ejemplo setup) se iniciará el programa de instalación que luego de comprobar rápidamente que el HD esté en condiciones le irá mostrando distintas pantallas y guiando en el proceso de instalación de este SO. Le preguntará el número de serie del producto, que acepte una licencia de uso, que le indique la ubicación geográfica en la cual está instalando él, etc. Actualizar a Microsoft Windows XP Si desea actualizar a Microsoft Windows XP y cumple con los requerimientos mínimos de sistema (requerimientos de Memoria RAM, Microprocesador, etc.) o se le complica mucho la instalación de Windows XP desde el CD (porque le de algún error, en las primeras versiones a veces ocurría) puede instalar por ejemplo el Sistema Operativo Microsoft Windows Me, y sin configurar e instalar los Drivers ya que será algo inútil en este caso. Inserte el CD de Microsoft Windows XP estando funcionando Windows Me. Le saldrá una ventana como la mostrada en siguiente imagen, para actualizar el Sistema Operativo.

De esta ventana seleccione ―Instalar Windows XP‖. Luego de esto mostrará la siguiente pantalla:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 36

Page 42: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo De la pantalla ―programa de instalación de Windows‖ seleccione en ―Tipo de instalación‖ ―Actualización‖ haciendo un clic en el triángulo pequeño. Luego pulse en el botón ―Siguiente‖. A continuación aparcera un contrato, tendrá que aceptarlo tildando en la opción correspondiente y luego pulsar en ―siguiente‖. De esta forma por medio de mensajes le irá indicando lo que debe hacer o preguntándole algún dato como por ejemplo el nombre que tendrá su PC, el número de serie del Sistema Operativo que usted adquirió, etc. No debería de tener ningún problema en el proceso de instalación si su PC funciona correctamente.

SISTEMA OPERATIVO MONOUSUARIO MS-DOS Como ejemplo de un sistema operativo de un solo procesador, nos referiremos a MS-DOS, que sólo se ejecuta en el Intel 8088 y sus sucesores, 286, 386 y 486. Iniciaremos con su historia, analizaremos los conceptos fundamentales, algunas de sus llamadas al sistema y, por último, diremos algo de su implantación. Historia De Ms-Dos

La primera computadora personal fue la Altair, producida en 1975 por la compañía MITS. Tenía un CPU con el Intel 8080 de 8 bits y 256 bytes de memoria. No tenía teclado, pantalla, cintas o discos. Después de unos años, muchas compañías comenzaron a fabricar computadoras personales con base en el chip 8080, casi todas con un sistema operativo llamado CP/M. La PC-IBM Alrededor de 1980, IBM, vio la necesidad de tener su propia computadora personal. Para entonces Intel había producido dos sucesores del 8080, el 8086 de 16 bits y una versión de él con un bus de 8 bits, el 8088 que fue comprada por IBM. Microsoft compró para IBM un sistema operativo del tipo de CP/M-86 al cual le realizo unos cuantos arreglos. Cambiaron su nombre por el de MS-DOS (MicroSoft – Sistema operativo de disco). IBM anunció la PC en agosto de 1981. MS-DOS podía ejecutar la mayor parte del software que se utilizaba entonces en el 8080 bajo CP/M. La PC estaba equipada con hardware para el control de las cintas de audiocassette y palancas de control para los videojuegos. Respecto del hardware de la PC. Aunque el 8088 tiene un espacio de direcciones de 1 megabyte, IBM decidió asignar los primeros 640 de éstos al RAM y el resto a ROM, tarjetas de vídeo y otros elementos. En consecuencia, la configuración de MS-DOS sólo soporta programas con un tamaño máximo de 640 K. Al surgir después modelos con hasta 16 MB, la incapacidad para ejecutar programas mayores de 640 K se convirtió en un problema. Los programas de la PC de IBM eran libres de no utilizar el sistema operativo y tener acceso directo al hardware. MS-DOS Versión 1.0 Fue lanzada junto con la PC DE IBM. Ocupaba 12 K de los 64 K de la memoria de la máquina. El código constaba de 4000 líneas de código ensamblador. El único disco que soportaba era el de 5 ¼ plg, de un solo lado y 160 K. El sistema operativo constaba de 3 programas: ibmbio.com, el sistema de E/S de discos y caracteres; ibmdos.com, el manejador de discos y archivos; y command.com, el procesador de comandos, un shell primitivo. MS-DOS siempre ha hecho uso de un ROM en hardware integrado a la PC DE IBM, llamado BIOS (Sis. Básico de E/S). BIOS contiene los manejadores de los dispositivos estándar, por lo que bastaba que MS-DOS los llamara para realizar la E/S. El BIOS se localizaba cerca de la parte superior del espacio de direcciones de MI en el ROM del 8088, no ocupaba RAM. La versión MS-DOS 1.0 era compatible con CP/M.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 37

Page 43: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Microsoft lanzó la versión 1.1 en 1982, la cual soportaba los discos de 320K de doble lado. En lo demás era similar a la versión 1.0. MS-DOS Versión 2.0 En 1983, IBM presentó la PC/XT, su primera computadora personal con un disco duro. Venía con la versión 2.0. Aunque soportaba las llamadas al sistema de CP/M, Microsoft volvió a escribirlo desde cero y le incorporó ideas de UNIX como las llamadas al sistema OPEN, READ, WRITE y CLOSE. El shell también se mejoró; podía manejar el redireccionamiento de la E/ S, además de soportar entubamientos y filtros. MS-DOS 2.0 también incluyó manejadores de dispositivos que podía instalar el usuario, cola de impresión (spooloing), configuración del sistema, administración de la memoria y shells adaptados. Al surgir una gran demanda a nivel mundial de la PC/XT produjo la versión 2.05, que soportaba la hora, fecha, moneda y símbolos decimales de muchos países. MS-DOS Versión 3.0 En 1984, IBM lanzó la PC/AT, su primera computadora personal con base en el chip 286. Esta soportaba una memoria de hasta 16 MB, tenía modos usuario y núcleo, un modo de protección con base en anillos y capacidad de ejecutar varios programas a la vez. La versión de MS/DOS empacada con la PC/AT era la 3.0. La PC/AT venía con una unidad de disco de 1.2 M, reloj con batería y la información de la configuración en CMOS, se añadió el soporte para estos dispositivos. Además, ahora se soportaban los discos duros de más de 10M y se presentaron los discos en RAM y el procesador de comandos (shell) se eliminó del sistema operativo y se conformó como un programa independiente. El 3.0 se reemplazó por 3.1, que proporcionó el primer soporte para las redes. La siguiente edición fue la 3.2. Soportaba discos de 3 ½ plg.. En 1987, IBM presentó el sucesor de la línea PC, la familia PS/2 (Sistema Personal 2). Venían con discos de 3 ½ plg. y 720K en las versiones más pequeñas y discos de 3 ½ plg. con 1.44M en las versiones más grandes. IBM y Microsoft lanzaron un sistema operativo nuevo llamado OS/2. Como se entregó tarde e incompleto, Microsoft lo desechó, esto molestó a IBM, que abandonó a Microsoft y firmó contrato con Apple Computer para su futuro software. MS-DOS Versión 4.0 IBM presentó la versión 4.0. Una de las grandes mejoras de esta edición fue el soporte de discos duros mayores de 32 M. MS-DOS 4.0 soporta discos de hasta 2 gigabytes. Aunque los programas seguían restringidos a 640 K, se podían utilizar hasta 16M de memoria extendida para el disco en RAM. Otra mejora fue el shell de DOS, controlado mediante menús. En fin, esta versión no se utilizó con amplitud. MS-DOS Versión 5.0 Fue anunciada en 1991, fue la primera versión que hacía un uso serio de la memoria extendida, de la que muchos poseedores de 286 y 386 tenían varios megabytes. Aún con la restricción de que los programas no podían exceder los 640K, al menos tenía la capacidad de colocar la mayoría del propio MS-DOS en la memoria extendida, de modo que cerca de 600K de los 640K inferiores estaban disponibles para los programas del usuario. Además, los manejadores de dispositivos escritos por el usuario también se podrían colocar en la memoria extendida. MS-DOS 5.0 también podía utilizar la memoria entre los 640K y 1M de las máquinas 386 para los manejadores de dispositivos y ciertas utilerias. También proporcionó un nuevo shell, con la capacidad de tener varios programas en la memoria al mismo tiempo. 5.0 también venía con un amplio programa de ayuda (HELP), para auxiliar a los nuevos usuarios.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 38

Page 44: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Panorama de MS-DOS

Uso de MS-DOS Existe un shell, comand.com, un sistema de archivos, llamadas al sistema, programas de utilerías y otras características. Para utilizar MS-DOS sólo hay que encender la computadora. Unos segundos después, aparece el indicador del shell. Por la razón de que la máquina es utilizada por una única persona, los archivos y directorios no tienen propietarios y no existen bits de protección. Para ejecutar un programa, se escriben su nombre y argumentos en el shell. Los comandos de MSDOS se dividen en dos categorías: internos y externos. Los internos se ejecutan por el propio shell, los externos son auténticos programas, que, por lo general, se encuentran en el directorio /dos o /bin. En MS-DOS, muchas de las utilerías de más uso son comandos internos del shell. En total existen 40 comandos internos. La construcción de tantos comandos dentro del shell representa una situación contradictoria. Por un lado, el hecho de no tener que buscarlos en un disco lento los hace más rápidos. Puesto que la PC DE IBM original no tenía un disco duro. Por otro lado, todo ese código hace que el shell sea más grande. En MS-DOS, la línea de comandos se transfiere de manera literal al programa. MS-DOS 5.0 tiene un programa doskey que se puede instalar con el fin de registrar y guardar en un buffer todas las combinaciones de teclas. Su función es permitir la repetición de comandos, con o sin edición. Por ejemplo, al oprimir la tecla F7, doskey exhibe una lista de los comandos más recientes. Se puede seleccionar uno de ellos mediante la tecla F9. El comando se puede volver a ejecutar de manera directa, o bien editarlo y volverlo a ejecutar. Formas de ingresar al MS-DOS del sistema.

Hay tres formas de ingresar al MS-DOS de nuestro sistema las cuales las detallamos a continuación. A. Primera forma.

1. Clic en el botón de inicio. 2. Seleccionamos Todos los programas. 3. Abrimos la carpeta de Accesorios. 4. Escogemos Símbolo del sistema.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 39

Page 45: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

B. Segunda forma.

1. Clic en el botón de inicio. 2. Clic en buscar. 3. Digitamos CMD y enter.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 40

2

2

Page 46: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo C. Tercera forma.

1. Presionamos una combinación de teclas (Windows+R) 2. Se nos presenta una pequeña ventana de dialogo en la cual digitamos CMD y presionamos enter.

Al realizar cualquiera de estas tres acciones se nos desplegara la siguiente venta.

En la cual comenzaremos a trabajar con los diferentes comandos que mencionaremos a continuación.

Caracteres de interacción (PROMPT)

El prompt del sistema identifica la unidad por omisión, la unidad donde el MS-DOS busca los archivos, también se le llama carácter de interacción o indicador de comandos, y es lo que emplea el MS-DOS para indicar que está pidiendo que introduzca un comando.

Ej:

C:\>_

A:\>_

Tipos de archivos

Se consideran tres tipos:

1. Archivos de Texto: Contiene información que se puede ver. Por ejemplo procesadores de texto (que no tengan extensiones COM y EXE).

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 41

Page 47: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 2. Archivos de Datos: Contiene información que puede ser leída por un programa, pero no por una

persona. No tienen extensiones COM o EXE. 3. Archivos de Programas: Contienen programas que la computadora puede ejecutar. Tienen

extensiones COM y EXE. Nombres de archivos y extensiones

Un archivo puede tener un nombre formado por hasta ocho caracteres de longitud, ya sean letras o números. Se puede añadir un sufijo – denominado extensión - al nombre del archivo para describir su contenido con más precisión. La extensión puede tener una longitud de hasta tres caracteres, y es necesario que exista un punto entre el nombre y la extensión del archivo.

Ej:

INFORME.ENE

INFORME.FEB

INFORME.MAR

Extensiones especiales Nombre Significado para el MS-DOS

BAT Abreviatura de Batch. Identifica un archivo de texto que contiene un conjunto de comandos del MS-DOS que se ejecutan al escribir el nombre del archivo

COM Abreviatura de Command. Identifica un archivo de comandos que contiene un programa que el MS-DOS ejecuta cuando se escribe el nombre del archivo

EXE Abreviatura de Executable. Al igual que Com, identifica un archivo de comandos que contiene un programa que el MS-DOS ejecuta cuando se escribe el nombre del archivo

HLP Abreviatura de Help. Contiene un archivo de texto de ayuda usado por algunos programas, incluidos el Shell del MS-DOS y el editor de las versiones 5 y 6 del MS-DOS

OVL Abreviatura de Overlay. Identifica un archivo de comando que contiene parte de un programa de gran tamaño

SYS Abreviatura de System. Identifica un archivo de uso exclusivo del Ms-DOS

Comandos del MS-DOS

Las instrucciones que le damos al MS-DOS se llaman comandos, usándose generalmente las teclas: enter, retroceso y las direccionales.

Comandos internos

Los comandos internos o residentes son aquellos que se transfieren a la memoria en el momento de cargarse el Sistema Operativo y se pueden ejecutar sin necesidad de tener el DOS presente en la unidad por defecto desde el cual se puede ejecutar el mandato. La unidad por defecto es la unidad en

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 42

Page 48: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo la que se está, por ejemplo A:\>_ ; y la unidad especificada es aquella a la cual nos dirigimos o especificamos estando en otra unidad, por ejemplo A:\>B: , la unidad especificada es B.

Los comandos internos se encuentran almacenados en un archivo llamado COMMAND.COM. Algunos de los comandos internos son:

COMANDO FUNCIÓN EJEMPLO

CD Cambiarse a un directorio determinado

C:>CD LIBRO

CLS Limpia la pantalla C:>CLS

Dir Muestra los archivos y

subdirectorio a otro disco de trabajo.

C:>Dir

Copy Copia a un archivo de un directorio a otro o de una unidad de almacenamiento a otro

C:>Copy dibujame.doc

Date Muestra la fecha y permite actualizar

C:> date

Del Borra un archivo del disco de

C:>del dibujame. Doc

trabajo

MD Crea un directorio en el disco duro de trabajo

C:>MD libro

Move Mueve o reubica archivos C:>move dibujo

Comandos externos

Los comandos externos en contracción con los mandos internos se almacena en archivos de comandos denominados transitorios o externos, y para ejecutarse necesitan de estos archivos, además de los comandos externos tienen nombre propio y se pueden copiar de un disco a otro.

ATTRIB - Sin parámetros, visualiza los atributos de los directorios y archivos. Con parámetros, cambia los atributos de directorios y archivos.

Los atributos de los directorios, y los ficheros son: de lectura (r), de escritura (w), de archivo (a), oculto (h), de sistema (s). Parámetros: signos (más o menos) y letras r, w, a, y h "v". Ejemplo: Attrib +r *.* (atributo de sólo lectura, para todos los ficheros de ese directorio)

APPEND - Sirve para especificar trayectorias para ficheros de datos.

BACKUP - Ejecuta una copia de seguridad de uno o más archivos de un disco duro a un disquete.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 43

Page 49: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo CHKDSK - Verifica si hay errores en el disco duro. (También se puede utilizar para corregirlos con el parámetro "/F")

DELTREE - Borra un directorio sin importar que contenga subdirectorios con todos sus contenidos.

DISKCOMP - Tras realizar una copia de disquetes podemos realizar una verificación, para ver si ha copiado todos los contenidos, comparando. Este comando compara discos o disquetes.

DISKCOPY - Permite hacer una copia idéntica de un disquete a otro, pertenece al grupo de las órdenes externas.

DOSKEY - Permite mantener residentes en memoria RAM las órdenes que han sido ejecutadas en el punto indicativo.

FC - Compara ficheros.

FORMAT - Permite crear la estructura lógica, en una unidad física de almacenamiento (discos duros, disquetes y unidades de almacenamiento masivo).

PRINT - Permite imprimir ficheros.

Se pueden utilizar estos parámetros combinados.

KEYB - Establece el idioma del teclado según el parámetro adicionado (Ejemplo: KEYB SP para el teclado español). LABEL - Muestra o cambia la etiqueta de la unidad de disco duro.

MEM - Muestra la memoria RAM, el espacio ocupado y el espacio libre.

MOVE - Mueve o cambia de posición un directorio y/o ficheros. También renombra subdirectorios.

SUBST - Crea una unidad lógica virtual a partir de un directorio.

TREE - Muestra los directorios en forma de árbol.

SISTEMA OPERATIVO MULTIUSUARIO UNIX El sistema Unix es un sistema operativo que admite múltiples usuarios, así como también múltiples tareas, lo que significa que permite que en un único equipo o multiprocesador se ejecuten simultáneamente varios programas a cargo de uno o varios usuarios. Este sistema cuenta con uno o varios intérpretes de comando (shell) así como también con un gran número de comandos y muchas utilidades (ensambladores, compiladores para varios idiomas, procesador de textos, correo electrónico, etc.). Además, es altamente transportable, lo que significa que es posible implementar un sistema Unix en casi todas las plataformas de hardware. Actualmente, los sistemas Unix se afianzaron en entornos profesionales y universitarios gracias a su estabilidad, su gran nivel de seguridad y el cumplimiento de estándares, especialmente en lo que se refiere a redes.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 44

Page 50: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

La historia de los sistemas UNIX

El primer sistema "Unix" fue desarrollado en 1965 por Ken Thompson en los laboratorios de Bell AT&T en Murray Hill, Nueva Jersey, Estados Unidos. El objetivo de Ken Thompson era desarrollar un sistema operativo interactivo simple, denominado "Multics" (Multiplexed Information and Computing System [Sistema informático y de Información Multiplexado]) de manera que pudiera ejecutar un juego que él mismo había creado (Space Travel [Viaje al espacio], una simulación de un sistema solar). Luego, alrededor de Multics se formó un consorcio compuesto por el MIT(Massachesetts Institute of Technology), la compañía General Electric Co. y los laboratorios Bell Lab. En abril de 1969 los laboratorios AT&T decidieron utilizar el GECOS (General Electric Comprehensive Operating System [Sistema Operativo Completo General Electric]) en lugar de Multics. Sin embargo, Ken Thompson y Dennis Ritchie, quien se había unido al equipo, necesitaban hacer funcionar el juegoSpace Travel (Viaje al espacio) en una máquina más pequeña (un DEC PDP7,Procesador de Datos Programados que sólo tenía una memoria de 4K para hacer que se ejecutaran los programas del usuario). Por este motivo, ellos rediseñaron el sistema para crear una versión limitada de Multics, denominadaUNICS (UNiplexed Information and Computing Service [Servicio informático y de Información UNiplexado]), convenientemente abreviado: Unix. La fecha del 1 de enero de 1970 es considerada la fecha de nacimiento del sistema UNIX, lo que explica por qué todos los relojes del sistema en los sistemas operativos de Unix comienzan con esta fecha. Además de estas actividades, D. Ritchie jugó un papel muy importante en la definición del lenguaje C (ya que él es considerado uno de sus creadores junto con B. W. Kernighan). Así el sistema entero fue completamente reescrito en C en 1973 y se denominó Unix Time-Sharing System (Sistema de Tiempo Compartido Unix) (TSS). Cuando el sistema pasó a la versión 7 en 1979, su desarrollo fue acompañado de notables modificaciones, tales como:

• la extracción de las limitaciones relacionadas con el tamaño de los archivos, mejor portabilidad del sistema (que opera en varias plataformas de hardware), la inclusión de varias utilidades.

Un decreto que data del año 1956 impidió que la compañía AT&T, a la que pertenecía Bell Labs, comercializara cualquier otro producto que no fuesen teléfonos o equipos de telégrafo. Es por este motivo que se tomó la decisión, en el año 1973, de distribuir el código fuente de UNIX en las universidades, con fines educativos. Para fines del año 1977, investigadores de la Universidad de California desarrollaron otra versión Unix a partir del código fuente provisto por AT&T para poder ejecutar el sistema en su plataforma VAX y lo denominaron BSD, que significa Berkeley Software Development (Desarrollo del Software Berkeley). De esta forma se conformaron dos ramas de desarrollo para el código fuente:

• La rama de AT&T que se convertiría en Sistema V de los Laboratorios del Sistema UNIX (USL) • La rama de BSD (Berkeley Software Development [Desarrollo del Software Berkeley]), desarrollado

por la Universidad de California. En 1977, AT&T puso el código fuente de UNIX a disposición de otras compañías, a pesar de que se desarrollaron muchos sistemas similares a UNIX:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 45

Page 51: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo • AIX, Unix comercial basado en el Sistema V desarrollado por IBM en febrero de 1990 • Sun Solaris, Unix comercial basado en el Sistema V y en BSDdesarrollado por SUN Microsystems • HP-UX, Unix comercial basado en BSD desarrollado por Hewlett Packard a partir de 1986 • Ultrix, Unix comercial desarrollado por DEC • IRIX, Unix comercial desarrollado por SGI • Unixware, Unix comercial desarrollado por Novell • Unix SCO, Unix comercial basado en el Sistema V desarrollado por Santa

Cruz Operations y Hewlett Packard a partir de 1979

• Tru64 UNIX, Unix comercial desarrollado por Compaq En 1983, AT&T tuvo el derecho de comercializar su Unix, lo que marcó la aparición del Sistema UNIX V, la versión comercial de su sistema Unix. En 1985, un profesor holandés llamado Andrew Tannenbaum, desarrolló un sistema operativo mínimo denominado Minix, con el objetivo de poder enseñarles a sus alumnos la programación de sistemas. En 1991, un estudiante finlandés, Linus Torvalds, decidió diseñar, basándose en el modelo Minix, un sistema operativo capaz de ejecutar 386 tipos de arquitecturas. Este sistema operativo se denominó "Linux" y mostraba el siguiente mensaje en el foro de discusión comp.os.minix: Hola a todos los que están utilizando minix – Estoy diseñando un sistema operativo gratuito (se trata sólo de un pasatiempo, no será gigante y profesional como gnu) para clones AT 386 (486). A continuación le mostraremos un diagrama no exhaustivo que muestra nuevamente la apariencia general de los principales sistemas Unix:

El estándar UNIX

Si tenemos en cuenta el gran número de sistemas Unix desarrollados basados en el sistema de AT&T o en el de BDS, la pregunta acerca de un estándar Unix ha estado presente desde 1981 en el foro de discusión /etc/group, de manera que se pueda asegurar la máxima portabilidad entre los sistemas: • en 1983, AT&T publicó SVID (System V Interface Definition [Definición de la Interfaz del

Sistema V]) que describe al Sistema V. La primera definición es diferente de la POSIX

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 46

Page 52: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo • en 1984 el grupo /etc/group publicó POSIX, una serie de estándares desarrollados a través de

IEEE (Institute of Electrical and Electronics Engineers, [Instituto de Ingeniería Eléctrica y Electrónica]). Por lo tanto, POSIX también es conocido por el nombre IEEE P1003.

• en la misma época, un consorcio de fabricantes (Sun, IBM, HP, DEC, AT&T, Unisys, ICL, etc.) publicó el estándar X/Open Portability Guide Issue 3 (XPG3). Este estándar trata, en particular, los diferentes temas relacionados con la localización geográfica (fechas, alfabeto, etc.).

Comandos principales de UNIX

Tabla de los comandos principales de UNIX

Comandos de Unix

Descripción

Opciones

ls Muestra las listas de los contenidos de un directorio

-a Muestra todos los archivos,

incluyendo los archivos ocultos

-I Muestra una lista detallada

-R

Muestra los archivos repetidos (es decir, en las subcategorías)

d Muestra sólo los directorios pero no su contenido

-S

Realiza la clasificación por tamaño

-t Realiza la clasificación en base a la fecha de la última modificación

-t Realiza la clasificación de acuerdo a la versión

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 47

Page 53: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

-X

Realiza la clasificación por orden alfabético de la extensión

-r Realiza la clasificación de acuerdo al orden inverso

cd Cambio de directorio

cd Retorno al directorio del usuario

cd - Retorno al directorio anterior

cd ..

Retorno al directorio superior

medir Creación de un nuevo directorio

rmdir Eliminación de un directorio -f Eliminación forzada

-R

Eliminación recurrente (es decir, en el directorio y en sus

subcategorías)

cp Copia de un archivo Cop

y, xcopy

mv Mover un archivo Mover

rm Eliminar un archivo -f Eliminación forzada

-R

Eliminación recurrente (es decir, en el directorio y en sus subcategorías)

pwd "Directorio de trabajo de impresión": muestra la ruta actual de todo el directorio del trabajo en curso.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 48

Page 54: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

passwd Cambia la contraseña del usuario

cat Combina dos archivos y muestra el resultado en el estándar de salida

cat

más Muestra el contenido del archivo con pausas

archivo Muestra el supuesto tipo de archivo especificado

man apropos

Ayuda para el comando solicitado

lpr Imprime el archivo solicitado

chmod Cambia el atributo de un archivo

chmod XXX file XXX= Usuario|Grupo|Otro en el que X es un número entero entre 1 y 7

Lectura = 4, Escritura = 2, Ejecución = 1

X= Lectura + Escritura + Ejecución

chfn Cambia la información personal vista Finger

chsh Cambia la shell: chsh user emplacement_du_shell

limpiar Limpia las líneas que se muestran en la terminal

finger, who Hace una lista de usuarios en línea

traceroute Traza la ruta entre la máquina local y la máquina de destino

ping Herramienta de diagnóstico que hace posible comprobar si una máquina responde en la red

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 49

Page 55: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

ftp[máquina] [puerto]

obtener poner salir

Transferencia de archivos entre la máquina local y la máquina de destino

Recupera un archivo

Envía un archivo

Sale de la sesión FTP

ftp

telnet [máquina]

Ejecuta una aplicación telnet telnet

hablar Hace posible la conversación con un usuario conectado

Hablar con usuario

mesg Autoriza o rechaza las conversaciones por comandos

mesg n : Evita la recepción de mensajes de voz mesg y : Permite la recepción de mensajes de voz

salir Desconectarse

UNIDAD 3 ELECTRÓNICA BÁSICA

SÍMBOLOS Y COMPONENTES.

Esto para empezar, obviamente no son todos los símbolos y los componentes que existen pero sí los que nos interesan para poder iniciarrnos en el tema. Aquí, una breve descripción...

Aunque parezca una broma, eso te servirá de mucho si recién te inicias en esto, de ahora en más cada símbolo irá acompañado del aspecto real del componente.

Interruptor No necesita descripción, de todos modos aprende a utilizarlo...!.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 50

Page 56: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Transformador Otro accesorio. Sólo es un bobinado de cobre, por ahora, nos quedamos con que nos permite disminuir la tensión, en

nuestro caso de 220 Volt a 5V, 12V, 24V, etc.

LED (Diodo Emisor de Luz), los hay rojos, verdes, azules, amarillos, también infrarrojos, láser y otros. Sus terminales son ánodo

(terminal largo) y cátodo (terminal corto).

Diodo Al igual que los LED's sus terminales son ánodo y cátodo (este último, identificado con una banda en uno de sus lados), a diferencia

de los LED's éstos no emiten luz.

Resistencias o Resistores Presentan una cierta resistencia al paso de la corriente, sus valores están dados en Ohmios, según un

Código de colores.

Potenciómetros Son resistencias variables, en su interior tienen una pista de carbón y un

cursor que la recorre. Según la posición del cursor el valor de la resistencia de este componente cambiará.

Fotocelda También llamada LDR. Una fotocelda es un resistor sensible a la luz que incide en ella. A mayor luz menor resistencia, a

menor luz mayor resistencia.

Capacitor de cerámica Estos pueden almacenar pequeñas cargas eléctricas, su valor se expresa en picofaradios o nanofaradios, según un código establecido, no distingue sus terminales por lo que no

interesa de que lado se

conectan.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 51

Page 57: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Condensador ó Capacitor electrolítico Estos almacenan más energía que los anteriores, eso sí, se debe respetar la polaridad de sus terminales. El más corto es el negativo. o bien, podrás

identificarlo por el signo en el cuerpo de

componente.

Transistores Cómo lo digo...! Básicamente un transistor puede controlar una corriente muy grande a partir de una muy pequeña. muy común en los amplificadores de audio. En general son del tipo NPN y

PNP, que es eso?, no desesperes que pronto se aclararán tus dudas, sus terminales son; Colector, Base y Emisor.

SCR o TIC 106 Son llaves electrónicas, y se activan mediante un pulso positivo en el terminal G. muy común en sistemas de alarma.

Sus terminales son Ánodo, Cátodo y Gatillo.

Circuitos Integrados (IC) Un Circuito Integrado (IC) contiene en su interior una gran variedad de componentes en miniatura. Según el IC.

de que se trate tendrá distintas funciones o aplicaciones, pueden ser amplificadores, contadores, multiplexores, codificadores, flip -flop, etc. Sus

terminales se cuentan en sentido opuesto al giro de las agujas del reloj tomando un punto de referencia.

Relé Básicamente es un dispositivo de potencia, dispone de un electro imán que actúa como intermediario para activar un interruptor,

siendo este último totalmente independiente del electro-imán.

HERRAMIENTAS FUNDAMENTALES (PROTOBOARD O PLACA DE PRUEBAS).

En realidad no necesitas demasiado, de todos modos te mostraré un par de ellas. Una de las herramienta que utilizaremos de tiempo completo será La placa de pruebas, conocida también como protoboard, te permitirá insertar en ella casi todos los componentes siempre y cuando

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 52

Page 58: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo los terminales no dañen los orificios de la misma, de lo contrario no te será de gran ayuda, pero como para todo existe una solución, puedes soldar un alambre fino de cobre en los terminales de gran espesor, como en los SCR, los potenciómetros, los interruptores, pulsadores, y otros.

Y aquí está..., en lo posible consigue cables finos de teléfono para realizar los puentes de unión, son los que más se adaptan a los orificios de la placa, bienen en una gran variedad de colores, los puedes conseguir de 24 hilos de 10, de 8 y bueno... en las casas de electricidad te podrán asesorar.

Esto es lo que se encuentra por dentro. Las líneas horizontales son las que puedes utilizar para identificar las conexiones a los polos positivo y negativo, fíjate en la imagen anterior que estas líneas están marcadas, con respecto a las verticales, cualquier terminal que conectes en una línea de estas estarán unidos entre sí.

Otra de las herramientas que necesitaras será una batería (esas de 9 volt vienen bien), o con un par de pilas secas bastaría, de todos modos puedes armar tu propia fuente de alimentación.

Sería bueno que consigas un multímetro, multitester o tester, como lo quieras llamar, te será de gran utilidad para saber el estado de un componente, si éste se encuentra en condiciones o no, para verificar las fallas en tus circuitos, medir tensiones, resistencias, etc.

CÓDIGO DE COLORES PARA RESISTENCIAS.

El valor de los resistores se puede identificar por los colores de las 4 bandas que rodean al componente, una de ellas es llamada tolerancia, es algo así comooooo... el error de fabricación, esta banda puede ser dorada o plateada, yo utilizaré la dorada. La pregunta es. ¿Cómo se leen las otras tres...? Lo describiré con un ejemplo

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 53

Page 59: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Veamos el valor de este resistor; La primer banda es el primer dígito y es café=1, La segunda es el segundo dígito negra=0 Y la tercera es la cantidad de ceros roja=dos ceros. Entonces su valor será: 1000 ohm o sea 1 kilo o 1k, si tendría 1000000, seria 1 Mega o 1M. ¿Fácil no...?. Es decir que para una resistencia de 70 ohm sus colores deberían ser violeta, negro y negro. Eso es todo...Ahora vamos por las primeras prácticas... SOLDADURA ELÉCTRICA (TIPO CAUTIN) Como Soldar Soldar no es mas que unir dos metales de forma que queden físicamente unidos; electrónicamente hablando, no es más que la creación de un punto de conexión eléctrica. A la zona de unión se añade estaño fundido el cual, una vez enfriado, constituye la unión. Para soldar necesitamos básicamente las dos partes a unir, un soldador y estaño. Soldador Hay muchos tipos de soldador, pero para soldadura electrónica la opción es clara: tipo Lápiz. La punta es fina, lo cual facilita las soldaduras pequeñas y precisas. Cuando compres un soldador, la característica básica que debes tener en cuenta es su potencia. Para soldadura electrónica de 15 a 25 W es lo recomendado, más potencia es innecesaria y solo te ayudará a ponerte más nervioso por el calor, sobre todo cuando estés aprendiendo. Para empezar, cualquier modelo genérico de esa potencia te sirve. Con genérico me refiero a un soldador de marca desconocida que es simplemente eso, un soldador .Comprueba la potencia y que la punta sea fina y tenga forma de lápiz. Si más adelante le coges practica y sigues soldando, puedes adquirir un soldador de calidad, como Weller (recomiendo uno de 25 w) Soldador Generico

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 54

Page 60: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Soldador Recomendado (Weller)

Incluyo también en este apartado un accesorio barato y realmente útil que te gustara tener: un soporte para el soldador. La punta del soldador puede estar a una temperatura de unos 350º C, probablemente no quieres tener eso suelto encima de la mesa. No sería la primera vez que alguien no demasiado acostumbrado a soldar tantea con la mano en la mesa buscando un destornillador y lo que encuentra es el soldador... donde compres el soldador te pueden vender soportes del estilo del de la foto:

Estaño Lo que llamamos ―estaño‖ no es realmente estaño sin más; es una aleación de estaño y plomo (la proporción mas adecuada normalmente es de 60% y 40 % respectivamente). Para hacer buenas soldaduras se necesita además de estaño, ―resina‖ o ―pasta de soldar‖. En la mayoría de los casos ya viene añadida en el estaño, por lo que no hay que preocuparse por ello.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 55

Page 61: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

En la etiqueta del rollo de estaño de la imagen podemos ver dos caracteristicas importantes:

• La composición, de la que te hablé antes. Sn62Pb36Ag2 significa que ese hilo de estaño tiene un 62% de Estaño, un 36% de Plomo y un 2% de plata. A mí personalmente ésta composición me da buenos resultados.

• El diámetro del hilo, 0.5 mm en este caso. Mi recomendación es que uses hilo cuyo diámetro esté comprendido entre 0.5 y 1 mm, es lo más cómodo.

Procedimiento Poner las dos partes a unir en contacto. Soldar al aire Ahora hay que aplicar el soldador. Como las dos partes a soldar están en contacto, debe resultarnos fácil aplicar la punta del soldador y calentar ambas partes por igual. Ahora es cuando debes gastar cuidado: las dos partes se van a calentar poco a poco, casi alcanzando la temperatura de la punta del soldador. Entonces aplicamos el estaño a la unión, intentando que sean las partes a unir las que fundan el hilo de estaño, y no el soldador. Debemos aplicar el estaño adecuado a la unión (la experiencia te dirá cuanto), unos 3 O 4 mm del hilo de estaño suelen dar uniones correctas. Mientras aplicas el estaño, fíjate como el estaño fundido se distribuye por la unión, y mueve la punta del estaño si es necesario para ayudar a que se distribuya. Entonces, retira el estaño y seguidamente retira el soldador. Error típico de novato: soplar. NO se sopla una soldadura, debe enfriarse sola; si soplas la soldadura será quebradiza y de mala calidad. Seguro que puedes esperar 3 o 4 segundos a que el estaño se enfríe solo. 1. Mantener las piezas unidas y firmes.

2. Calentar ambas partes con el Cautin.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 56

Page 62: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

3 Aplicar estaño en la unión, intentando que sea fundido por las partes, no por el Cautin

4. Retirar estaño y Cautin, por ese orden. NO soples

EJEMPLOS

Antes de comenzar quiero aclarar algo... En todas estas prácticas voy a suponer que la corriente eléctrica fluye desde el polo positivo (+) hacia el negativo (-). Aunque en verdad es a la inversa.

Diodos LED's.

El primer circuito, será para ver como encender un LED, recuerda lo de sus terminales, el mas largo (ánodo) apunta al polo (+), el corto (cátodo) al negativo (-), si por alguna razón los terminales son iguales, o lo sacaste de un circuito en desuso, puedes identificar el cátodo por un pequeño corte en la cabeza del componente. R1 es una resistencia de 220 ohm que hace de protección para el LED, puedes usar otras de mayor valor para ver que ocurre.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 57

Page 63: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Montado en la placa de prueba, te debería quedar algo así...

DIODOS.

Los diodos permiten que la corriente circule en un sólo sentido. Un Diodo al igual que un LED necesita estar correctamente polarizado. El cátodo se indica con una banda que rodea el cuerpo del componente.

Como no todo está demás podemos utilizar el circuito anterior como un probador de diodos (así de paso vamos armando nuestras propias herramientas).

Según el gráfico el diodo conduce correctamente y el LED se enciende, no así si inviertes el diodo.

Su mayor aplicación se encuentra en las fuentes de alimentación.

Por cierto el utilizado aquí, es un diodo común del tipo 1N4004, prueba con otros, por ejemplo el 1N4148.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 58

Page 64: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Potenciómetros...

Se los encuentra en casi todo aparato electrónico, un ejemplo es el control de volumen de los equipos de audio. En este circuito lo usaremos para controlar el brillo del LED.

Ahora bien, los extremos A y B del potenciómetro son indistintos ya que la resistencia entre ambos es constante y en nuestro circuito es de 100 k, mientras que la resistencia entre cualquier extremo y el cursor C depende de la posición de este último, pero su máxima resistencia será 100 k. Si utilizas los contactos A y C, al girar el eje en sentido horario, la resistencia aumentará entre estos dos puntos. Prueba utilizar B y C.

Te propongo un pequeño desafío...Intenta armar un circuito con dos LED's de tal modo que al girar el cursor del potenciómetro la intensidad de luz aumente en uno, mientras disminuye en el otro. Fotocelda o LDR...

Muy común en cámaras fotográficas, lo que hacen es mediante el circuito adecuado desactivar el flash cuando hay suficiente luz.

En este ejemplo, totalmente funcional si cubres parcial o totalmente la superficie de la fotocelda verás los cambios en el brillo del LED. A más luz incidente, menor será su resistencia, habrá mayor flujo de corriente y mayor será el brillo del LED.

No hay distinción entre sus terminales. Para conseguirla dirígete a cualquier casa de electrónica y pídela como LDR ó fotocelda y elige el tamaño que más te guste.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 59

Page 65: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Condensadores o Capacitores Electrolíticos.

Como habrás notado, no haré referencia a los capacitores de cerámica por ahora ya que almacenan muy poca energía de todos modos lo veremos más adelante. Vamos entonces con los Capacitores Electrolíticos Estos almacenan más energía que los anteriores, eso sí debes respetar la polaridad de sus terminales. El terminal más corto es el negativo.

Qué pasa si lo saco de un circuito en desuso?. Fácil..., podrás identificarlo por el signo en el cuerpo de componente, como verás los fabricantes pensaron en todo.

Montemos el siguiente circuito...

Conectemos la fuente y veamos que ocurre..., de acuerdo, no ocurre nada, solo se enciende el LED. Te lo explicaré brevemente.

La corriente que parte de la batería fluye por R1 hacia el nodo, donde se encuentra R2 y el capacitor C1. Aquí comienza a cargarse el Capacitor, una vez cargado, se encenderá el LED, te preguntarás para que me sirve esto...?, desconecta la fuente y obtendrás la respuesta.

Si todo va bien, el LED permanecerá encendido por un cierto tiempo gracias a la energía almacenada en el capacitor, a medida que ésta se agote el brillo del LED disminuirá.

Veamos esto un poco más en detalle

La carga del capacitor depende de su capacidad de almacenamiento, (dado en microfaradios), por otro lado... esa carga se agota a través de R2 o sea que el tiempo de descarga también depende de R2. Así es como llegamos a los conocidos circuitos de tiempo RC (resistencia-capacitor) Conclusión; la energía almacenada depende del valor de C1, el tiempo en que éste se carga de R1 y el tiempo en que esta energía se agote del producto C.R2. Para interpretarlo mejor, cambia los valores de R1, R2, C1 y luego observa los cambios...

Transistores.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 60

Page 66: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Los transistores tienen aplicación en muchísimos circuitos, por lo general son utilizados en procesos de amplificación de señales (las que veremos ahora) y también en circuitos de conmutación a ellos le dedicaremos un lugar especial.

Estos componentes vienen en dos tipos, los NPN y los PNP, no entraré en detalle respecto al nombre ya que podrás notar las diferencias en los circuitos de aplicación, pero sí quiero aclarar algo... Sus terminales...!!! Cada transistor tiene una disposición distinta, según el tipo de que se trate y las ocurrencias de su fabricante, por lo que necesitarás un manual para identificarlos. Uno bastante bueno es el que se encuentra en www.burosch.de (de la mano de su creador...!!!). Ejecutable en una ventana de DOS, imperdible...!!! no requiere instalación, sólo lo descomprimes y ejecutas IC.exe... Continuemos... veamos ahora estos dos transistores en modo amplificador...

Transistores NPN.

En este ejercicio puedes utilizar uno de los dos transistores que se indican en la siguiente tabla, los dos son del tipo NPN con su respectiva disposición de terminales.

El circuito que analizaremos será el siguiente...

Cuando acciones S1 llegará una cierta cantidad de corriente a la base del transistor, esta controlará la cantidad de corriente que pasa del Colector al Emisor, lo cual puedes notar en el brillo de los LED's. Este es el famoso proceso de AMPLIFICACIÓN.

Como puedes imaginar, a mayor corriente de base mayor corriente de colector. Prueba cambiar R2.

Transistores PNP.

Aquí utilizaremos uno de los dos transistores que se encuentran en el siguiente cuadro.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 61

Page 67: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

En estos transistores, para obtener el mismo efecto que el anterior, su base deberá ser ligeramente negativa. Observa que en este esquema tanto los LED's como la fuente fueron invertidos.

Nuevamente la corriente de base controla la corriente de colector para producir el efecto de AMPLIFICACIÓN. Estarás pensando ¿para qué lo necesito si con el anterior me basta...?, No es tan así. En muchos casos necesitarás hacer una amplificación y sólo tendrás una pequeña señal negativa. Para entonces, aquí está la solución.

Los Circuitos Integrados (IC).

Esto comienza a ponerse interesantes... Por lo general los esquemas no reflejan la verdadera disposición de sus pines o terminales, así es que para saber cual es el primero y el último observa el siguiente gráfico

Como verás el integrado en cuestión es un 555, o bien NE555. Se trata de un temporizador (TIMER), utilizado como un generador de pulsos, y la frecuencia de éstos puede variar de 1 pulso por segundo hasta 1 millón de pulsos por segundo, sorprendente verdad?

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 62

Page 68: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Bueno, pero veamos que ocurre aquí; Como necesitamos ver el efecto del circuito le pusimos como siempre un LED y una resistencia R3 conectadas al pin 3 del 555 (IC1), que justamente es el pin de salida.

Observa la polaridad de la fuente respecto al LED..., te habrás dado cuenta que la única forma de encenderlo es que el pin 3 de IC1 sea negativo. Y lo será..., observa la onda rectangular de los pulsos de salida..., cuando esté arriba será (+) o 1, y el LED estará apagado. Cuando esté abajo será (-) o 0, entonces el LED se encenderá. Según la señal de salida el LED encenderá de forma alternada. Veamos los otros componentes; R1, R2 Y C1 forman una red de tiempo. El capacitor C1 se cargará a través de R1 y R2, del otro lado el 555 espera impaciente que termine de hacerlo, y cuando lo logre lo reflejará en su terminal de salida (pin 3), y he aquí el pulso que produce la descarga del capacitor. Ahora sí..., ya estamos listos para la siguiente carga que generará el segundo pulso. Veamos que modificaciones podemos hacerle al circuito.

En este esquema marqué los puntos A y B, allí puedes conectar un pequeño parlante (como los de PC), ahora cambia C1 por un capacitor de cerámica (el que tengas a mano, cualquiera va bien), intercala un potenciómetro de 100k entre R2 y el pin 6. Si haces esto obtendrás un generador de sonido. Otra cosa que puedes hacer es agregarle otra resistencia igual a R3 y un LED más entre los puntos B y el polo negativo de la fuente, pero invertido, y obtendrás algo así como un semáforo, claro... si un LED es rojo y el otro verde.

En fin, son muchos los cambios que le puedes hacer y los resultados obtenidos son muy llamativos.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 63

Page 69: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

UNIDAD 4 MANTENIMIENTO DE COMPUTADORAS INTRODUCCION

Depende de diversos factores: la cantidad de horas diarias de operación, el tipo de actividad (aplicaciones) que se ejecutan, el ambiente donde se encuentra instalada (si hay polvo, calor, etc.), el estado general (si es un equipo nuevo o muy usado), y el resultado obtenido en el último mantenimiento. Una PC de uso personal, que funcione unas cuatro horas diarias, en un ambiente favorable y dos o menos años de operación sin fallas graves, puede resultar aconsejable realizar su mantenimiento cada dos o tres meses de operación, aunque algunas de las actividades de mantenimiento pudieran requerir una periodicidad menor.

Recomendaciones de seguridad

Antes de manipular cualquier COMPUTADOR es importante tener en cuenta las siguientes medidas de seguridad.

¡ATENCION!

• No portar anillos ni joyas • Utilizar manilla antiestática • Utilizar las herramientas adecuadas y organizada • Mantener aseado el lugar de trabajo • Organizar los componentes desarmados en secuencia

MANTENIMIENTO PREVENTIVO Y CORRECTIVO

Gran parte de los problemas que se presentan en los sistemas de cómputo se pueden evitar o prevenir si se realiza un mantenimiento periódico de cada uno de sus componentes. Se explicará cómo realizar paso a paso el mantenimiento preventivo y correctivo a cada uno de los componentes del sistema de cómputo incluyendo periféricos comunes.

Se explicarán también las prevenciones y cuidados que se deben tener con cada tipo.

Limpiar adecuadamente su PC le debe tomar aproximadamente entre 1hora y 1½ horas, así que asegúrese de tener este tiempo disponible.

Antes de comenzar el proyecto de limpiar su PC, desenchufe la PC, espere a que todo el sistema se "enfríe" por unos minutos hasta temperatura ambiente. Asegúrese de tener los materiales adecuados.

Dependiendo del ambiente en que opere su computadora puede determinar cuán periódico debe llevar a cabo la limpieza de la misma.

Veamos algunos ejemplos de ambientes:

Usuario que no fuma y que no tiene mascotas - cada cinco meses.

Usuario que no fuma y que tiene mascotas - cada cuatro meses.

Usuario que fuma y no tiene mascotas - cada tres meses.

Usuario que fuma y tiene mascotas - cada dos meses. Negocio con un ambiente de oficinas limpio - cada cinco meses.

Negocio con un ambiente de oficinas limpio; pero muchos usuarios para cada PC - cada tres meses.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 64

Page 70: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Negocio que es una fábrica o que permite fumar - cada dos meses.

Escuela de jóvenes adultos - cada tres meses.

Escuelas de niños o adolescentes - mensualmente.

Mantenga la PC libre de polvo.

Antes de llevar a cabo algún tipo de limpieza física a la PC, apáguela.

Mantenga las bebidas y la comida alejadas de la PC.

Limpie el exterior de la PC y los periféricos con un paño suave levemente humedecido con agente limpiador no corrosivo o áspero.

Por lo general el monitor se ensucia con las marcas de los dedos. Limpie el monitor con (CRT) con limpiador para cristales.

HERRAMIENTAS PARA EL MANTENIMIENTO

Recuerde que para cualquier labor de mantenimiento se debe utilizar la herramienta adecuada. En cuanto al mantenimiento preventivo, podemos mencionar las siguientes:

• Un juego de destornilladores Estrella. • Un juego de destornilladores Pala • Juego de llaves Torx • Una pulsera antiestática • Una brocha pequeña suave antiestática • Copitos de algodón • Una sopladora • Trozos de tela secos (bayetilla blanca) • Alcohol isopropílico • Limpia contactos eléctrico y electrónico • Silicona lubricante o grasa blanca Un borrador • Kit de limpieza carcasa y pantalla • Cd de limpieza • Pinzas de punta • Frasco de lubricante para impresoras matriz de punto • Kit de software (Sistemas Operativos: XP, 98, 95 y Utilitarios: Software de diagnóstico, Antivirus,

Drivers) • Multímetro • Elementos para limpieza externa (Se utilizan para quitar las manchas del gabinete y las demás

superficies de los diferentes aparatos)

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 65

Page 71: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Existen varios procesos que se deben realizar antes cíe iniciar un mantenimiento preventivo para determinar el correcto funcionamiento de los componentes. Estos son:

Probar la unidad de disco flexible. Una forma práctica de realizar este proceso es tener un disco antivirus lo más actualizado posible y ejecutar el programa. Esto determina el buen funcionamiento de la unidad y a la vez. Se verifica que no haya virus en el sistema.

Chequear el disco duro con el comando CHKDSK del DOS.

Si se tiene multimedia instalada, puede probarse con un CD de música, esto determina que los altavoces y la unidad estén bien.

Realice una prueba a todos los periféricos instalados. Es mejor demorarse un poco para determinar el funcionamiento correcto del computador y sus periféricos antes de empezar a desarmar el equipo.

Debemos ser precavidos con el manejo de los tornillos del sistema en el momento de desarmarlo. Los tornillos no están diseñados para todos los puntos. Es muy importante diferenciar bien los que son cortos de los medianos y de los largos. Por ejemplo, si se utiliza un tornillo largo para montar el disco duro, se corre el riesgo de dañar la tarjeta interna del mismo. Escoja la mejor metodología según sea su habilidad en este campo:

Algunos almacenan lodos los tornillos en un solo lugar, otros los clasifican y otros los ordenan según se va desarmando para luego formarlos en orden contrario en el momento de armar el equipo.

El objetivo primordial de un mantenimiento no es desarmar y armar, sino de limpiar, lubricar y calibrar los dispositivos. Elementos como el polvo son demasiado nocivos para cualquier componente electrónico, en especial si se trata de elementos con movimiento tales como los motores de la unidad de disco, el ventilador, etc.

Todas estas precauciones son importantes para garantizar un buen mantenimiento preventivo.

PASOS A REALIZAR PARA UN BUEN MANTENIMIENTO:

Mantenimiento de la unidad central. Mantenimiento de las tarjetas principal y de interface

Al destapar la unidad central debemos tener desconectados lodos los dispositivos tanto los de potencia como los de comunicación, No olvide organizar los tomillos a medida que se van retirando.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 66

.Figura 1. Retirando la tapa principal

Page 72: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo No haga fuerzas excesivas para retirar la tapa de la unidad central. Haga un análisis de la forma en que ésta se encuentra ajustada de tal modo que no se corran riesgos de daño en algún elemento.

Detectar alguna falla que deba corregirse. Con estos procedimientos previos se delimita el grado de responsabilidad antes de realizar el mantenimiento en caso de que algo no funcione correctamente.

El siguiente paso es retirar las tarjetas de interface (video, sonido, faxmódem, etc.), figura 1. Es muy recomendable establecer claramente la ranura (slot) en la que se encuentra instalada cada una para conservar el mismo orden al momento de insertarlas.

El manejo de las tarjetas electrónicas exige mucho cuidado. Uno de los más importantes es utilizar correctamente una pulsera antiestática con el fin de prevenir las descargas electrostáticas del cuerpo.

Luego se retiran los cables de datos Ribbon) que van desde la tarjeta principal hasta las unidades de disco duro. De disco flexible, de tape y de CD-ROM con el objetivo de liberar el espacio para la limpieza de la unidad central. Fíjese muy bien en la conexión de cada cable con el fin de instalarlos en la misma posición. Una buena precaución puede ser elaborar un plano simplificado indicando cada una de las conexiones. Esto sobre todo en equipos con los cuales no esté muy familiarizado.

Recuerde que estos cables tienen marcado el borde que corresponde al terminar número 1de sus respectivos conectares. Adicionalmente, se deben retirar los cables de alimentación de la fuente de poder.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 67

.Figura 1. Retirando tarjetas electronicas

.ndo los bus de datosFigura 2. Retira

Page 73: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Se procede luego a retirar las unidades de disco flexible, de disco duro. Y la unidad de CD-ROM fijándolo en su ubicación y en el tipo de tornillos que utilizan, generalmente los tornillos cortos corresponden a la unidad de disco duro. Si después de revisar la unidad central es necesario retirar la tarjeta principal para limpiaría bien o para hacerle mantenimiento a otros elementos, libere los tornillos que la sujetan al gabinete. Se debe Tener Mucha cuidado con las arandelas aislantes que tienen los tornillos ya que éstas se pierden muy fácil. Observe con detenimiento el sentido que tienen los conectores de alimentación de la tarjeta principal ya que si estos se invierten, se pueden dañar sus componentes electrónicos.

Con elementos sencillos como una brocha, se puede hacer la limpieza general de las tarjetas principal y de interface, al igual que en el interior de la unidad. Para una mejor limpieza utilizar aire comprimido. Para limpiar los contactos de las tarjetas de interface se utiliza un borrador blando para lápiz. Después de retirar el polvo de las tarjetas y limpiar los terminales de cobre de dichas tarjetas, podemos aplicar limpia-contados (dispositivo en aerosol para mejorar la limpieza y que tiene gran capacidad dieléctrica) a todas las ranuras de expansión y en especial a los conectares de alimentación de la tarjeta principal.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 68

conectores de FuenteFigura 2.1. Retirando

adicionales, video, sonido, red, etc.jetas Figura 2.2 retirar y limpiar tar

Page 74: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Si usted es una persona dedicada al mantenimiento de computadoras, el soplador es una herramienta indispensable para hacer limpieza en aquellos sitios del sistema de difícil acceso. Utilícelo con el computador apagado ya que éste posee un motor que podría introducir ruido sobre la línea eléctrica y generar daños a las máquinas. Limpieza de la fuente de poder

Antes de proceder con el mantenimiento de la fuente de poder, se deben desconectar todos los cables de alimentación que se estén utilizando, Lo primero que se debe desconectar son los cables que van a la tarjeta principal recuerde los cuidados en su conexión).

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 69

comprimido aireFigura 2.4 Para una mejor limpieza utilizar

antiestáticalimpiar board com brocha Figura 2.3

borrador, utilizar limpia contactos Figura 2.5 Limpiar los contactos con

electrónico. Figura 3. Desconectando la fuente de poder

Page 75: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Luego se desconectan todos los periféricos. Los conectores utilizados para el disco duro, la unidad de CD-ROM y la unidad de disco flexible, no tienen un orden específico en su conexión, cualquiera de los cables puede ir a cualquiera de estas unidades.

Una de las partes en donde se acumula más polvo es el ventilador de la fuente de poder. Para eliminarlo, se puede utilizar el soplador sin tener que destapar la unidad. Utilice un destornillador, Para evitar que el ventilador gire creando voltajes dañinos. ¡Recuerde que la unidad central debe estar desenergizada y para mayor seguridad, sin los cables de alimentación!

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 70

fuenteFigura 3.1 Tipos de conectores de la

Page 76: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Si no se dispone del soplador, se debe destapar la fuente para limpiarla. Es muy importante no perder ningún tornillo y tener claridad sobre el tiempo de garantía de la fuente, ya que después de decaparla se pierde por la rotura del sello de garantía. Para destapar la unidad se puede apoyar sobre la misma carcasa con el fin de no desconectar el interruptor de potencia de la fuente.

La limpieza inferior se puede hacer con una brocha suave antiestática Después de limpiar la fuente de poder, si hubo necesidad de destaparla, procedemos a taparla y ubicarla en su sitio. Utilice los tomillos que

corresponden con el fin de evitar daños en la carcasa.

Limpieza de la unidad de disco flexible

La unidad de disco flexible es uno de los dispositivos de la unidad central que exige más cuidado en el mantenimiento y que más presenta problemas por suciedad en sus cabezas o en sus partes mecánicas. Para retirarla de la carcasa, se debe tener cuidado para que salga sin presión (suavemente). En muchos casos la tapa puede estar floja y se atasca al retirarla.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 71

soplador Figura 3.2 Limpieza de la fuente con

Figura 3.2 desarme de la fuente

Limpieza manual de la fuenteFigura 3.3

Page 77: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Debido a la gran cantidad de marcas y modelos de unidades de disco flexible que existen, no hay un procedimiento estándar para destaparlas. Observe bien la forma, en la cual está asegurada y ensamblada su tapa. En algunos modelos tiene un salo tornillo, en otros dos y en otros el desarme se realiza simplemente a presión con la ayuda de un destornillador de pala pequeño. Este dispositivo tiene partes móviles y muy delicadas. Las cabezas lectoras se desplazan en forma lineal gracias a un mecanismo tipo sinfín el cual debe estar siempre bien lubricado. El daño más común en estas unidades se debe a la falta de mantenimiento, ya que el motor se pega o el desplazamiento se vuelve demasiado lento al aumentar la fricción, ocasionando la descalibración de la unidad.

Otro problema que se presenta es la suciedad de las cabezas lectoras, generada por la utilización de discos viejos o sucios. Además, los disquetes van soltando parte de su recubrimiento al rozar las cabezas de lectura/ escritura. En muchos casos, se puede solucionar este problema por medio de un disco de limpieza, pero en otros casos es necesaria una limpieza más profunda.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 72

flexibleFigura 4. Retirando la unidad de disco

.disco flexibleFigura 5. Detalle interior de la unidad de

Page 78: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Para limpiar las cabezas con el disco especial, aplique en la ventana de éste tres o cuatro gotas del líquido que viene con el disco, o en su defecto, alcohol isopropílico. Insértelo en la unidad y haga girar el motor dando el comando DIR A: Repita el procedimiento dos o tres veces. Esto se debe hacer cuando se arme el equipo. Para realizar la limpieza manual de la unidad de disco flexible, podemos utilizar copitos de algodón. Impregne el algodón con alcohol isopropílico (este alcohol es de un alto nivel volátil, lo que garantiza que no quede humedad).

Suavemente, levante un poco la cabeza lectora superior, y con el copito realice la limpieza de las cabezas, Observando detalladamente la cabeza se puede determinar su grado de limpieza. Se debe tener mucho cuidado con la presión manual que se ejerce sobre la cabeza lectora, hacerlo en forma fuerte la puede dañar!

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 73

flexibleFigura 6. Kit de limpieza para la unidad

isopropílicoFig. 6.1 Impregnando el copito con alcohol

copitoFigura 6.2 Limpieza de la cabeza con el

Page 79: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Limpieza de unidades de cd-rom

Para realizar el mantenimiento a la unidad de CD-ROM, es recomendable utilizar un disco especial de limpieza. Este proceso se hace con el sistema funcionando. Si existe algún problema de lectura, se debe destapar la unidad y limpiar el sistema óptico con alcohol isopropílico.

Mantenimiento del disco duro

El disco duro no se debe destapar. Su mantenimiento consiste sólo en limpiar con mucho cuidado la parte exterior y las tarjetas. También se deben ajustar bien sus conectares tanto el de alimentación como el de datos.

Mantenimiento de los periféricos

Después de realizar el mantenimiento a la unidad central, se procede a limpiar los periféricos Teclado, el monitor, el mouse, las impresoras, etc. EL TECLADO

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 74

Figura 7.

teclado Figura 8. Limpieza del

Page 80: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo El mantenimiento preventivo que se hace a un teclado consiste básicamente en la limpieza exterior, ya que éste acumula bastante suciedad producida por los usuarios y el medio ambiente. Esta limpieza se debe hacer con un compuesto a jabon especial para este propósito, generalmente en forma de crema. Existen espumas que permiten limpiar las teclas sin que se produzca humedad en el teclado lo que podría ocasionar cortocircuitos.

Limpieza interna del teclado

Para realizar el mantenimiento interior. Destapamos con cuidado el teclado, observando la forma como está armado ya que su desarme varía notablemente de una marca a otra. Se debe tener mucho cuidado con los tornillos; estos generalmente vienen en diferentes tamaños y ubicarlos en forma equivocada puede dañar el sistema de cierre.

Mantenimiento del mouse

El mouse es uno de los accesorios indispensables durante la operación diaria del computador. Su funcionamiento normal se altera con frecuencia debido a los residuos de polvo y otras sustancias que, se acumulan en sus diferentes partes, especialmente las móviles, se observan los discos correspondientes al

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 75

Figura 8.1 Desarme del teclado

Figura 9. Discos de desplazamiento

Page 81: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo desplazamiento del cursor, los cuales se ensucian y forman una capa que evita que el sistema de la foto sensor trabaje correctamente.

Para la limpieza, destape o desarme el mouse con mucho cuidado. Se observan los rodillos de desplazamiento de la esfera que también deben. Limpiarse con frecuencia. Estos almacenan el polvo convirtiéndolo en una sustancia pegajosa que impide el movimiento uniforme de los mismos. La limpieza de los rodillos se puede hacer con un copito humedecido en alcohol isopropílico. Si la suciedad está muy dura o adherida a los rodillos, se puede remover con una cuchilla o un destornillador pequeño teniendo mucho cuidado de no rayar o desalinear dichos rodillos. Verificación de conexiones

Durante la exploración, voluntariamente o accidentalmente puede ocurrir que se hayan desconectado algunos cables. Verifique minuciosamente que cada uno de los conectares que esté bien ajustado al dispositivo correspondiente. Revise también de la conexión de alimentación para el ventilador del microprocesador. Si éste queda sin corriente, la computadora funcionará bien, pero con el tiempo puede fallar.

Sentido de los conectores de la tarjeta principal

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 76

Figura 9.1 Rodillos de desplazamiento

Figura 10. Disco Duro

Page 82: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Si se desconectaron los cables de alimentación de la tarjeta principal, tenga mucho cuidado cuando se haga la nueva conexión. Observe en la figura el sentido correcto de los conectares. La forma fácil de orientarlos es acomodando los dos conectares de modo que los cables negros queden seguidos y bien acomodados con respecto a los pines de la tarjeta. Una equivocación en esta conexión, daña la tarjeta, conectores de alimentación en la tarjeta principal.

Tapando la unidad central

Cuando esté tapando la unidad central, asegúrese de no aprisionar cables entre los bordes de ésta y la lapa. Asimismo, no se debe forzar ningún elemento a que encaje con otro, mejor, retire el elemento y haga una observación general para detectar el problema.

LIMPIEZA DEL MONITOR

Un monitor todo sucio y manchado puede que no sea un puerto para bacterias peligrosas, pero no es nada atractivo. Una pantalla llena de manchas puede causar cansancio innecesario a sus ojos. Los monitores son equipo delicado y deben ser limpiados adecuadamente. Para limpiar su monitor, use una hoja de papel toalla suave humedecida con un limpiador suave y diluido (o rocíelo con un limpiador de cristales como "Windex"®). Aunque el Windex es adecuado para el cristal de los CRTs estándares, nunca lo rocíe directamente a la pantalla. Para los monitores LCD, nunca use limpiadores con base de amoniaco, en su lugar use un paño suave levemente humedecido con agua.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 77

conexión, daña la tarjetasta Fig 10.1 Una equivocación en e

Figura 11. Tapando la unidad central

Page 83: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Cuando termine de limpiar el interior de su PC, su teclado, su ratón y su monitor, NO OLVIDE LIMPIAR Y DESENREDAR LOS CABLES que se usan para conectar sus peri ferales a la PC ni ninguno de los cables que se usan para conectar la corriente eléctrica.

QUE OTRAS COSAS DEBO SABER

• No coloque su computadora directamente frente a una fuente de calor o un aire acondicionado.

Tanto el calor como el frío excesivo pueden dañar su PC. Esto incluye no colocar su sistema directamente bajo la luz solar.

• No coloque su sistema cerca de fuentes de humedad que pueda caer o filtrarse al mismo. Esto incluye ventanas abiertas a través de las cuales puede pasar el agua de lluvia. Es recomendable que su sistema computadorizado esté en un ambiente con humedad controlada y buena ventilación (no frente a un aire acondicionado, pues a menor temperatura mayor es la probabilidad de acumulación de electricidad estática... el peor enemigo de las computadoras, y mayor la posibilidad de corrosión).

• No conecte su PC ni ninguno de sus periféricos directamente a los enchufes de la pared. En lugar de esto, conecte su sistema a uno o más "surge protectors" o a uno o más UPS.

• No permita que el polvo o la suciedad se acumulen en su PC o sus componentes. La acumulación de polvo y suciedad pueden disminuir la capacidad del sistema para enfriarse.

• No sople aire dentro de las unidades de discos. Esto incluye los discos duros (que afortunadamente vienen sellados), los floppy drives, las unidades ópticas (CD, DVD, etc.), Zip drives, Jazz Drives, etc. ...

• No mueva su PC de sitio a menos que no sea necesario. Sea extremadamente cuidadoso al mover su sistema. Aún los cantazos más leves pueden causar que los chips o las tarjetas de expansión se salgan de sitio.

• No almacene sus archivos de datos en los mismos directorios o carpetas en que ha instalado sus aplicaciones. Esto puede disminuir la posibilidad de pérdida de datos o de que se pueda borrar o reescribir un archivo de la aplicación.

• No confíe en un solo conjunto de discos. Tenga un duplicado de los discos originales de su sistema y de todos los discos de instalación de sus aplicaciones así como de sus datos.

• No confíe en su memoria. Mantenga una bitácora detallada de la configuración de su sistema en la que lleve constancia de todos los cambios que le haga a su PC, por mínimos que sean. Puede usar esta bitácora para rastrear la causa de un problema con el sistema o sus aplicaciones, y puede ser

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 78

pantallar con paño suave la Figura 12. Limpia

Page 84: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

sumamente valioso a la hora de decidir actualizar su sistema computadorizado. Guarde aquí toda la configuración detallada de su BIOS, las tarjetas de expansión que haya instalado y los procedimientos que usó para instalarlas, etc.

• No tire documentación a la basura. Guarde todos los documentos que vinieron con su PC y sus componentes. Estos documentos puede ser necesarios en caso de que algo pase con su sistema.

• No comprima su disco duro, en especial si es el principal o el de inicio. Los datos que se almacenan en un disco duro que ha sido comprimido tienen mayores posibilidades de que se corrompan que los que se almacenan en discos duros que no han sido comprimidos.

• No borre aplicaciones manualmente. En la medida en que sea posible, use la utilidad de desinstalación que viene con Windows o use el des-instalador que vino con la aplicación que se desea remover.

ACTITUDES Y VALORES AL HACER MANTENIMIENTO

• Honesto en la recepción del equipo • Orden al detectar las características que presente el equipo externamente • Cumplido en el manejo de las normas de seguridad • Organizado en su lugar de trabajo • Cuidadoso en el manejo de la herramienta • Precavido en el desensamble del equipo de las piezas • Pulcro en la limpieza de las superficies externas/internas de la CPU • Creativo en la solución de problemas • Honesto al ensamblar partes • Responsable en la entrega en buenas condiciones y a tiempo de la CPU

UNIDAD 5 REDES

Conjunto de técnicas, conexiones físicas y programas informáticos empleados para conectar dos o más ordenadores o computadoras. Los usuarios de una red pueden compartir ficheros, impresoras y otros recursos, enviar mensajes electrónicos y ejecutar programas en otros ordenadores.

NIVELES DE COMPONENTES:

Una red tiene tres niveles de componentes:

• Software de aplicaciones. • Software de red. • Hardware de red.

El software de aplicaciones está formado por programas informáticos que se comunican con los usuarios de la red y permiten compartir información (como archivos de bases de datos, de documentos, gráficos o vídeos) y recursos (como impresoras o unidades de disco). Un tipo de software de aplicaciones se denomina cliente-servidor. Las computadoras cliente envían peticiones de información o de uso de recursos a otras computadoras, llamadas servidores, que controlan el flujo de datos y la ejecución de las aplicaciones a través de la red. Otro tipo de software de aplicación se conoce como ―de igual a igual‖ (peer to peer). En una red de este tipo, los ordenadores se envían entre sí mensajes y peticiones directamente sin utilizar un servidor como intermediario. Estas redes son más restringidas en sus capacidades de seguridad, auditoría y control, y normalmente se utilizan en ámbitos de trabajo con pocos ordenadores y en los que no se precisa un control tan estricto del uso

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 79

Page 85: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo de aplicaciones y privilegios para el acceso y modificación de datos; se utilizan, por ejemplo, en redes domésticas o en grupos de trabajo dentro de una red corporativa más amplia.

El software de red consiste en programas informáticos que establecen protocolos, o normas, para que las computadoras se comuniquen entre sí. Estos protocolos se aplican enviando y recibiendo grupos de datos formateados denominados paquetes. Los protocolos indican cómo efectuar conexiones lógicas entre las aplicaciones de la red, dirigir el movimiento de paquetes a través de la red física y minimizar las posibilidades de colisión entre paquetes enviados simultáneamente.

El hardware de red está formado por los componentes materiales que unen las computadoras. Dos componentes importantes son los medios de transmisión que transportan las señales de los ordenadores (típicamente cables estándar o de fibra óptica, aunque también hay redes sin cables que realizan la transmisión por infrarrojos o por radiofrecuencias) y el adaptador de red, que permite acceder al medio material que conecta a los ordenadores, recibir paquetes desde el software de red y transmitir instrucciones y peticiones a otras computadoras. La información se transfiere en forma de dígitos binarios, o bits (unos y ceros), que pueden ser procesados por los circuitos electrónicos de los ordenadores.

TIPOS DE REDES Redes de área local (LAN) Uno de los sucesos más críticos para la conexión en red lo constituye la aparición y la rápida difusión de la red de área local (LAN) como forma de normalizar las conexiones entre las máquinas que se utilizan como sistemas ofimáticos. Como su propio nombre indica, constituye una forma de interconectar una serie de equipos informáticos. A su nivel más elemental, una LAN no es más que un medio compartido (como un cable coaxial al que se conectan todas las computadoras y las impresoras) junto con una serie de reglas que rigen el acceso a dicho medio. La LAN más difundida, Ethernet, utiliza un mecanismo conocido como CSMA/CD. Esto significa que cada equipo conectado sólo puede utilizar el cable cuando ningún otro equipo lo está utilizando. Si hay algún conflicto, el equipo que está intentando establecer la conexión la anula y efectúa un nuevo intento más tarde. Ethernet transfiere datos a 10 Mbits/s, lo suficientemente rápido para hacer inapreciable la distancia entre los diversos equipos y dar la impresión de que están conectados directamente a su destino. Hay tipologías muy diversas (bus, estrella, anillo) y diferentes protocolos de acceso. A pesar de esta diversidad, todas las LAN comparten la característica de poseer un alcance limitado (normalmente abarcan un edificio) y de tener una velocidad suficiente para que la red de conexión resulte invisible para los equipos que la utilizan. Además de proporcionar un acceso compartido, las LAN modernas también proporcionan al usuario multitud de funciones avanzadas. Hay paquetes de software de gestión para controlar la configuración de los equipos en la LAN, la administración de los usuarios y el control de los recursos de la red. Una estructura muy utilizada consiste en varios servidores a disposición de distintos usuarios. Los servidores, que suelen ser máquinas más potentes, proporcionan servicios a los usuarios, por lo general computadoras personales, como control de impresión, ficheros compartidos y correo electrónico. Elementos de una red de area local En una LAN existen elementos de hardware y software entre los cuales se pueden destacar: • El servidor: es el elemento principal de procesamiento, contiene el sistema operativo de red y se

encarga de administrar todos los procesos dentro de ella, controla también el acceso a los recursos comunes como son las impresoras y las unidades de almacenamiento.

• Las estaciones de trabajo: en ocasiones llamadas nodos, pueden ser computadoras personales o cualquier terminal conectada a la red. De esta manera trabaja con sus propios programas o aprovecha las aplicaciones existentes en el servidor.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 80

Page 86: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo • El sistema operativo de red: es el programa (software) que permite el control de la red y reside

en el servidor. Ejemplos de estos sistemas operativos de red son: NetWare, LAN Manager, OS/2, LANtastic y Appletalk.

• Los protocolos de comunicación: son un conjunto de normas que regulan la transmisión y recepción de datos dentro de la red.

• La tarjeta de interface de red: proporciona la conectividad de la terminal o usuario de la red física, ya que maneja los protocolos de comunicación de cada topología especifica.

Redes de área amplia (WAN) Cuando se llega a un cierto punto, deja de ser poco práctico seguir ampliando una LAN. A veces esto viene impuesto por limitaciones físicas, aunque suele haber formas más adecuadas o económicas de ampliar una red de computadoras. Dos de los componentes importantes de cualquier red son la red de teléfono y la de datos. Son enlaces para grandes distancias que amplían la LAN hasta convertirla en una red de área amplia (WAN). Casi todos los operadores de redes nacionales (como DBP en Alemania, British Telecom en Inglaterra o la Telefónica en España) ofrecen servicios para interconectar redes de computadoras, que van desde los enlaces de datos sencillos y a baja velocidad que funcionan basándose en la red pública de telefonía hasta los complejos servicios de alta velocidad (como frame relay y SMDS-Synchronous Multimegabit Data Service) adecuados para la interconexión de las LAN. Estos servicios de datos a alta velocidad se suelen denominar conexiones de banda ancha. Se prevé que proporcionen los enlaces necesarios entre LAN para hacer posible lo que han dado en llamarse autopistas de la información. TOPOLOGIA DE REDES

Se refiere a como distribuyen, organizan o conectan el conjunto de computadoras o dispositivos dentro de una red, es decir, a la forma en que están interconectados los distintos nodos que la forman. Criterios a la hora de elegir una topologia de red:

• Buscar minimizar los costos de encaminamiento (necesidad de elegir los caminos más simples entre el nodo y los demás)

• Tolerancia a fallos o facilidad de localización a estos. Facilidad de instalación y reconfiguración de la red.

Tipos de topologias:

Topología En Estrella: Se caracteriza por tener todos sus nodos conectados a un controlador central. Todas las transacciones pasan a través del nodo central siendo este el encargado de gestionar y controlar todas las comunicaciones. El controlador central es normalmente el servidor de la red, aunque puede ser un dispositivo especial de conexión denominado comúnmente concentrador o hub. Ventajas: • Presenta buena flexibilidad para incrementar el número de equipos conectados a la red. • Si alguna de las computadoras falla el comportamiento de la red sigue sin problemas, sin embargo, si

el problema se presenta en el controlador central se afecta toda la red. • El diagnóstico de problemas es simple, debido a que todos los equipos están conectados a un

controlador central.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 81

Page 87: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Desventajas: • No es adecuada para grandes instalaciones, debido a la cantidad de cable que deben agruparse en el

controlador central. • Esta configuración es rápida para las comunicaciones entre las estaciones o nodos y el controlador,

pero las comunicaciones entre estaciones es lenta.

Topología en anillo: Todas las estaciones o nodos están conectados entre si formando un anillo, formando un camino unidireccional cerrado que conecta todos los nodos. Los datos viajan por el anillo siguiendo una única dirección, es decir, la información pasa por las estaciones que están en el camino hasta llegar a la estación destino, cada estación se queda con la información que va dirigida a ella y retransmite al nodo siguiente los tienen otra dirección. Ventajas: • Esta topología permite aumentar o disminuir el número de estaciones sin dificultad. • La velocidad dependerá del flujo de información, cuantas más estaciones intenten hacer uso de la red

mas lento será el flujo de información. Desventajas: • Una falla en cualquier parte deja bloqueada a toda la red.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 82

Page 88: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Topología en bus o canal: Los nodos se conectan formando un camino de comunicación vi direccional con puntos de terminación bien definidos. Cuando una estación transmite, la señal se propaga a ambos lados del emisor hacía todas las estaciones conectadas al bus, hasta llegar a las terminaciones del mismo. Así, cuando una estación transmite un mensaje alcanza a todos las estaciones, por esto el bus recibe el nombre de canal de difusión. Ventajas: • Permite aumentar o disminuir fácilmente el número de estaciones. • El fallo de cualquier nodo no impide que la red siga funcionando normalmente, lo que permite añadir

o quitar nodos sin interrumpir su funcionamiento. Desventajas: • Cualquier ruptura en el bus impide la operación normal de la red y la falla es muy difícil de detectar. • El control del flujo de información presenta inconvenientes debido a que varias estaciones intentan

transmitir a la vez y existen un único bus, por lo que solo una estación logrará la transmisión.

PROTOCOLO CLIENTE/SERVIDOR

En vez de construir sistemas informáticos como elementos monolíticos, existe el acuerdo general de construirlos como sistemas cliente/servidor. El cliente (un usuario de PC) solicita un servicio (como imprimir) que un servidor le proporciona (un procesador conectado a la LAN). Este enfoque común de la estructura de los sistemas informáticos se traduce en una separación de las funciones que anteriormente forman un todo. Los detalles de la realización van desde los planteamientos sencillos hasta la posibilidad real de manejar todos los ordenadores de modo uniforme. MEDIOS DE TRANSMISIÓN (LINEAS DE COMUNICACIÓN)

Es la facilidad física usada para interconectar equipos o dispositivos, para crear una red que transporta datos entre sus usuarios.

Cable de par trenzado: Es el medio más antiguo en el mercado y en algunos tipos de aplicaciones es el más común. Consiste en dos alambres de cobre o a veces de aluminio, aislados y de un grosor de 1 milímetro aproximadamente.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 83

Page 89: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Los alambres se trenzan con el propósito de reducir la interferencia eléctrica de los pares cercanos. Los pares trenzados se agrupan bajo una cubierta comun de PVC (Poli cloruro de vinilo), en cables multipares de pares trenzados (de 2, 4, 8 hasta 300 pares) Un ejemplo de par trenzado es el sistema de telefonía, actualmente se han convertido en un estándar en el ámbito de las redes locales. Tipos de cables de par trenzado: • Cable de par trenzado apantallado (STP): es utilizado generalmente en las instalaciones de

procesos de datos por su capacidad y buenas características contra las radiaciones electromagnéticas, pero el inconveniente es que es un cable robusto, caro y difícil de instalar.

• Cable de par trenzado no apantallado (UTP): es el que ha sido mejor aceptado por su costo,

accesibilidad y fácil instalación. El cable UTP es el más utilizado en telefonía. Existen actualmente 8 categorías del cable UTP. Cada categoría tiene las siguientes características eléctricas:

• Atenuación. Capacidad de la línea Impedancia. • Categoría 1: Este tipo de cable esta especialmente diseñado para redes telefónicas, es el típico cable

empleado para teléfonos por las compañías telefónicas. Alcanzan como máximo velocidades de hasta 4 Mbps.

• Categoría 2: De características idénticas al cable de categoría 1. • Categoría 3: Es utilizado en redes de ordenadores de hasta 16 Mbps. de velocidad y con un ancho de

banda de hasta 16 Mhz. • Categoría 4: Esta definido para redes de ordenadores tipo anillo como Token Ring con un ancho de

banda de hasta 20 Mhz y con una velocidad de 20 Mbps. • Categoría 5: Es un estándar dentro de las comunicaciones en redes LAN. Es capaz de soportar

comunicaciones de hasta 100 Mbps. con un ancho de banda de hasta 100 Mhz. Este tipo de cable es de 8 hilos, es decir cuatro pares trenzados. La atenuación del cable de esta categoría viene dado por esta tabla referida a una distancia estándar de 100 metros:

• Categoría 5e: Es una categoría 5 mejorada. Minimiza la atenuación y las interferencias. Esta categoría no tiene estandarizadas las normas aunque si esta diferenciada por los diferentes organismos.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 84

Page 90: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo • Categoría 6: No esta estandarizada aunque ya se está utilizando. Se definirán sus características para

un ancho de banda de 250 Mhz. • Categoría 7: No esta definida y mucho menos estandarizada. Se definirá para un ancho de banda de

600 Mhz. El gran inconveniente de esta categoría es el tipo de conector seleccionado que es un RJ-45 de 1 pines.

• Cable de par trenzado con pantalla global (FTP): sus propiedades de transmisión son parecidas a las del UTP. Tiene un precio intermedio entre el UTP y el STP.

Cable coaxial. Tenía una gran utilidad por sus propiedades de transmisión de voz, audio, video, texto e imágenes. Está estructurado por los siguientes componentes de adentro hacía fuera: • Un núcleo de cobre sólido, o de acero con capa de cobre. • Una capa aislante que reduce el núcleo o conductor, generalmente de material de poli vinilo. • Una capa de linaje metálico generalmente cobre o aleación de aluminio entre tejido, cuya función es

la de mantenerse la más apretada para eliminar las interferencias. • Por último tiene una capa final de recubrimiento que normalmente suele ser de vinilo, xelón y

polietileno uniforme para mantener la calidad de las señales.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 85

Page 91: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Tipos de cables coaxiales Dependiendo de su banda pueden ser de dos tipos: • Banda base: normalmente empleado en redes de computadoras y por el fluyen señales digitales. • Banda ancha: normalmente transmite señales analógicas, posibilitando la transmisión de gran

cantidad de información por varias frecuencias, su uso más común es la televisión por cable.

Cable de fibra optica Son mucho más ligeros y de menor diámetro. Además, la densidad de información que son capaces de transmitir es mayor. El emisor está formado por un láser que emite un potente rayo de luz, que varía en función de la señal eléctrica que le llega. El receptor está constituido por un fotodiodo, que transforma la luz incidente de nuevo en señales eléctricas. Entre sus características están: 1. Son compactas. 2. Ligeras. 3. Con baja pérdida de señal. 4. Amplia capacidad de transmisión. 5. Alto grado de confiabilidad, ya que son inmunes a las interferencias electromagnéticas.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 86

Page 92: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Tipos de fibra óptica • Fibra multimodal: en este tipo de fibra viajan varios rayos ópticos reflejándose ángulos, que

recorren diferentes distancias y se desfasan al viajar dentro de la fibra. Por esta razón, la distancia a la que se puede transmitir esta limitada.

• Fibra multimodal con índice graduado: en este tipo de fibra óptica el núcleo está hecho de varias capas concéntricas de material óptico con diferentes índices de refracción. En estas fibras el número de rayos ópticos que viajan es menor y sufren menos problemas que las fibras multimodales.

• Fibra monomodal: esta fibra es la de menor diámetro y solamente permite viajar al rayo óptico central. Es más difícil de construir y manipular. Es también la más costosa pero permite distancias de transmisión mucho mayores.

PASOS PARA PONCHAR UN CABLE UTP

Materiales:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 87

Page 93: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

1. Como minimo 1 metro de cable utp. 2. Ponchadora. 3. Un par de RJ45 4. Unas tijeras si es necesario. Pasos

Cortar el cable UTP.

Una vez cortado el plastico aislante que recubre el cable UTP, retiralo y dejando libre los hilos conductores de este, como muestra la imagen

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 88

Page 94: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Una vez realizado este paso elige el tipo de conector que deseas aplicar.

Normas:

LA NORMA IEEE T568 A: 1. BLANCO / VERDE 2. VERDE 3. BLANCO / NARANJA 4. AZUL 5. BLANCO / AZUL 6. NARANJA 7. BLANCO / CAFE 8. CAFE

LA NORMA IEEE T568 B: 1. BLANCO / NARANJA 2. NARANJA 3. BLANCO / VERDE 4. AZUL 5. BLANCO / AZUL 6. VERDE 7. BLANCO / CAFE 8. CAFÉ Dependiendo el tipo de cable que queremos usar utilizamos el tipo de norma es decir: Si quiere crear un cable cruzado (cuando las funciones de los equipos a conectar son iguales), por ejemplo para conectar dos pc punto a punto usamos las dos normas A y la B, la norma a por un lado de cable y la norma B por el otro lado del cable. Si quiere crear un cable directo (cuando las funciones de un equipo sean diferentes), por ejemplo para conectar un pc con un switch usamos cualquiera de las dos normas pero esa norma que elegimos la usamos en ambos lados del cable. Es importante organizar bien el cable segun la norma.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 89

Page 95: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Habiendo organizado el cableado juntamos muiy bien los cables y procesamos cortandolos del mismo tamaño de la siguiente forma:

Ahora los cables estan listos para ser insertados en un conector RJ45 asi:

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 90

Page 96: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ahora lo siguiente es acomodar el revestimiento del cable que quede mas o menos en la cuña del receptor RJ45 y que las puntas de los pares trenzados esten bien acomodadas tocando la base del conector.

El ultimo paso es "ponchar "es decir, colocar el RJ45 dentro de la ponchadora y apretar co mo unas pinsas para que la cuña del conector se quiebre y quede apretado (firme) el conector con el cable y no se valla a soltar.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 91

Page 97: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Se debe apretar las patas como unas tijeras y sonara un ruido como que se parte el plastico del conector RJ45, eso es normal por que cuando la cuña delse quierbra para apretar el cable y no soltarse. Si no suena, o quedo mal (esta suelto el conector del cable) o simplemente no sono.

Y ahora para probar el cable si quedo bien ponchado solo resta probarlo con un dispositivo que se utiliza para probar cables UTP o crea una red punto entre dos pc y si logra hacer ping el cable funciona correctamente.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 92

Page 98: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

ESTRATEGIAS DE ENSEÑANZA Y PARENDISAJE.

Ensayo Este tipo de estrategia se basa principalmente en la repetición de los contenidos ya sea escrito o hablado. La cual nos va permitir interiorizar los conceptos básicos de informática y su historia.

Elaboración Este tipo de estrategia se basa en crear: resumir, tomar notas, responder preguntas, describir como se relaciona la información.

Organización Utilizaremos esta estrategia que se basa en una serie de modos de actuación que consisten en agruparse para que sea más sencillo estudiarla y comprender la información.

Análisis - Síntesis: En el presente modulo se aplicara en el proceso de distinguir y separar las partes constituyentes de un todo

Estudio y trabajo en grupo Preparación de seminarios, lecturas, investigaciones, trabajos, memorias, etc. Para exponer o entregar en las clases teóricas. Se incluye la preparación de ensayos, resúmenes de lecturas, seminarios, conferencias, obtención de datos, análisis, etc. Así como el estudio de contenidos relacionados con las clases teóricas, prácticas, seminarios, etc. (estudiar para exámenes, trabajo en biblioteca, lecturas complementarias, hacer problemas y ejercicios, etc.). Todo ello, realizado de forma grupal y en espacios amplios.

Finalidad Hacer que los estudiantes aprendan entre ellos.

Estudio y trabajo autónomos Preparación de seminarios, lecturas, investigaciones, trabajos, memorias, etc. Para exponer o entregar en las clases teóricas. Se incluye la preparación de ensayos,

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 93

Page 99: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

resúmenes de lecturas, seminarios, conferencias, obtención de datos, análisis, etc. Así como el estudio de contenidos relacionados con las clases teóricas, prácticas, seminarios, etc. (estudiar para exámenes, trabajo en biblioteca, lecturas complementarias, hacer problemas y ejercicios, etc.). Todo ello, realizado de manera autónoma, individual. Finalidad Desarrollar la capacidad de autoaprendizaje.

RECURSOS

HUMANOS

Comunidad Educativa MATERIALES

Manual Técnico Pizarra Marcadores Borrador

TECNOLOGICOS

Internet Computador Infocus Amplificacion

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 94

Page 100: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

EVALUACIÓN A) Conteste:

1. ¿Qué significa las siglas RAM y que son? 2. ¿Qué es el sistema operativo? 3. ¿En que consiste el mantenimiento preventivo? 4. ¿Qué significa las siglas MS-DOS y para que se utiliza? 5. ¿Qué es el protoboard y cual es su funcionamiento? 6. ¿Cuáles son las principales ventajas de una red de computadoras?

B) Seleccione la respuesta correcta 7. La pascalina fue contruida por:

a) Blaise Pascal b) Charles Babbage c) Charles Jacquard

8. La tercera generación de computadoras esta fabricada a base de : a) Transistores b) Circuitos integrados c) Tubos al vacio

9. El termino informática se creo en: a) España b) Estados unidos c) Francia

10. 150 GB equivale a X MB : a) 153600 b) 0.1464 c) 15

C) Una según corresponda 8. Valor de los colores de las resistencias

Valor Color 0 blanco 1 plomo 2 violeta 3 azul 4 verde 5 amarillo 6 naranja 7 rojo 8 café 9 negro

D) complete

12. __________ es un conjunto de __________ ya procesados con un computador.

13. La ___________ es la parte principal de un computador ya que nos sirve de _____________ de los demás _____________ permitiendo que estos interactúen entre si y puedan realizar _____________.

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 95

Page 101: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

14. El _______ es el elemento encargado del _______ y _______ de las operaciones que se realizan dentro del ________ con el fin de realizar el tratamiento _______ de la información

15. La memoria caché es de acceso ______, más aun que la propia ____, se incorpora en

la placa ______ de los equipos, especialmente en los de la última _________, para reducir la frecuencia de accesos a memoria ______ que el procesador tiene que realizar.

16. Los sistemas Mono tareas son aquellos que solo permiten una ____ a la vez por el

_____. Puede darse el caso de un sistema multiusuario y mono tarea, en el cual se admiten varios usuarios al mismo _______ pero cada uno de ellos puede estar haciendo solo una _______ la vez.

17. El Sistema Operativo, es el _________ entre los __________ y los _______

electrónicos de la __________, es decir que es el que se encarga de la gestión de los recursos del sistema y de realizar las operaciones que solicitan los _____________.

E) Verdadero falso 18. En la segunda generación de computadoras se programan en nuevos lenguajes

llamados lenguajes de alto nivel ( ) 19. Las computadoras analógicas son precisas, proveen exactamente la respuesta correcta a

algún problema específico. ( ) 20. Las computadoras analógicas no computan directamente, sino que perciben

constantemente valores, señales o magnitudes físicas variadas. ( ) 21. Para medir la capacidad de almacenamiento de información, utilizamos los

Bytes. ( ) F) Ordene los siguientes pasos

22. LA NORMA IEEE T568 A:

___VERDE ___NARANJA ___BLANCO / VERDE ___CAFE ___AZUL ___BLANCO / AZUL ___BLANCO / CAFÉ ___BLANCO / NARANJA

23. LA NORMA IEEE T568 B:

___VERDE ___NARANJA ___BLANCO / VERDE ___CAFE ___AZUL ___BLANCO / AZUL ___BLANCO / CAFÉ ___BLANCO / NARANJA

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 96

Page 102: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

G) Grafique e identifique sus partes de los siguiente:

24. Topología estrella 25. Topoligia bus 26. Topología anillo 27. Topología árbol 28. Protoboard

SISTEMAS INFORMÁTICOS MULTIUSUARIOS Y EN RED 97

Page 103: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Aprender a programar en los diferentes lenguajes de programación para crear programas que sean útiles a los usuarios analizando cada uno de los diferentes lenguajes de programacion de este modulo.

98

Page 104: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

INTRODUCCIÓN

Como ya lo hice una vez, con el Manual de C; es realmente para, mi un verdadero privilegio el poder presentar parte del aprendizaje colectado durante éste año.

Pero ésta vez, en un documento que, pretende como principal fin, el servir como guía al estudiante en su aprendizaje de éste interesantísimo y actual lenguaje de programación.

A diferencia de C, considero respecto a Java, podemos encontrar una gran cantidad de recursos didácticos para la enseñanza-aprendizaje, de dicho lenguaje de programación, recursos, que dicho sea de paso; son de excelente calidad.

Sin embargo, no es mi intención el quedarme atrás sin aportar un granito de mostaza, a la comunidad de programadores, y aquellos que inician esta aventura, en Java.

Una aventura que, puede ser de gran utilidad en nuestra vida como programadores profesionales, debido a gran cantidad de aplicaciones que Java posee, no sólo en área de la programación, sino también en el entretenimiento y en la web.

Finalmente debo recordar que, los sueños no son para los soñadores; sino para aquellos que luchan y

trabajan para hacer que sus sueños se conviertan en una realidad… Animo y adelante!!!!!

PREREQUISITOS

Algoritmos Pseudocódigos Diagramas de flujo Lenguaje de programacion C++:

• Estructuras de un programa en C++ • Librerías de C++ • Declaración y tipos de variables • Sentencias de descicion y repetición • Operadores matemáticos • Operadores lógicos

HTML

• Estructura de un programa en HTML • Etiquetas y atributos del encabezado • Etiquetas y atributos del cuerpo del programa • Etiquetas y atributos para la creación de formularios

Internet

99

Page 105: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

• Manejo de navegadores • Correos electrónicos • Descarga e instalación de programas

Base de datos

EVALUACIÓN INICIAL

A) CONTESTE 1. ¿Qué son los algoritmos?

________________________________________________________________________ ________________________________________________________________________

2. ¿Qué son los pseudocódigos? ________________________________________________________________________ ________________________________________________________________________

3. ¿Qué representan los diagramas de flujo? ________________________________________________________________________ ________________________________________________________________________

4. ¿Qué significa las siglas HTML? ________________________________________________________________________ ________________________________________________________________________

5. ¿Qué es una base de datos? ________________________________________________________________________________________________________________________________________________

B) ENUMERE 1. 4 Navegadores

________________________________________________________________________________________________________________________________________________

2. 4 buscadores ________________________________________________________________________________________________________________________________________________

3. 5 lenguajes de programación ________________________________________________________________________________________________________________________________________________

C) REALICE. 4. Tabla de los tipos de datos de C++ 5. Tabla de operadores lógicos de C++ 6. Tabla de operadores de relación de C++ 7. Tabla de operadores matemáticos de C++ 8. Estructura de la sentencia if de C++ 9. Estructura de la sentencia while de C++ 10. Estructura de la sentencia for de C++ 11. Página Web sobre un tema a elección en cual contenga

a. Imágenes b. Sonido c. Tablas d. Frames e. Mapas f. Formularios

100

Page 106: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

ORIENTACIONES GENERALES

El Modulo de programacion en lenguajes estructurados iniciara el 6 de febrero del 2014 y culminara el 23 de julio del 2014.

En el módulo revisaremos temas como:

Programacion orienta a objetos en el lenguaje de programacion Java y Java Script en los cuales nos dedicaremos a realizar ejercicios practicos deacuerdo al tema.

Se recomienda al estudiante transquibir los ejercicios al programa y fijarce bien el momento de su ejecución.

Programacion para la creación de página Web que interactúen con los usuarios utilizando Java Script, PHP y Mysql

101

Page 107: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

UNIDAD 6 JAVA PROGRAMACIÓN ORIENTADA A OBJETOS

PROGRAMACIÓN CONVENCIONAL

Como todos sabemos, los programas se componen de procedimientos y datos. Los procedimientos son los que se encargan de realizar tareas específicas, como calcular la suma de dos números, o mostrar un Frame en pantalla. Los argumentos (datos que se le pasan a los procedimientos), son generalmente estructuras globales o se pasan como parámetros. Java, es un lenguaje de programación Orientado a Objetos…mmm… entonces, ¿qué es la programación orientada a objetos?... pues bien, es una técnica de programación, que usa los objetos como secuencia de construcción. 102

Page 108: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo OBJETOS ¿Qué es un objeto?, Un Objeto es una colección de datos, junto con las funciones asociadas a esos datos y que operan sobre ellos. Lo importante y fundamental de los objetos, son las propiedades de ellos, y estas son:

• Herencia • Encapsulamiento o Encapsulación • Polimorfismo.

Supongo que, al igual que yo, es muy difícil de buenas a primeras comprender la Abstracción de los objetos, en programación. Pero no es tan difícil como parece, solo mire a su alrededor… ¿Qué ve?... una lámpara, un escritorio, una computador, ¿qué es lo que ve?... un sofá, unos libros…. Pues bien, todas las cosas que usted ve, son objetos. Debemos tener presente que, los humanos pensamos en términos de objetos. Por ejemplo, si usted ve una lámpara, inmediatamente la identifica como tal, pero usted sabe que un lámpara se compone de una base (que puede ser de metal, de porcelana, de plástico), se compone también de un foco, el cual es el que emite la luz, posee también una cortinilla, que a veces es sólo cartón forrado, y que sirve como adorno. Etc, etc… pero usted cuando piensa en una lámpara, NO piensa en los componentes de ésta, sino que piensa en el objeto_lámpara Características de los Objetos

Los objetos como tales, presentan muchas cualidades diferentes, respecto a una variable simple. Entre ellas podemos mencionar las siguientes:

1. Los objetos se pueden agrupar en rubros (o tipos) denominados Clases 2. El estado de los objetos está determinado por los datos del mismo 3. Permite lo que se conoce como Ocultación de datos 4. Pueden heredar propiedades de otros objetos 5. Por medio de los Mensajes un objeto se puede comunicar con otro 6. Los métodos definen el

comportamiento de los objetos 7.

Un objeto se puede representar gráficamente de la siguiente manera:

En donde, Nombre, es identificar correspondiente a ese objeto: Por ejemplo Empleados(), Alumnos(), Datos(), etc, etc. 103

Page 109: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Los atributos, son los datos con los que operan los métodos (o Funciones) del objeto. Y las Funciones o Métodos, son las que operan sobre esos datos. Clases Se puede decir, que son tipos definidos por el usuario, las cuales determinan la estructura de los datos y las funciones asociadas con esos tipos. Las clases como plantillas (que el programador crea). La clase define las variables y los métodos comunes a los objetos de ese tipo, pero luego, cada objeto tendrá sus propios valores y compartirán las mismas funciones. Primero deberemos crear una clase antes de poder crear objetos o instancias (ejemplares) de esa clase. ¿Qué son los mensajes?

Para poder crear una aplicación se necesita más de un objeto, y estos objetos no pueden estar aislados unos de otros, para comunicarse esos objetos se envían mensajes. Los mensajes son simples llamadas a las funciones o métodos del objeto con el se quiere comunicar para decirle que haga alguna cosa. ¿Qué es la herencia?

La herencia es un mecanismo que permite crear una clase basándose en una clase existente, y ésta tendrá todas las variables y los métodos de su ‗superclase‘, y además se le podrán añadir otras variables y métodos propios. Se llama ‗Superclase‘ a la clase de la que desciende una clase. Polimorfismo

(Poli=muchos; morfo=Formas), Polimorfismo, es la cualidad de tener más de una forma. Java, permite que el código de sus programas tenga la posibilidad de ser usados con diferentes tipos de datos u objetos. Por ejemplo, supongamos que A y B son dos variables de tipo entero, entonces, la operación: C= A+B Nos devolverá la suma de éstos dos números, el cuyo resultado será guardado en la variable C. Pero supongamos que A y B son del tipo String (es decir, dos cadenas de caracteres): String A= ―Hola‖; String B= ―Bienvenidos a la Programación en Java‖;

String C;

C=A+B;

Al tener esa secuencia de commandos, ya no obtendremos como resultado la suma de esos dos números, sino la concatenación de esas dos cadenas. Por tanto, el resuldao en pantalla, sería el siguiente:

104

Page 110: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN JAVA Antes de iniciar con instrucciones, reglas y otras bondades, de Java, es necesario más Bla-bla-bla, vamos a empezar hablando un poco acerca de la historia de Java. El lector se preguntará, el por que se le da tanta importancia a detalles como éste, y es por que, un programador debe conocer muy bien en el ambiente en el que se desarrolla. Así como el médico conoce muy bien el cuerpo humano, y así puede detectar cuando alguna de las partes de éste anda fallando, o como el soldado que conoce muy bien el campo de batalla, para que no vaya ser víctima de una emboscada por parte del enemigo. De igual manera el programador en Java, debe conocer hasta el más mínimo detalle de éste lenguaje de Programación, y no sólo de java, sino de todos los lenguajes, en los cuales nos decidamos experimentar y conocer.

HISTORIA DE JAVA

Java surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar un nuevo lenguaje de programación destinado a electrodomésticos. La reducida potencia de cálculo y memoria de los electrodomésticos llevó a desarrollar un lenguaje sencillo capaz de generar código de tamaño muy reducido. Debido a la existencia de distintos tipos de CPUs y a los continuos cambios, era importante conseguir una herramienta independiente del tipo de CPU utilizada. Desarrollaron un código ―neutro‖ que no dependía del tipo de electrodoméstico, el cual se ejecutaba sobre una ―máquina hipotética o virtual‖ denominada Java Virtual Machine (JVM). Era la JVM quien interpretaba el código neutro convirtiéndolo a código particular de la CPU utilizada. Esto permitía lo que luego se ha convertido en el principal lema del lenguaje: ―Write Once, Run Everywhere‖. A pesar de los esfuerzos realizados por suscreadores, ninguna empresa de electrodomésticos se interesó por el nuevo lenguaje. Como lenguaje de programación para computadores, Java se introdujo a finales de 1995. La clave fue la incorporación de un intérprete Java en la versión 2.0 del programa Netscape Navigator, produciendo una verdadera revolución en Internet. Java 1.1 apareció a principios de 1997, mejorando sustancialmente la primera versión del lenguaje. Java 1.2, más tarde rebautizado como Java 2, nació a finales de 1998. Al programar en Java no se parte de cero. Cualquier aplicación que se desarrolle ―cuelga‖ (o se apoya, según como se quiera ver) en un gran número de clases preexistentes. Algunas de ellas las ha podido hacer el propio usuario, otras pueden ser comerciales, pero siempre hay un número muy importante de clases que forman parte del propio lenguaje (el API o Application Programming Interface de Java). Java incorpora en el propio lenguaje muchos aspectos que en cualquier otro lenguaje son extensiones propiedad de empresas de software o fabricantes de ordenadores (threads, ejecución remota, componentes, seguridad, acceso a bases de datos, etc.). Por eso muchos expertos opinan que Java es el lenguaje ideal para aprender la informática moderna, porque incorpora todos estos conceptos de un modo estándar, mucho más sencillo y claro que con las citadas extensiones de

105

Page 111: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo otros lenguajes. Esto es consecuencia de haber sido diseñado más recientemente y por un único equipo. El principal objetivo del lenguaje Java es llegar a ser el ―nexo universal‖ que conecte a los usuarios con la información, esté ésta situada en el ordenador local, en un servidor de Web, en una base de datos o en cualquier otro lugar. Java es un lenguaje muy completo (de hecho se está convirtiendo en un macro-lenguaje: Java 1.0 tenía 12 packages; Java 1.1 tenía 23 y Java 1.2 tiene 59). En cierta forma casi todo depende de casi todo. Por ello, conviene aprenderlo de modo iterativo: primero una visión muy general, que se va refinando en sucesivas iteraciones. Una forma de hacerlo es empezar con un ejemplo completo en el que ya aparecen algunas de las características más importantes. La compañía Sun describe el lenguaje Java como ―simple, orientado a objetos, distribuido, interpretado, robusto, seguro, de arquitectura neutra, portable, de altas prestaciones, multitarea y dinámico‖. Además de una serie de halagos por parte de Sun hacia su propia criatura, el hecho es que todo ello describe bastante bien el lenguaje Java, aunque en algunas de esas características el lenguaje sea todavía bastante mejorable. Algunas de las anteriores ideas se irán explicando a lo largo de este manual (Tomado de: ―Aprenda Java como si estuviera en Primero‖). En éste curso, usaremos una de las versiones más recientes de Java, como lo es Java 2, y para compilar los programas, usaremos el compilador: JGrasp 1.8.4 de la Universidad de Auburn, el cual puede obtenerse de forma gratuita y sin problemas de licencia en: Spider.eng.auburn.edu/usercgi/grasp/grasp.pl?;dl=download_jgrasp.html Java 2 (antes llamado Java 1.2 o JDK 1.2) es la tercera versión importante del lenguaje de programación Java. No hay cambios conceptuales importantes respecto a Java 1.1 (en Java 1.1 sí los hubo respecto a Java 1.0), sino extensiones y ampliaciones, lo cual hace que a muchos efectos –por ejemplo, para esta introducción- sea casi lo mismo trabajar con Java 1.1 o con Java 1.2. Los programas desarrollados en Java presentan diversas ventajas frente a los desarrollados en otros lenguajes como C/C++. La ejecución de programas en Java tiene muchas posibilidades: ejecución como aplicación independiente (Stand-alone Application), ejecución como applet, ejecución como servlet, etc. Un applet es una aplicación especial que se ejecuta dentro de un navegador o browser (por ejemplo Netscape Navigator o Internet Explorer) al cargar una página HTML desde un servidor Web. El applet se descarga desde el servidor y no requiere instalación en el ordenador donde se encuentra el browser. Un servlet es una aplicación sin interface gráfica que se ejecuta en un servidor de Internet. La ejecución como aplicación independiente es análoga a los programas desarrollados con otros lenguajes. Además de incorporar la ejecución como Applet, Java permite fácilmente el desarrollo tanto de arquitecturas cliente-servidor como de aplicaciones distribuidas, consistentes en crear aplicaciones capaces de conectarse a otros ordenadores y ejecutar tareas en varios ordenadores simultáneamente, repartiendo por lo tanto el trabajo. Aunque también otros lenguajes de programación permiten crear aplicaciones de este tipo, Java incorpora en su propio API estas funcionalidades. Este puede descargarse, también de forma gratuita, desde http://www.java.sum.com ¿CÓMO REALIZAR UN PROGRAMA EN JAVA?

Lo primero, es que debe estar instalado primero la Máquina virtual de Java, Éste curso hemos trabajado con el JDK 1.5.0_07, el cual se encuentra el hoja web mencionada arriba.

106

Page 112: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Debe descargar al archivo jdk-1_5_0_07-windows-i586-p y luego instalarlo, ésta operación puede tardar algunos minutos, y si la PC es un poco lenta, le sugiero tener mucha paciencia. Después de haber instalada a Java2 debe instalar a JGrasp ya que éste es el que nos servirá como editor de nuestros programas.

Después que haya instalado a JGrasp ( si es que está haciendo uso de éste programa), debe abrir éste programa (JGrasp) y en el menú principal, escoger Setting, luego Compiler Setting y luego Workspace. Deberá aparecer una ventana, como la que se muestra a la derecha. En ella debe cerciorarse que en la opción de lenguaje, sea Java y que esté seleccionada las pestaña que dice: Enviromennt. Luego seleccionar la carpeta j2sdk 1.5 y dar un clic en el botón copy , aparecerá otra ventana. Luego debe seleccionar esa copia que acaba de hacer (generalmente aparece hasta el final del listado) y dar un clic en el botón edit , en la ventana que aparecerá, puede cambiar el nombre de la copia. Y en la opción llamada V1(%V1) que aparece casi al final de la ventana debe instalar la dirección completa en la cual se encuentra instalado Java en su máquina (Ejemplo: C:\Archivos de programa\Java\jdk1.5.0_08\bin\)

Las demás opciones No deben ser modificadas, luego clic en OK. Ahora debe verificar que tiene seleccionado el ambiente que recién acaba de crear, para ello, seleccione nuevamente el ambiente que ha creado (la copia de j2sdk 1.5), luego clic en Apply y clic en Ok.

107

Page 113: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Para desarrollar un Programa en Java, es necesario:

Editar el programa Compilarlo Ejecutarlo Depurarlo

TIPOS DE DATOS

En java, hay que distinguir esencialmente dos grandes rubros: 1. Tipos de datos Orientados a Objetos 2. Tipos de datos No orientados o Objetos (Muy parecidos a los de C)

Tipos de Datos Simples Tipos Descripción

boolean Representa valores TRUE/FALSE. Esta es una

de las grandes diferencias respecto a C byte Representa enteros de 8 bits char Al igual que en C, se utiliza para representar

datos de tipo Carácter. double Valores de punto flotante pero con doble

precisión float Valores de tipo Real con precisión Simple int Sirve para representar valores de tipo entero long Entero Largo short Entero corto

Tabla 2.1 Veamos un poco Acerca del rubro de los datos de tipo Entero:

byte 8 bits Valores numéricos de –128 a 127

short 16 bits Valores numéricos de –32.768 a 32.767

int 32 bits Valores numéricos de –2.147.483.648 a 2.147.483.647

long 64 bits Valores numéricos sin límite.

Tabla 2.2

108

Page 114: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Los tipos de datos Orientados a Objetos son: Clases Interfaces Arrays De os cuales, hablares en su momento. ELEMENTOS DE UN PROGRAMA EN JAVA

Un programa en java, debe tener los siguientes elementos: La zona de inclusión: que es similar al pre-procesador de C, donde especificamos los paquetes que vamos a usar en nuestro programa. Los cuales deben ser especificados al inicio del programa, con ayuda de la sentencia import y acompañado de un punto y coma (;) al final de la instrucción. Eje:

Import javax.swing.JOptionPane; import java.io.*;

En java, podemos incluir todo el paquete, como en el caso de java.io, al agregarle el asterisco; o simplemente, especificamos que archivos del paquete que queremos usar, como en el primer caso, en el cual estamos incluyendo (o mejor dicho importando) el archivo JOptionPane, del paquete javax.swing. (El cual nos ayuda para poder usar las cajitas de texto para mandar información a la pantalla o para leerla desde el telado). Las clases: Un Programa en java, debe poseer AL MENOS una clase, con la cual se debe proseguir en la configuración de nuestro programa. Eje:

class PrimerPrograma Como puede verse, una clase se especifica con la palabra reservada class. Una clase puede ser: Pública o Privada. De lo cual hablares más adelante, por el momento el usuario, debe unicamente especificar una clase, únicamente con class por que después comprenderá la diferencia y podrá aplicarlo a sus programas. Además el nombre de la clase, debe iniciar con mayúscula. El programa principal: El cual siempre, siempre, siempre se especificará de la siguiente manera: public static void main (String args[])

109

Page 115: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Lo que está entre los parentesis, indica nada más los argumentos que recibe nuestro programa, el cual SIEMPRE SERÁ uno del tipo String, el nombre de args, puede ser cambiado, pero NUNCA debe omitirse los corchetes.

Ahora veamos un pequeño Ejemplo: Ejemplo Diseñe un programa en Java que muestre en pantalla un saludo de Bienvenida al Usuario. 1 import java.lang.*; 2 class PrimerPrograma 3 public static void main (String args[]) 4 System.out.println("Hola! Bienvenido a Java"); 5 6 Explicación En la línea numero Uno, encontramos la llamada al paquete, el cual es java.lang (éste paquete nos ayuda para usar las funciones matemáticas y otras funciones como System.out.println, sin embargo NO es necesario especificarlo, ya que Java, por defecto, incluye éste paquete en todos los programas que creamos). Luego encontramos la declaración de la clase, la cual es PrimerPrograma, como puede observar la primera letra es mayúscula, y como el nombre está compuesto por dos palabras (Primer y Programa), es por tal razón que cada una de ellas tienen su primera letra mayúscula. Otra cosa importante es que, el nombre del archivo, (que tiene extención *.java), SIEMPRE se debe llamar igual que la clase; es decir que, este código, está guardado como: PrimerPrograma.java. Si está usando JGrasp, generalmente el coloca el nombre y lo unico que tenemos que hacer es dar clic en guardar en el commandwindow, pero a veces, con esos paradigmas de la programación, JGrasp no lo coloca, es por tal razón que debemos estar seguros que el archivo ha sido guardado con el mismo nombre de la clase. Por que de lo contrario lanzará una excepción (de la cual hablaremos más adelante) y NO correrá el programa. Posteriormente, encontramos la sentencia System.out.println(), el cual nos sirve para mandar información a pantalla, la cual será mostrada en la consola de DOS, y será más o menos así:

Luego encontramos la llave correspondiente al main y la llave correspondiente a la clase.

110

Page 116: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

USO DE VARIABLES

En todas las aplicaciones que realizamos, se necesitan entre muchas cosas, valores, datos; que cambien a medida se ejecuta el programa. Por tal razón, un programa que solo muestre en pantalla datos (como el ejemplo 2.1), no es muy funcional que se diga. Para ello, es necesario hacer uso de las variables que no son más que una unidad de almacenamiento, la cual tiene la propiedad de cambiar a medida se ejecuta la aplicación ( a diferencia de las constantes cuyo valor NO cambia). Para declarar una variable en Java, se prosigue de la siguiente forma:

tipo identificado=valor;

Donde: Tipo: Es el tipo de dato que almacenará, el cual puede ser cualquiera de los que se muestran en la tabla 2.1. Identificar: que hace referencia al nombre de la variable.

Valor: No es necesario, pero Java permite inicializar variables, por ejemplo, los contadores, acumuladores, etc; Ejemplos: 1 int i; 2 float suma=0; 3 double saldo; 4 String Nombre En la línea uno, estamos declarando una variable de tipo entero, identificada por i. en la línea dos, tenemos una variable del tipo real, inicializada a cero, podemos asumir que se trata de un acumulador. Luego, se puede hacer notar que saldo, está declarada como real de doble precisión, y finalmente en la línea 4 se encuentre Nombre que es una variable de tipo String, es decir; una cadena de caracteres, ya que Java soporta este tipo de datos. Ejemplo Programa que Muestra el nombre, edad y sueldo de una persona.

111

Page 117: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo class DatosPersonales public static void main (String args[]) String Nombre="Manuel Ortez"; int edad=20; double sueldo=500.00; System.out.println("Nombre del empleado: "+Nombre); System.out.println("Edad: ");//Impresion de la leyenda edad System.out.println(edad); System.out.println("Sueldo: "+sueldo); //fin del main //fin de la clase Explicación Como puede notarse, la variable Nombre, es una cadena de caracteres, la cual está inicializada, y todos los valores de una cadena se escriben entre comillas dobles. Además note que, en el método System.out.printl, podemos hacer varias combinaciones al momento de mandar a la impresión. Para el caso, si una ( o más cadenas) se van a mandar a impresión acompañadas de una (o más variables), estos argumentos se unen, mediante el operador ‗+‘. Sin embargo, esto no es necesario cuando se trata de la impresión de una sola variable: System.out.println(edad); Ejemplo Programa que calcula el area y el perímetro de un círculo class Circulo public static void main (String args[]) double radio=2.3; double perimetro; double area; area=Math.PI*radio*radio; perimetro=2*Math.PI*radio; System.out.println("El area es: "+area+" Y el perímetro es: "+perimetro); Explicación Me parece que, en lo único que debemos poner atención es en dos cosas. La primera, es que Math.PI es una constante, (3.14159….), la cual, está dentro del paquete de java.lang; el cual, como ya lo hemos dicho, está incluido, por defecto, en todos nuestros programas de manera automática; además que, note que la única impresión que se hace, enlazamos los parámetros con el operador ‗+‘. System.out.println("El area es: "+area+" Y el perímetro es: "+perimetro); OPERADORES, COMENTARIOS Y LITERALES.

En todas las aplicaciones, No solo en Java, sino en cualquier otro lenguaje de programación, nos ayudan a enriquecer nuestro código y hacerlo más robusto y funcional.

112

Page 118: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Operadores

Un Operador, es un símbolo que le indica al compilador que realice una determinada operación, ya sea lógica, relacional, aritméticas, etc. Como consecuencia, nacen los diferentes tipos de operadores que existen. En Java, podemos encontrar los siguientes tipos: Operadores Aritméticos Operadores a nivel de Bit Operadores Relacionales Operadores Lógicos Operadores Aritméticos Estos operadores se utilizan para realizar diferentes operaciones aritméticas, por tal razón se utilizan en variables de tipo numéricas.

Aritméticos DESCRIPCIÓN + Suma

- Resta

* Multiplica

/ Divide

% Devuelve el resto de una división

++ Incrementa en 1

-- Decremento en 1

Tabla 2.2

Ejemplo Programa que usa varios tipos de instrucciones class Operadores public static void main (String args[]) int x=10; int y=12; int resultado; resultado=x+y; System.out.println("El resultado de la suma es: "+resultado); resultado=y-x; System.out.println("El resultado de la resta es: "+resultado); resultado=x/y; System.out.println("El resultado de la división es: "+resultado);

x++; y++; System.out.println("Ahora x es: "+x+"y Y es: "+y);

113

Page 119: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Operadores Lógicos

Operador Descripción && Y lógico. Condicion1 && Condicion2 || O lógico. Condicion1 || Condicion2 ! Negación. !(Condicion1) Operadores Relacionales

Operador Descripción == Es igual a != No es igual a (Distinto) > Mayor que < Menor que >= Mayor o Igual a <= Menor o igual que Comentarios

Un comentario es un mensaje cualquiera, que se escribe entro del código; pero que no es interpretado por le compilador, y que ayuda, al programador para futuros mantenimientos y para comprender, tiempo después, la secuencia de ejecución del programa. Java, posee tres tipos de comentarios:

1. Tradicional: Comienza con /* y termina con */, en él podemos escribir una línea o un párrafo completo. Ejemplo: /*Ejemplo de un comentario */ /* También podemos escribir Nuestros comentarios En varias líneas*/

2. De una sola línea: Comienzan con una doble barra (//), y se extiende hasta el final de la línea. Ejemplo: //Este comentario es válido sólo para una línea

3. Comentario de Documentación Comienza con /** y termina con */ son comentario especiales que javadoc utiliza para generar, documentación acerca del programa. Ejemplo: /** Programa Visor 3.11 San Salvador, El Salvador Diciembre de 2006*/ Literales

Los literales, son valores fijos que son legibles, para nosotros los humanos. Generalmente son llamados constantes. En java, los literales, pueden ser del tipo real, entero, cadenas, booleanas y null. Las constantes de tipo carácter, se encierran entre comillas simples, así: ‗m‘, `$`. Las constantes enteras, son aquellas que no llevan parte fraccionaria, ni tampoco van entre comillas.

114

Page 120: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ejemplo: 10, -1. Las constantes de tipo flotante, son aquellas que se componen de una parte entera, un punto decimal, y una parte fraccionaria: 8.75, 142.639.

Las Literales de tipo cadena, se especifican entre comillas dobles. Así: ―Ejemplo de una cadena‖; Además, un literal de tipo String, puede contener una o más secuencias de escape. Por ejemplo, la secuencia de escape ‗\n‘, se utiliza para cambiar de línea. Así: ―Manuel\nOrtez‖; Si mandamos a imprimir esa literal, veremos el siguiente resultado:

ENTORNO GRÁFICO Hasta, el momento, no hemos conocido las bondades de Java, por que, tal parece que, nuestros programas fuesen compilados en C, ya que corren en la ventana de DOS. Sin embargo Java permite el uso de ventanas, para leer y mostrar datos. Así como el uso de aplicaciones web, lo que se conoce como Applet. USO DEL PAQUETE javax.swing.*;

Este paquete, contiene dos de los métodos más importantes, en cuanto a lo que a entorno gráfico se refiere. Por ejemplo, si queremos mandar imprimir en pantalla algún mensaje, por medio de una ventana, la sintaxis es la siguiente:

JOptionPane.showMessageDialog(null, ―Mensaje‖); En donde: Null, es argumento que, SIMPRE lo pondremos en el método MessageDialog ―Mensaje‖, es la cadena de caracteres que queremos imprimir.

115

Page 121: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ejemplo Veamos este ejemplo que, manda a impresión el mensaje de Hola 1 import javax.swing.*; 2 class Mensaje 3 public static void main (String args[]) 4 JOptionPane.showMessageDialog(null,"Hola"); 5 6 El resultado que veremos en la pantalla es el siguiente:

Ejemplo Note, las secuencias de escape que, también se pueden utilizar en éste método 1 import javax.swing.*; 2 class Mensaje1 3 public static void main (String args[]) 4 JOptionPane.showMessageDialog(null,"Manual de Java\nUna forma Facil de Aprender a Programar\n\n\t\tDiciembre de 2006"); 5 JOptionPane.showMessageDialog(null, "Creado por Manuel Ortez"); 6 7 LEER DATOS

Para leer los datos, usamos el método ShowInputDialog, de la forma siguiente:

Var=JOptionPane.showInputDialog(―Mensaje‖);

Donde: Var: es el nombre de la variable que hace referencia al valor leído. Mensaje: Es el mensaje que aparecerá, en la caja de diálogo. Pero debemos tener presente que, éste método devuelve un tipo de dato String, por tal razón cuando leamos un flotante, double, int, etc, debemos realizar la conversión. Ejemplo Programa que lee un nombre y luego lo imprime 1 import javax.swing.*; 2 class Mensaje2 3 public static void main (String args[]) 4 String Nombre; 5 Nombre=JOptionPane.showInputDialog("Digite su nombre");

116

Page 122: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 6 JOptionPane.showMessageDialog(null, "Bienvenido "+Nombre); 7 8 9 Ejemplo Se desea Crear una Mini-calculadora, que permita, sumar, restar y multiplicar dos números ingresados por el usuario. 1 import javax.swing.*; 2 class MiniCalcu 3 public static void main (String args[]) 4 double n1, n2, resultado;//Estos son los numeros 5 String leer;//variable auxiliar con la cual leeremos los datos 6 leer=JOptionPane.showInputDialog("Escriba el primer Número"); 7 //Esta es la forma para hacer el cambio de cadena a doble 8 n1=Double.parseDouble(leer); 9 leer=JOptionPane.showInputDialog("Escriba el primer Número"); 10 n2=Double.parseDouble(leer); 11 resultado=n1+n2; 12 JOptionPane.showMessageDialog(null, "El resultado de la suma es: "+resultado); 13 resultado=n1-n2; 14 JOptionPane.showMessageDialog(null, "El resultado de la resta es: "+resultado); 15 resultado=n1*n2; 16 JOptionPane.showMessageDialog(null, "El resultado de la multiplicación es:

"+resultado); 17 resultado=n1/n2; 18 JOptionPane.showMessageDialog(null, "El resultado de la división es: "+resultado);

19 20 Explicación El lector, debe notar, la forma en que debe hacer la conversión de un carácter a un valor diferente. Para el caso, la línea 8 y 13, después de haber leído los valores correspondiente, hacemos el cambio así:

N1=Double.parseDouble(leer);

Double, es la clase que contiene al tipo de dato double, luego se escribe el método parse, y le pasamos como argumento, la variable leer, que contiene el número(en cadena de caracteres), que deseamos convertir a double. Si queremos convertir a entero: N1=Integer.parseInt(leer); Si lo que queremos es convertirlo a float: N1=Float.parseFloat(leer);

117

Page 123: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

APPLET’S

USO DE APPLET`S

Muchos de los libros y Manuales de Java, tratan éste tópico hasta muy avanzados en el curso. Sin embargo, considero que, es mejor aprender a usar applets, antes de tratar otros temas como los elementos gráficos, animaciones, etc, que generalmente, son más conocidas en Internet. ¿QUÉ ES UN APPLET?

Un Applet, es una mini-aplicación escrita en Java, y que se ejecuta en un navegador (Netscape, Internet Explorer, etc), al cargar una página HTML que contiene información sobre el applet a ejecutar.

CARACTERÍSTICAS

Las características de las applets se pueden considerar desde el punto de vista del programador y desde el del usuario. En este manual lo más importante es el punto de vista del programador:

Las applets no tienen un método main() con el que comience la ejecución. El papel central de su ejecución lo asumen otros métodos que se verán posteriormente.

Todas las applets derivan de la clase java.applet.Applet. La

Figura de la izquierda muestra la jerarquía de clases de la que deriva la clase Applet. Las applets deben redefinir ciertos métodos heredados de Applet que controlan su ejecución: init(), start(), stop(), destroy().

Se heredan otros muchos métodos de las super-clases de Applet que tienen que ver con la generación de interfaces gráficas de usuario (AWT). Así, los métodos gráficos se heredan de Component, mientras que la capacidad de añadir componentes de interface de usuario se hereda de Container y de Panel.

Las applets también suelen redefinir ciertos métodos gráficos: los más importantes son paint() y update(), heredados de Component y de Container; y repaint() heredado de Component.

Las applets disponen de métodos relacionados con la obtención de información, como por ejemplo: getAppletInfo(), getAppletContext(), getParameterInfo(), getParameter(), getCodeBase(), getDocumentBase(), e isActive().

118

Page 124: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo MÉTODOS QUE CONTROLAN LA EJECUCIÓN DE UN APPLET

Los métodos que se estudian en este Apartado controlan la ejecución de las applets. De ordinario el programador tiene que redefinir uno o más de estos métodos, pero no tiene que preocuparse de llamarlos: el browser se encarga de hacerlo.

Método init()

Se llama automáticamente al método init() en cuanto el browser o visualizador carga el applet. Este método se ocupa de todas las tareas de inicialización, realizando las funciones del constructor (al que el browser no llama).

En Netscape Navigator se puede reinicializar un applet con Shift+Reload. Método start()

El método start() se llama automáticamente en cuanto el applet se hace visible, después de haber sido inicializada. Se llama también cada vez que el applet se hace de nuevo visible después de haber estado oculta (por dejar de estar activa esa página del browser, al cambiar el tamaño de la ventana del browser, al hacer reload, etc.).

Es habitual crear threads en este método para aquellas tareas que, por el tiempo que requieren, dejarían sin recursos al applet o incluso al browser. Las animaciones y ciertas tareas a través de Internet son ejemplos de este tipo de tareas.

Método stop()

El método stop() se llama de forma automática al ocultar el applet (por haber haber dejado de estar activa la página del browser, por hacer reload o resize, etc.).

Con objeto de no consumir recursos inútilmente, en este método se suelen parar las threads que estén corriendo en el applet, por ejemplo para mostrar animaciones.

Método destroy()

Se llama a este método cuando el applet va a ser descargada para liberar los recursos que tenga reservados (excepto la memoria). De ordinario no es necesario redefinir este método, pues el que se hereda cumple bien con esta misión.

MÉTODOS PARA DIBUJAR EL APPLET

Las applets son aplicaciones gráficas que aparecen en una zona de la ventana del browser. Por ello deben redefinir los métodos gráficos paint() y update(). El método paint() se declara en la forma:

public void paint(Graphics g)

El objeto gráfico g pertenece a la clase java.awt.Graphics, que siempre debe ser importada por el applet. Este objeto define un contexto o estado gráfico para dibujar (métodos gráficos, colores, fonts, etc.) y es creado por el browser.

Todo el trabajo gráfico del applet (dibujo de líneas, formas gráficas, texto, etc.) se debe incluir en el método paint(), porque este método es llamado cuando el applet se dibuja por primera vez y también de forma automática cada vez que el applet se debe redibujar.

En general, el programador crea el método paint() pero no lo suele llamar. Para pedir explícitamente al sistema que vuelva a dibujar el applet (por ejemplo, por haber realizado algún cambio) se utiliza el

119

Page 125: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo método repaint(), que es más fácil de usar, pues no requiere argumentos. El método repaint() se encarga de llamar a paint() a través de update().

El método repaint() llama a update(), que borra todo pintando de nuevo con el color de fondo y luego llama a paint(). A veces esto produce parpadeo de pantalla o flickering. Existen dos formas de evitar el flickering:

1. Redefinir update() de forma que no borre toda la ventana sino sólo lo necesario.

2. Redefinir paint() y update() para utilizar doble buffer.

Mediante el objeto de la clase Font asignaremos tipo de letra, estilo y tamaño. Luego utilizaremos el método setFont para establecer ese tipo de letra. Para mostrar esa cadena utilizaremos otros métodos dentro de paint. En resumen para trabajar con texto, primero le damos las características, luego las establecemos y por último lo mostramos.

Mostrar texto: Objeto_gráfico.drawString(―mensaje‖,x,y);

Objeto_grafico.drawChars(―mensaje‖,pos_char,1,x,y);

Cuando mostramos la cadena, la posición donde se muestra se lo indicamos mediante los valores de x e y, que es el extremo izquierdo de la línea base de los caracteres. Los valores que puede tomar el parámetro estilo son:

ESTILO DESCRIPCIÓN

Font.BOLD Negrita.

Font.ITALIC Cursiva.

Font.PLAIN Normal.

Ejemplo Diseñe un Applet que Dibuje una leyenda, la cual el usuario ingresará mediante una caja de texto. 1 import java.applet.Applet; 2 import java.awt.*; 3 import javax.swing.*; 4 //declaración de la clase 5 public class PrimerApplet extends Applet 6 7 String leyenda; 8 public void init() 9 10 //vamos a leer 11 leyenda=JOptionPane.showInputDialog("Ingrese la Leyenda que Desea Dibujar:"); 12 13 public void paint(Graphics g) 14 15 //llamar a la versión del método paint de la clase Applet 16 super.paint(g); 17 g.drawString(leyenda, 50,50); 18 //dibujamos el contenido de leyenda, comenzando en las coordenadas x=50 y Y=50

120

Page 126: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 19 20 Explicación Para correr èste código, lo que debemos hacer es guardar el archivo, una vez que hemos digitado todas las instrucciones. Luego compilarlo, una vez hecho esto, procedemos a ejecutarlo, dando un clic sobre

el botón: o en Build/Run as Applet. En la línea cinco, el lector debe notar una palabra, nueva extends la cual, le indica al compilador que, esa clase de deriva de la SuperClase Applet, y que por tanto éste archivo debe ser tratado como un Applet. Luego, realizamos una declaración, de la variable que vamos a leer, note que, lo hacemos fuera de cualquier método, esto es, para que ésta variable pueda ser utilizada por cualquier método sin necesidad de pasarla como parámetro. Recuerde, además que, los métodos siempre serán del tipo public y no devolverán ningún valor (void), además que paint, recibe como parámetro, a g (que puede llamarse diferente), y que es del tipo Graphics. El método drawString, se utiliza para dibujar una cadena de caracteres, de la cual siempre debemos especificar, las coordenadas donde iniciará a dibujar. Estas coordenadas, de cuentan de la esquina superior izquierda, hacia la derecha (para x), y hacia abajo (para y). Otros métodos útiles son: g.drawLine(10,10,250,30); Para dibujar una línea, ancho alto, y coordenadas g.drawRet(20, 20, 50,50); Para dibujar un rectángulo, base altura y coordenadas g.drawOval(5,6,50,50); Para dibujar un övalo, radio mayor, radio Menor y Coordenadas. Ejemplo Se desea crear un Appletque, dibuje un rectangulo, un óvalo y una línea, e indique, con una leyenda, el nombre de la misma. 1 import java.awt.*; 2 import javax.swing.*; 3 public class DibujosVarios extends JApplet 4 5 public void paint(Graphics g) 6 7 super.paint(g); 8 g.drawLine(25,25,100,25); 9 g.drawString("Esta es una Línea", 30,100); 10 g.drawRect(150,25,50, 60); 11 g.drawString("Este es un Reactangulo", 150,100); 12 g.drawOval(300,25,40,20); 13 g.drawString("Este es un Ovalo", 300,100); 14 15 Explicación

121

Page 127: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Para poder ver, éste archivo, es necesario crear un archivo HTML, que contenga, el siguiente código: <html> <applet code="DibujosVarios.class" width="500" height="250" > </applet> </html> Recuerde que, éste archivo, lo debe editar con el bloc de notas y guardarlo con extención *.htm, para ver el resultado siguiente:

COLORES EN LOS APPLETS

Podemos hacer, que un objeto tenga un color en específico, o que el fondo del applet, tenga uno u otro color. La sintaxis es la siguienmte: Para objeto: Nombre_de_objeto.setColor(Color.variable_color); Para el fondo: setBackground(Color.variable_color); Variable_color, puede ser: black, white, red, yellow, green, blue, cyan, orange, gray, darkGrayy lightGray Ejemplo Diseñe un Applet que muestre un mensaje en tres colores diferentes. 1 import javax.swing.*; 2 import java.awt.*; 3 public class Dibujos extends JApplet 4 public void init() 5 6 setBackground(Color.blue); 7 8 9 public void paint (Graphics g) 10 11 super.paint(g); 12 g.setColor(Color.white); 13 g.drawString("Bienvendido", 25,25); 14 g.setColor(Color.cyan); 15 g.drawString("A la programación con Applet", 25,50); 16 g.setColor(Color.yellow); 17 g.drawString("Con Java", 25,75); 18 19

122

Page 128: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

CADENAS DE CARACTERES VARIABLES

Como ya lo hemos dicho, una variable, es aquella que, tiene la propiedad o capacidad de cambiar de valor, durante al ejecución del programa. Supongamos que se necesitan dos variables de tipo double, la declaración de ellas, sería:

double x, y;

Cuando, realizamos ésta acción (o la declaración de cualquier otro tipo de variables), estamos asignando espacio en memoria (el tamaño viene dado por el tipo de dato, del cual se está declarando. Ver tabla 2.2). En dicho espacio, se guardará el valor, que almacenará dicha variable. Por tanto, una variable tiene tres propiedades básicas:

1. Una posición de memoria para almacenar el valor 2. El tipo de datos almacenado en la posición de memoria. 3. Y el identificar (nombre) asociado a ésa posición de memoria.

Ahora bien, el lector se preguntará, el por qué, pareciera una redundancia, al hablar de las variables, ya que, esto lo hemos tratado con anterioridad. Pues bien, es importante saber esto, ya que iniciaremos hablando de lo que es la esencia de Java: LOS OBJETOS

Un Objeto, es una colección de datos y operaciones, que utilizan esos datos. Declarar un Objeto Al declarar un objeto, lo único que hacemos es declarar una variable, de ése tipo, la cual hará referencia a ése objeto. Por tanto, dicha variable contendrá una dirección de memoria (Algo similar a lo que eran los punteros en C). Un objeto se crea, a partir del operador new y el constructor correspondiente a la clase, de la cual se está creando el objeto. Por ejemplo, si deseamos crear, un objeto de la Clase Datos, sería así:

Datos Jefe; //Declaración del Objeto Jefe=new Datos();//Creación del Objeto Pero También podemos hacerlo en una sola línea: Datos Jefe=new Datos();//Declaración y Creación del Objeto

Puesto que, de la misma manera que, se puede declarar e inicializar una variable; un objeto puede ser declarado y creado al mismo tiempo. Uso de Las Cadenas de Caracteres

Las clases String y StringBuffer están orientadas a manejar cadenas de caracteres. La clase String está orientada a manejar cadenas de caracteres constantes, es decir, que no pueden cambiar. La clase StringBuffer permite que el programador cambie la cadena insertando, borrando, etc. La primera es máseficiente, mientras que la segunda permite más posibilidades.

123

Page 129: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ambas clases pertenecen al package java.lang, y por lo tanto no hay que importarlas. Hay que indicar que el operador de concatenación (+) entre objetos de tipo String utiliza internamente objetos de la clase StringBuffer y el método append().

Los métodos de String se pueden utilizar directamente sobre literales (cadenas entre comillas), como por ejemplo: "Hola".length().

Por ejemplo, si deseamos crear una cadena de caracteres del tipo String: String nombre; String Direccion= ―San Salvador, El Salvador‖; A continuación, veamos algunos métodos de la Clase String: Método Descripción String(―…‖) Constructor para crear el objeto. Casi nunca se utiliza, ya que no

es tan eficiente. CharAt(int) Devuelve el carácter en la posición especificada. getChars(int, int,char[], int)

Copia los caracteres indicados en la posición indicada de un array de Caracteres.

indexOf(String, [int])

Devuelve la posición en la que aparece por primera vez un String en otro String, a partir de una posición dada (opcional)

length()

Devuelve el número de caracteres de la cadena

replace(char, char)

Sustituye un carácter por otro en un String

startsWith(String)

Indica si un String comienza con otro String o no

substring(int, int)

Devuelve un String extraído de otro

toLowerCase()

Convierte en minúsculas (puede tener en cuenta el locale)

toUpperCase()

Convierte en mayúsculas (puede tener en cuenta el locale)

trim()

Elimina los espacios en blanco al comienzo y final de la cadena

valueOf()

Devuelve la representación como String de sus argumento. Admite Object, arrays de caracteres y los tipos primitivos

Tabla 4.1 Ejemplo Diseñe un Programa que, lea una cadena de Caracteres, y luego, muestre esa misma cadena en minúsculas, mayúsculas y la longitud de la misma. 1 import javax.swing.*; 2 public class UsoCadenas 3 public static void main (String args []) 4 String cadena, aux;

124

Page 130: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 5 cadena=JOptionPane.showInputDialog("Ingrese la Cadena"); 6 /*En la variable aux, guardamos la nueva cadena 7 Note la forma en la que llamamos

los métodos: 8 Variable.Nombre_del_Metodo();*/ 9 aux=cadena.toLowerCase(); 10 JOptionPane.showMessageDialog(null, "Cadena en Minúsculas: "+aux); 11 aux=cadena.toUpperCase(); 12 JOptionPane.showMessageDialog(null, "Cadena en Mayúsculas: "+aux); 13 JOptionPane.showMessageDialog(null, "La longuitud de la cadena es:

"+cadena.length()); 14 15 Explicación Declaramos dos referencias a objetos de la clase String, una de ellas es identificada por ―cadena‖, la cual guardamos, la cadena que, el usuario ha ingresado. La otra referencia (aux), nos sirve para guardar, el resultado que devuelven los métodos que hemos llamado. En las líneas 9,10 y 11, puede observar, la forma en la que se llaman a los métodos correspondientes, para las operaciones que deseamos realizar. La sintaxis es la siguiente: Nombre_de_la_refencia_de_objeto . Nombre_del_metodo(); Existen, algunos métodos que, reciben parámetros, los cuales, deben especificarse, dentro de los paréntesis del mismo. Pero, en el ejemplo anterior no es el caso. La clase StringBuffer se utiliza prácticamente siempre que se desee modificar una cadena de caracteres. Completa los métodos de la clase String ya que éstos realizan sólo operaciones sobre el texto que no conllevan un aumento o disminución del número de letras del String.

Recuérdese que hay muchos métodos cuyos argumentos deben ser objetos String, que antes de pasar esos argumentos habrá que realizar la conversión correspondiente. La Tabla 4.2 muestra los métodos más importantes de la clase StringBuffer.

Nombre del Método Descripción StringBuffer() Constructores del Objeto. capacity() Devuelve el espacio disponible del Objeto StringBuffer charAt(int) Devuelve el carácter que ocupa la posición especificada. getChars(int, int, char[], int)

Copia los caracteres indicados en la posición indicada de un array de caracteres

insert(int) Inserta un String ( o cualquier otro tipo de dato primitive), en la posición que se especifica.

length() Devuelve la longitud de la cadena. reverse() Devuelve una cadena invertida. setCharAt(int, char) Cambia el carácter char, el la posición int. toString() Convierte en Objeto del tipo String.

Tabla 4.2

Ejemplo Escriba un Applet que, lea una cadena de caracteres y luego, la imprima tal cual fue digitada, y luego la dibuje de al revés. 125

Page 131: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 1 import javax.swing.*; 2 import java.awt.*; 3 public class UsaBuffer extends JApplet 4 5 String aux; 6 StringBuffer cadena;//Declaración del objeto 7 public void init() 8 9 //Realizamos la lectura 10 aux=JOptionPane.showInputDialog("Ingrese la Cadena"); 11 cadena=new StringBuffer(aux);// al constructor del objeto le enviamos el valor de aux

12 13 public void paint (Graphics g) 14 15 super.paint(g); 16 g.drawString("La cadena Original es: "+cadena, 25,25); 17 cadena.reverse(); 18 g.drawString("La cadena invertida es: "+cadena, 25,50); 19 20 21

MÉTODOS MATEMÁTICOS La biblioteca de clases de Java incluye una clase Math en su paquete java.lang, la cual define un conjunto de operaciones matemáticas de uso común que pueden ser utilizadas en cualquier programa. Veamos la siguiente tabla:

Método Descripción static double E Valor del número e, base del logaritmo

natural. double PI Valor del número PI (3.1416…..) Tipo abs(tipo a) Valor absoluto de a. Tipo max(tipo a, tipo b) Valor mayor entre a y b Tipo min(tipo a, tipo b) Valor menor entre a y b double random() Valor aleatorio, comprendido entre 0.0 y

1.0 double rint(double a) Redondeo de a double sqrt (double a) Devuelve la raíz cuadrada de a double exp(double a) Devuelve el avlor de ea double log (double a) Devuelve el logaritmo a de a double pow(double a, double b) Devuelve el valor de ab double acos(double a) Devuelve el arco coseno de a double asin(double a) Devuelve el arco seno de a double atan(double a) Devuelve el arco tangente de a double sin(double a) Devuelve el seno de a double cos(double a) Devuelve el coseno de a double tan(double a) Tangente de a

Tabla 4.3 126

Page 132: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ejemplo Diseñe una aplicación en Java que dado el valor de un ángulo, encuentre su seno, coseno, tangente. Luego, le permita ingresar un dato al usuario, con el cual, pueda calcular su raíz cuadrada. 1 import javax. swing.*; 2 class UsaMetodos 3 4 public static void main(String args []) 5 6 String leer; 7 double angulo, valor; 8 leer=JOptionPane.showInputDialog("Ingrese el valor del ángulo: "); 9 angulo=Double.parseDouble(leer); 10 JOptionPane.showMessageDialog(null, "El valor del seno es: "+Math.sin(angulo)+"\nEl Valor del Coseno del angulo es: "+Math.cos(angulo)+"\nY la tangente es: "+Math.tan(angulo)); 11

leer=JOptionPane.showInputDialog("Ingrese el valor, al cual le desea calcular la raíz cuadrada:"); 12 valor=Double.parseDouble(leer); 13 JOptionPane.showMessageDialog(null, "La raíz cuadrada de: "+valor+" es:

"+Math.sqrt(valor)); 14 15 Explicación: Recuerde que, le método showInputDialog, devuelve un tipo de dato String, es por esa razón que, siempre debemos realizar el cambio al tipo de dato que deseamos usar, en nuestro caso double. Además que, para llamar los diferentes métodos matemáticos, lo hacemos de la siguiente forma: Math.nombre_de_metodo(parámetro); Además que, en vez de realizar el cálculo y la impresión en la misma línea (en el método showMessageDialog), podríamos haber calculado los respectivos valores por separado, asignarlos a tres variables auxiliares, y mandar a impresión esas variables.

EXCEPCIONES Una excepción es una condición anormal que surge en una secuencia de código durante la ejecución. La gestión de excepciones lleva a la gestión de errores en tiempo de ejecución. Cuando surge una condición excepcional se crea un objeto Exception. El trabajo con excepciones se realiza mediante las siguientes palabras clave:

• try Tiene el código de ejecución, si se produce un error lanza (throw) una excepción que será capturada.

• catch Captura la excepción lanzada por try que le precede. Puede capturar más de una excepción, es decir que se pueden añadir.

• finally La excepción es tratada en un gestor por omisión. Sintaxis de excepciones: try Bloque de código; catch(TipoExcepcion1 e)

127

Page 133: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo gestión de la excepción; catch(TipoExcepcion2 e) gestión de la excepción; throw(e); finally Ejemplo Supongamos que, una persona, desea realizar una división entre cero: 1 public class EjemploExcep 2 public static void main (String args[]) 3 try 4 double resul; 5 6 resul=27/0; 7 System.out.println("Resultado es: "+resul); 8 //fin del try 9 catch (ArithmeticException e) 10 System.out.println("Java, lanza una excepción, ya que no puede realizar una división

entre cero"); 11 12 13 A continuación mostramos una lista de las excepciones lanzadas por Java:

128

Page 134: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

SENTENCIAS DE CONTROL Todo lenguaje de programación cuenta (o al menos debería contar), con una serie de iunstrucciones que, le permitan controlar el flujo de ejecución de las instrucciones. Afortunadamente Java posee dos grandes rubros de dichas sentencias: Estructuras Selectivas, en las cuales encontramos el if, elseif y switch. Estructuras Repetitivas o Cilclos, entre las cuales están: while, do… while y for. ESTRUCTURAS SELECTIVAS

En la vida, muchas veces, nos toca elegir entre un camino y otro a seguir. En muchas de las actividades que realizamos día con día, nos enfrentamos a decisiones que debemos tomar y que, de una u otra forma, alteran el cause normal de nuestra vida (o de nuestro programa). Sentencia if La sentencia if (o si condicional), le permite a un programa decidir, mediante la evaluación de una condición, ejecutar una u otra acción o acciones. La sintaxis General es La siguiente:

if(condicion1) Accion1; En donde:

Condición 1: Representa una expresión que puede ser del tipo booleana. 129

Page 135: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Acción 1: es la acción que, al evaluar la condición como verdadera, se ejecutará. Si son varias acciones, van entre llaves. Ejemplo Diseñe un programa en Java, que calcule, los descuentos a un trabajador, sabiendo que, son aplicables, un 6.25% del salario en AFP, sólo si éste es superior a $300.00; Además que, si es un trabajador hombre, se le descuenta, aparte del AFP, el 3% sobre el sueldo en concepto de ISSS y 10% en concepto de Renta. 1 import javax.swing.*; 2 class Descuentos 3 public static void main (String args []) 4 String datos; 5 int sexo; 6 double sueldo, afp=0, isss, totalre, nsueldo, renta; 7 datos=JOptionPane.showInputDialog("Ingrese el sueldo del empleado (a)"); 8 sueldo=Double.parseDouble(datos); 9 if(sueldo>300)//Preuntamos si el sueldo es mayor a 300 10 afp=sueldo*0.0625;// si es mayor, aplicamos descuento 11 JOptionPane.showMessageDialog(null, "Este empleado tiene un sueldo de: "+sueldo+" y

El descuento del AFP es: "+afp); 12 datos=JOptionPane.showInputDialog("Ingrese el Sexo: \nSi es Masculino (1)\nSi es

Femenino (2)"); 13 sexo=Integer.parseInt(datos); 14 if(sexo==1)//Si es de sexo masculino 15 16 isss=sueldo*0.03;//aplicamos las otras retenciones 17 renta=sueldo*0.10; 18 totalre=afp+isss+renta; 19 nsueldo=sueldo-totalre; 20 JOptionPane.showMessageDialog(null, "A este empleado, se le retiene: "+isss+" En

concepto de ISSS\nAdemás Se le retiene: "+renta+" En Concepto de Renta\nLo que hace un total de: "+totalre+"\nY su nuevo sueldo es: "+nsueldo);

21 //del if 22 23 //del main 24 // de la clase En las sentencias if, podemos agregar la sentencia else, la cual indica que, si al evaluar la condición, ésta es falsa, entonces, realizará las acciones, que estén después del else. La sintaxis es la siguiente:

if(condición1) Acciones; else Condiciones;

130

Page 136: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Ejemplo Al ingresar la nota de un alumno, se desea saber si éste aprobó o no, una materia en el colegio. Se sabe que para aprobar, se necesita una nota mayor o igual a 7.0. Diseñe una aplicación en Java que, al ingresar la nota, muestre con un mensaje, si el alumno, aprobó o no. Además se sabe que si la nota está entre 6.50 y 6.99, tiene la posibilidad de realizar un examen de suficiencia para aprobar. 1 import javax.swing.*; 2 public class NotaAlum 3 public static void main (String args []) 4 String leer; 5 double Nota; 6 leer=JOptionPane.showInputDialog("Ingrese la nota del alumno"); 7 Nota=Double.parseDouble(leer); 8 if(Nota>=7.0) 9 JOptionPane.showMessageDialog(null, "El alumno APROBÓ!!!!!!"); 10 else 11 12 JOptionPane.showMessageDialog(null, "El alumno reprobó"); 13 if(Nota>=6.5 && Nota<=6.99) 14 JOptionPane.showMessageDialog(null, "Pero tiene la posibilidad de realizar

el examen de suficiencia"); 15 //del else 16 //del main 17 //de la clase Explicación: En la línea 13, colocamos una condición compuesta, es decir que, si el alumno alcanza una nota mayor o igual a 6.5, pero menor a 7.0 (es decir 6.99), tiene la posibilidad de realizar el examen. Note además que, una estructura, puede estar dentro de otra, lo que llamamos Anidamiento, para el caso, el if de la línea 13, está dentro del else, que inicia en la línea 10. Sentencia elseif Esta estructura, es una consecuencia de las estructuras if anidadas, sus formato es el siguiente:

if(condicion1) Sentencia 1; elseif(condicion2) Sentencia 2; elseif(condicion3) Sentencia 3; ... else Sentencia n;

Funciona de la siguiente manera:

131

Page 137: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Se evalúa la primera condición, si resulta verdadera se ejecuta la sentencia 1, y se continúa con la ejecución del programa; de lo contrario, de evalúa la condición 2, si resulta verdadera, se ejecuta la sentencia 2, de lo contrario se evalúa la condición 3 y así sucesivamente. Si al evaluar todas las condiciones, ninguna resulta verdadera, se ejecuta el bloque del else. Ejemplo Cree un Applet que, reciba como ingreso la nota de un alumno y la clasifique, según la siguiente tabla:

10-9 Excelente

8-7 Muy Bueno

6-4 Bueno

3-2 Regular

0-1 Necesita Mejorar

Cabe recalcar que dicha escuela, maneja solamente notas cerradas, es decir, sin decimales. 1 import javax.swing.*; 2 import java.awt.*; 3 public class NotasAlumno extends JApplet 4 //declaracion de variables 5 String leer; 6 double nota; 7 public void init() 8 9 leer=JOptionPane.showInputDialog("Ingrese La Nota:"); 10 nota=Double.parseDouble(leer); 11 12 public void paint(Graphics g) 13 14 super.paint(g); 15 16 if(nota<=10 && nota>=9) 17 g.drawString("Excelente!!!!", 50,50); 18 else if(nota<=8 && nota>=7) 19 g.drawString("Muy Bueno!!!!", 50,50); 20 else if(nota<=6 && nota>=5) 21 g.drawString("Bueno", 50,50); 22 else if(nota<=4 && nota>=3) 23 g.drawString("Regular", 50,50); 24 else if(nota<=2 && nota>=1) 25 g.drawString("Necesita Mejorar...", 50,50); 26 else 27 g.drawString("Nota Incorrecta!!!", 50,50); 28 //del paint 29 // de la clase 132

Page 138: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Sentencia switch Esta sentencia, permite ejecutar, una u otra u otra acción, al evaluar una condición, cuyo resultado es el que indica que bloque (o bloques) de instrucciones se van a ejecutar. Su sintaxis es la siguiente: switch(expresión)

case 1:

Sentecia 1; break; case 2:

Sentecia 2; break;

. . . default:

Sentencias; break;

En donde, expresión es una condición que, al evaluarla, nos indicará que camino debemos seguir. Además ésta puede ser, una expresión entera char, byte, int y short. Además que, la expresión constante que acompaña a la palabra reservada case debe ser del mismo tipo que expresión. La cláusula default es opcional y puede omitirse en los programas que desarrollemos. Ejemplo En una tienda, se realizan diferentes descuentos, a sus clientes al momento de cancelar en caja. Ya que, cuando se disponen a cancelar tienen la oportunidad de sacar una bolita, y dependiendo del color de la misma, se le aplica su respectivo descuento. Si la bolita es roja, se le aplica un 10% de descuento sobre la compra; si la bola es verde, se le aplica un 5% de descuento, y si la bolita es blanca, no se le aplica descuento alguno. Diseñe una aplicación que de soporte a ésta actividad en el súper mercado. 1 import javax. swing.*; 2 public class SuperMercado 3 4 public static void main (String args []) 5 6 String aux; 7 int bolita; 8 double compra, descuento=0, monto; 9 //leemos el import de la compra 10 aux=JOptionPane.showInputDialog("Ingrese el

importe de la compra: "); 11 compra=Double.parseDouble(aux); 12 //leemos el color de la bolita 13 aux=JOptionPane.showInputDialog("Ingrese el color

de la Bolita:\nSi es Roja, ingrese 1\nSi fue Verde, Ingrese 2\nSi fue Blanca, ingrese 3");

14 bolita=Integer.parseInt(aux); 15 switch(bolita) 16 17 case 1: 133

Page 139: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 18 19 descuento=compra*.10; 20 monto=compra-descuento; 21 22 23 break; 24 case 2: 25 26 descuento=compra*.05; 27 monto=compra-descuento; 28 29 30 break; 31 case 3: 32 monto=compra; 33 break; 34 default: 35 monto=compra; 36 break; 37 //del switch 38 JOptionPane.showMessageDialog(null, "El cliente

había consumido: "+compra+" Pero sacó una bolita color: "+bolita+"\nPor lo que se aplicó un descuento de: "+descuento+"\nAhora el saldo a cancelar es: "+monto); 39 //del main 40 // de la clase

ESTRUCTURAS REPETITIVAS Introducción Es muy común encontrar en los programas operaciones que se deben ejecutar un número repetido de veces en períodos más o menos espaciados. Si bien las instrucciones son las mismas, los datos sobre los que operan varían. A nuestro alrededor, encontramos problemas que presentan esas características, por ejemplo: el cálculo de la nota final de los estudiantes de Programación III, se realizará tantas veces como alumnos hayan inscritos en dicha asignatura, el cálculo del salario de los empleados de una empresa, etc. En estos casos la solución que se diseñe para un solo grupo de datos se debe repetir tantas veces como sea necesario (de acuerdo al número de estudiantes y de empleados para los ejemplos anteriores).

134

Page 140: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Los cálculos simples o la manipulación de pequeños conjuntos de datos se pueden realizar fácilmente a mano, pero las tareas grandes o repetitivas son realizadas con mayor eficacia por una computadora, ya que estas están especialmente preparadas para ello. Para repetir varias veces un proceso determinado haremos uso de los ciclos repetitivos, a los cuales se les conoce con el nombre de estructura repetitiva, estructura iterativa, lazo o bucle. En C, al igual que en Java podemos encontrar tres tipos de ciclos:

• Entrada Asegurada (while) • Ciclo Controlado Por Contador (for) • Hacer Mientras (do.. while)

Funcionamiento de Un Ciclo Un ciclo, funciona de la siguiente manera: Evalúa una condición de resultar cierta, realiza una acción o bloque de acciones, luego vuelve a evaluar la condición y si nuevamente resulta cierta, realiza la (s) acción (es). Cuando la condición de cómo resultado falso, se sale del ciclo y continúa con la ejecución normal del programa. Acumulador: Es una variable, que , como su nombre lo indica se encarga de acumular valores. Esto se vuelve muy útil, por ejemplo, cuando queremos encontrar la suma de los números del 0 al 9, en el acumulador, vamos guardando los valores de dichas cifras. Puede ser tanto real como entera. Su valor inicial, en la mayoría de los casos es cero. Contador: Es una variable de tipo entero, que nos ayuda, en el programa a contabilizar el número de ejecuciones de una misma acción, de un grupo de alumnos etc. Un acumulador tiene tres valores distintos:

• Valor Inicial: es el valor con el cual iniciamos nuestro contador. Generalmente es cero. Esta asignación puede hacerse cuando se declara la variable.

• Valor Final: después de la ejecución del ciclo, el valor del contador, será distinto a su valor inicial, este puede ser mayo o menor que el mismo, todo depende si fue una cuenta creciente o decreciente.

• Valor de Cambio: Es el valor Constante, en el cual se irá incrementando nuestro contador, este puede ser positivo o negativo; es decir, si la cuanta se realiza de manera ascendente o descendente.

Bandera:

135

Page 141: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Las variables tipo bandera son aquellas que sólo admiten dos valores: cierto o falso, true o false, hombre o mujer... etc Ciclo de Entrada Asegurada La sintaxis es la siguiente:

while(condición) Acción;

Funciona de la siguiente manera: primero evalúa la condición, si da como resultado cierta realiza la acción, luego vuelve a evaluar la condición, si su resultado es falso, se sale del ciclo y continúa con la ejecución del programa. Hay que tener mucho cuidado, cuando trabajamos con ciclos, ya que podemos caer en un ciclo infinito, es decir que nunca se sale de él. Por lo cual en las acciones debemos siempre colocar algo que haga que se modifique el resultado de la condición, lo cual puede ser una bandera, un contador o un acumulador. Ejemplo En una empresa, se desea se tienen datos correspondientes a los sueldos de 10 empleados, de los cuales, se desea saber, quien goza del sueldo mayor, quien goza del sueldo menor y cuantos poseen un sueldo mayor a $300.00 1 import javax.swing.*; 2 class UsaWhile 3 public static void main (String args []) 4 String leer; 5 double sueldo, mayor=0, menor=10000; 6 int i=1, contador=0; 7 while(i<=10) 8 9 leer=JOptionPane.showInputDialog("Ingrese el sueldo del empleado: "+i); 10 sueldo=Double.parseDouble(leer); 11 while(sueldo<0)//si el sueldo es negativo 12 13 leer=JOptionPane.showInputDialog("ERROR, el sueldo no puede ser Negativo\nIngrese

el sueldo del empleado: "+i); 14 sueldo=Double.parseDouble(leer); 15 16 if(sueldo>300) 17 contador=contador+1; 18 if(sueldo>mayor) 19 mayor=sueldo; 20 if(sueldo<menor) 21 menor=sueldo; 22 i=i+1; 23 24 JOptionPane.showMessageDialog(null, "El sueldo mayor es de: "+mayor+"\nEl sueldo

menor es: "+menor+"\n"+contador+" Empleados tienen un sueldo mayor a $300"); 25 26

136

Page 142: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Ciclo Controlado por contador.

En algunas ocasiones, sabemos a ciencia cierta el número de veces que se tiene que repetir una misma acción o bloque de acciones. Y para ello es que nos sirve, esta estructura. Su sintaxis es la siguiente:

for( valor inicial; condición; incremento) accion;

Donde: Valor inicial: es el valor con el cual inicializamos nuestra variable de control. Condición: si la cumple, ejecuta la acción o acciones e incrementa o decrementa la variable de control, sino la cumple la condición, se sale del ciclo. Incremento; que puede ser positivo o negativo (decremento). Ejemplo Escriba un Applet que dibuje un rectángulo, unas líneas u óvalos en base a la entrada del usuario. (Tomado de cómo Programar en Java) 1 import java.awt.*; 2 import javax.swing.*; 3 public class PruebaFor extends JApplet 4 int opcion; //la opcion del usuario 5 public void init () 6 7 String entrada; 8 //obtener la opcion del usuario 9 entrada=JOptionPane.showInputDialog("Escriba 1 para dibujer Lineas\nEscriba 2 para

dibujar rectangulos\nEscriba 3 pàra dibujar Ovalos"); 10 opcion=Integer.parseInt(entrada); 11 //fin del metodo init 12 //dibujer figuras en el fondo el Applet 13 public void paint (Graphics g) 14 15 super.paint(g); 16 for(int i=0; i<10; i++) 17 18 switch(opcion) 19 20 case 1://dibujar lineas 21 g.drawLine(10,10,250,10+i*10); 22 break; 23 case 2://dibujar rectangulos 24 g.drawRect(10+i*10,10+i*10,50+i*10, 50+i*10); 25 break; 26 case 3: //dibujar un Ovalo 27 g.drawOval(10+i*10, 10+i*10, 50+i*10, 50+i*10); 28 break; 29 default: //Valor Incorrecto 30 g.drawString("Se escribió un valor Incorrecto", 10,20+i*15); 31 //fin del switch 32 //fin del for 137

Page 143: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 33 //fin del paint 34 //fin de la clase Ciclo Do... while

Es te ciclo funciona de la siguiente manera, realiza la acción o conjunto de acciones, luego evalúa una condición de resultar cierta vuelve a realizar la/s accion/es. Cuando sea falsa, se sale del ciclo. Formato:

do

sentencia;

.

.

while(<expL>);

La diferencia fundamental, entre el ciclo while y do...while, es que en este ultimo, las sentencias se realizarán por lo menos una vez, en cambio, con while, solo se cumplirán mientras se cumpla la condición, lo cual puede ser nunca. Ejemplo Programa que suma los valores de n1, mientras estos no sean mayores que 100 1 class fibo 2 public static void main(String args[]) 3 int n1=0; 4 do n1++; 5 System.out.println(n1+" "); 6 while(n1<100); 7 8

ARREGLOS EN JAVA

Los arreglos en Java son dinámicos, pero no extensibles, lo cual significa que deben ser creados con el tamaño que tendrán hasta el final de su vida.

Un arreglo se declara de la siguiente forma:

<tipo>[] <nombre>;

O sea, para declarar, por ejemplo, un arreglo de números enteros utilizaremos la siguiente sentencia:

int[] arrInt;

Es importante notar que el arreglo aún no ha sido creado, sino meramente declarado. Para crear el arreglo (reservar su memoria e inicializarlo) deberemos recurrir al operador new:

arrInt = new int[10];

Este comportamiento debe comprenderse de esta forma: en Java todo es un objeto, y los objetos deben ser creados mediante el operador new. El caso de los arreglos no es diferente, el tipo de datos del

138

Page 144: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo arreglo (int[] en este caso) es una clase y cada una de sus instancias debe ser creada explícitamente, el tamaño puede pensarse como un parámetro al constructor de la clase.

A partir de este momento podemos utilizar arrInt como un arreglo de cualquier otro lenguaje.

Una de las características que hacen de Java un entorno de programación seguro, y que se relaciona con el manejo de los arreglos es que el lenguaje no permite la indexación de arreglos fuera de rango, o sea, una asignación de este tipo generará una excepción:

ArrInt[25] = 1; Otra forma de declararlos es la siguiente:

UNIDIMENSIONALES:

tipo nombre_array[]=new tipo[nº]; tipo nombre_array[]=valores;

BIDIMENSIONALES:

tipo nombre_array[][]=new tipo[nº][nº]; tipo nombre_array[][]=valores; Ejemplo

Se sabe que la velocidad de un proyectil está dada por la ecuación, en forma vectorial: V= ai+ bj+ ck. Diseñe una aplicación que sea capaz de leer los valores de las constantes a, b y c. y muestre la magnitud y dirección de dicho proyectil. 1 import javax.swing.*; 2 public class Proyectil 3 public static void main (String args []) 4 String leer; 5 double magnitud, direccion, sum; 6 double vector[]=new double[3]; 7 int ban=1; 8 while(ban==1)//miestras hayan datos a procesar 9 10 //leemos el valor de las constantes 11 leer=JOptionPane.showInputDialog("Ingrese el valor de a:"); 12 vector[0]=Double.parseDouble(leer); 13 leer=JOptionPane.showInputDialog("Ingrese el valor de b:"); 14 vector[1]=Double.parseDouble(leer); 15 leer=JOptionPane.showInputDialog("Ingrese el valor de c:"); 16 vector[2]=Double.parseDouble(leer); 17 //calculamos la magnitud 18 //la cual es la raíz cuadrada de las suma+ 19 //de las componentes al cuadrado 20 sum=(vector[0]*vector[0])+(vector[1]*vector[1])+(vector[2]*vector[2]); 21 magnitud=Math.sqrt(sum); 22 //La dirección viene dada por la tangente inversa 23 //del cociente de las componentes x,y 24 direccion=Math.atan(vector[1]/vector[0]); 25 JOptionPane.showMessageDialog(null, "El valor de la magnitud es: "+magnitud+"\n

y con un angulo direccional de: "+direccion+" Radianes");

139

Page 145: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 26 leer=JOptionPane.showInputDialog("¿Hay más datos a procesar?\n\nSi=1 y No=0");

27 ban=Integer.parseInt(leer); 28 //del while 29 //del main 30 //de la clase Ejemplo Se tienen las notas de 5 exámenes de 10 alumnos, y se desea promediar la nota final de cada uno de ellos. Diseñe una aplicación que solucione este problema. 1 import javax.swing.*; 2 public class MatrizNotas 3 public static void main (String args []) 4 int f,c; 5 double suma, promedio; 6 double notas [][]=new double[10][5]; 7 String leer; 8 for(f=0; f<10; f++)//las filas 9 10 suma=0; 11 for(c=0; c<5; c++) 12 13 leer=JOptionPane.showInputDialog("Ingrese la nota: "+c+" del alumno: "+f); 14

notas[f][c]=Double.parseDouble(leer); 15 while(notas[f][c]>10 || notas [f][c]<0) 16 17 leer=JOptionPane.showInputDialog("Ingrese la nota: "+c+" del alumno: "+f); 18 notas[f][c]=Double.parseDouble(leer); 19 20 suma=suma+notas[f][c]; 21 22 promedio=suma/5; 23 JOptionPane.showMessageDialog(null, "El alumno, tiene un promedio de: "+promedio); 24 25 26 27

CARACTERISTICAS MÁS IMPORTANTES

1. Los arrays se crean con el operador new seguido del tipo y número de elementos.

2. Se puede acceder al número de elementos de un array con la variable miembro implícita length (por ejemplo, vect.length).

140

Page 146: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 3. Se accede a los elementos de un array con los corchetes [] y un índice que varía de length-1.

4. Se pueden crear arrays de objetos de cualquier tipo. En principio un array de objetos es un array de referencias que hay que completar llamando al operador new.

5. Los elementos de un array se inicializan al valor por defecto del tipo correspondiente (cero para valores numéricos, el carácter nulo para char, false para boolean, null para Strings y para referencias).

6. Como todos los objetos, los arrays se pasan como argumentos a los métodos por referencia.

7. Se pueden crear arrays anónimos (por ejemplo, crear un nuevo array como argumento actual en la llamada a un método).

INICIALIZACIÓN DE ARRAYS:

1. Los arrays se pueden inicializar con valores entre llaves ... separados por comas.

2. También los arrays de objetos se pueden inicializar con varias llamadas a new dentro de unas llaves ....

3. Si se igualan dos referencias a un array no se copia el array, sino que se tiene un array con dos nombres, apuntando al mismo y único objeto.

4. Creación de una referencia a un array. Son posibles dos formas:

double[] x; // preferible double x[];

5. Creación del array con el operador new:

x = new double[100];

6. Las dos etapas 4 y 5 se pueden unir en una sola:

double[] x = new double[100];

CLASES EN JAVA

Al fin!!!... lo que hasta el capítulo anterior, pareciera que hayamos estado repasando el lenguaje C/C++, puesto que Java, posee mucho de estos lenguajes. Pero nos estamos adentrando a la esencia de la Programación Orientadaza o Objetos.

Un programa se construye a partir de un conjunto de clases.

Una vez definida e implementada una clase, es posible declarar elementos de esta clase de modo similar a como se declaran las variables del lenguaje (de los tipos primitivos int, double, String, …). Los elementos declarados de una clase se denominan objetos de la clase. De una única clase se pueden declarar o crear numerosos objetos. La clase es lo genérico: es el patrón o modelo para crear objetos.

Cada objeto tiene sus propias copias de las variables miembro, con sus propios valores, en general distintos de los demás objetos de la clase. Las clases pueden tener variables static, que son propias de la clase y no de cada objeto.

141

Page 147: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Conceptos Claves

Una clase es una agrupación de datos (variables o campos) y de funciones (métodos) que operan sobre esos datos. A estos datos y funciones pertenecientes a una clase se les denomina variables y métodos o funciones miembro. La programación orientada a objetos se basa en la programación de clases.

Una clase es una agrupación de datos (variables o campos) y de funciones (métodos) que operan sobre esos datos. La definición de una clase se realiza en la siguiente forma:

[public] class Classname //lo de public es opcional

// definición de variables y métodos

...

Donde la palabra public es opcional: si no se pone, la clase tiene la visibilidad por defecto, esto es, sólo es visible para las demás clases del package. Todos los métodos y variables deben ser definidos dentro del bloque ... de la clase.

Un objeto (en inglés, instance) es un ejemplar concreto de una clase. Las clases son como tipos de variables, mientras que los objetos son como variables concretas de un tipo determinado.

Classname unObjeto;

Classname otroObjeto;

A continuación se enumeran algunas características importantes de las clases:

1. Todas las variables y funciones de Java deben pertenecer a una clase. No hay variables y funciones globales.

2. Si una clase deriva de otra (extends), hereda todas sus variables y métodos.

3. Java tiene una jerarquía de clases estándar de la que pueden derivar las clases que crean los usuarios.

Una clase sólo puede heredar de una única clase (en Java no hay herencia múltiple). Si al definir una clase no se especifica de qué clase deriva, por defecto la clase deriva de Object. La clase Object es la base de toda la jerarquía de clases de Java.

5. En un fichero se pueden definir varias clases, pero en un fichero no puede haber más que una clase public. Este fichero se debe llamar como la clase public que contiene con extensión *.java. Con algunas excepciones, lo habitual es escribir una sola clase por fichero.

6. Si una clase contenida en un fichero no es public, no es necesario que el fichero se llame como la clase.

7. Los métodos de una clase pueden referirse de modo global al objeto de esa clase al que se aplican por medio de la referencia this.

8. Las clases se pueden agrupar en packages, introduciendo una línea al comienzo del fichero (package packageName;). Esta agrupación en packages está relacionada con la jerarquía de directorios y ficheros en la que se guardan las clases. 142

Page 148: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Para la creación de un objeto se necesita el operador new, y que se declaren las variables de instancia dentro de una clase. Mediante una clase se pueden declarar varios objetos que tendrán los mismos atributos. Creación de Un Objeto

nomb_clase nomb_objeto=new nomb_clase([valores]);

Cuando se hace referencia a un método este debe estar declarado y desarrollado al igual que el objeto. Para declarar y desarrollar un método debe estar dentro de una clase y se debe indicar el valor que devuelve, el nombre y los valores que se le pasan.

Definición de los Métodos valor devuelto

nombre_método([valores]) cuerpo;

Si tenemos que hacer referencia a las variables de instancia y los métodos contenidos en un objeto se necesita el operador punto(.).

Objeto.nomb_método( ); Objeto.nomb_método(valores); Objeto.variable;

Veamos un Ejemplo para ilustrar lo que se ha dicho:

Ejemplo Diseñe una Clase, para crear objetos del tipo Alumnos, en el cual, permita ingresar el nombre, edad y Nota de ciertos objetos de ese tipo. Solución: 1. Digite el siguiente código

1 /*Archivo Alumnos.Java*/ 2 import javax.swing.*; 3 public class Alumnos 4 //declaración de los atributos 5 public String Nombre; 6 public int Edad; 7 public double Nota; 8 9 //declaración de los métodos 10 public void EstablecerNombre() 11 12 Nombre=JOptionPane.showInputDialog("Ingrese el nombre: "); 13 14 public void EstablecerEdad(int x) 15 16 Edad=x;//el valor recibido lo asigna a Edad 17 18 public void EstablecerNota(double y) 19 143

Page 149: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 20 Nota=y; 21 22 /*Este método, muestra todos los datos del 23 del objeto en pantalla*/ 24 public void MostrarDatos() 25 26 String salida="Nombre del Alumno: "+Nombre+"\nEdad: "+Edad+"\nNota: "+Nota; 27 JOptionPane.showMessageDialog(null, salida); 28 29 2. Luego guarde el archivo, Compílelo, pero NO lo ejecute. Con esto estamos creando nuestra Clase,

con la cual, podremos construir Objetos de este tipo.

3. Ahora, y en otro archivo digite las siguientes sentencias: 1 /*Archivo UsaAlumnos.java*/ 2 class UsaAlumnos 3 public static void main (String args []) 4 //declaramos y creamos un objeto del tipo Alumnos 5 Alumnos Datos=new Alumnos(); 6 //LLamamos a los métodos 7 Datos.EstablecerNombre(); 8 Datos.EstablecerEdad(20); 9 Datos.EstablecerNota(9.5); 10 11 //Ahora mostramos los Datos 12 Datos.MostrarDatos(); 13 14 4. Luego Guarde el archivo, Compílelo y Ejecútelo.

Explicación. En el ejemplo anterior puede notar que, los atributos, son esas variables simples, es las cuales almacenaremos información relevante a los objetos que, crearemos a partir de esa clase. Además que, los estamos declarando como públicos, lo cual indica que tenemos acceso directo desde cualquier otro archivo a los atributos. Los métodos son del tipo public y no devuelven ningún valor, por tal razón son declarados como void. Además que. El método EstablecerEdad y EstablecerNota, reciben un argumento cada uno de ellos, el cual es asignado al respectivo atributo.

144

Page 150: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo CONSTRUCTORES

Un Constructor es una función, método, etc, de las clases, la cual es llamada automáticamente cuando se crea un objeto de esa clase. Por ser métodos, los constructores también aceptan parámetros. Cuando en una clase no especificamos ningún tipo de constructor, el compilador añade uno público por omisión sin parámetros, el cual NO hace nada. Características de los Constructores

1. Un constructor, tiene el mismo nombre de la clase a la cual pertenece. 2. No puede ser Heredado. 3. No retorna ningún valor (Ni void), por lo cual no debe especificarse ningún tipo de dato. 4. Debe declararse como public, sólo en casos realmente extraordinarios será de otro tipo.

Supongamos una clase llamada Datos public class Datos //declaracion de atributos public Datos();//constructor sin parametros public Datos(int Edad)

//Constructor con parámetros EdadM=Edad; Ejemplo Se Desea crear un objeto del tipo Coordenadas, que indique, la posición de un punto en el plano cartesiano, y permita calcular la distancia existente con otro punto, además del punto medio entre ellos. 1 /*Archivo Coordenadas.java*/ 2 3 public class Coordenadas 4 private int x,y;//Atributos 5 public Coordenadas (int x1 , int y1)//constructor 6 7 //asignamos esos valores 8 x=x1; 9 y=y1; 10 11 public double Distancia (int x1, int y1) 12 13 //este método recibe como parametros 14 //las coordenadas del segundo punto 15 double D; 16 D=Math.sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1)); 17 return D;//Retornamops el valor de la distancia 18 19 public void Pmedio(int x1, int y1) 20

145

Page 151: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 21 double p1, p2; 22 p1=(x+x1)/2; 23 p2=(y+y1)/2; 24 System.out.println("El puntomedio es: "+p1+","+p2); 25 26 1 /*Archivo UsaCoordenadas.java*/ 2 public class UsaCoordenadas 3 public static void main (String args []) 4 Coordenadas P=new Coordenadas (10,20); 5

//calculamos la Distancia: 6 System.out.println("La Distancia es: "+P.Distancia(5,6)); 7 //Punto Medio 8 P.Pmedio(5,6); 9 10 Explicación: Un método, si va a devolver algún valor, éste debe especificarse cuando se hace la definición del mismo, para el caso, el método Distancia, devuelve el valor de la distancia, es por ello que lo especificamos como public double. Además que, cuando realizamos la llamada de ese método, es en ese preciso lugar que aparecerá el valor que devuelve. Por otra parte, los atributos, son de acceso privado, lo cual implica que, sólo podemos acceder a ellos, en la clase Coordenadas. Sobrecarga Cuando en una clase, se definen un mismo método, con diferente número de parámetros, o bien con el mismo numero de parámetros pero diferenciándose en la definición, en la cual, al menos un parámetro sea de diferente tipo, cuando esto sucede, se dice que el método está sobrecargado. Ejemplo Cree una aplicación en Java, que imprima un número imaginario. Nota, los números imaginarios, poseen una parte real y otra imaginaria, acompañada por la constante i. 1 class Imaginario 2 private int real, imag; 3 public Imaginario() 4 5 real=0; 6 imag=0; 7 8 public Imaginario(int x, int y) 9 10 real=x; 11 imag=y; 12 13 public void Mostrar() 14 15 System.out.println("El Numero Imaginario es: "+real+" + "+imag+"i"); 16 17

146

Page 152: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo 1 class UsaImaginario 2 public static void main (String args []) 3 Imaginario oI=new Imaginario(5,6); 4 oI.Mostrar(); 5 6

147

Page 153: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

ANTES DE EMPEZAR: Manual F.V.

• Significa ―manual práctico de informática‖, pero realmente realmente PRÁCTICO.

• En el texto me refiero continuamente a TuCarpeta, esto es un subdirectorio de tu ordenador donde es conveniente que grabes todos los programas de este ―tu manual‖.

• Todos los programas y ejercicios del manual han sido probados sin problema en el Microsoft

Internet Explorer 5.0

• Mi consejo, es que escribas de nuevo tal como te indico en el texto, cada uno de los programas utilizando el Bloc de Notas del Windows. Sólo en el caso de que el programa no te funcione y

148

Page 154: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

no descubras cuál es el error, cópialo a partir del Word en el Bloc de Notas y grábalo con otro nombre; para poder compararlo con el tuyo y así descubrir el error.

• Piensa que se aprende más descubriendo los propios errores, que avanzar sin hacer ningún

error.

UNIDAD 7 JAVA SCRIPT

INTRODUCCIÓN De todos los servicios que ofrece INTERNET, no cabe duda de que el más popular es la WWW (World Wide Web). La WWW no es más que millones de páginas en formato electrónico, con los contenidos y temáticas más diversas a las que podemos acceder gracias a un ordenador + modem + browser (navegador). Una página WEB no es más que un fichero de texto (ASCII), escrito en formato HTML (Hyper Text Markup Language = lenguaje etiquetado de hipertexto). El HTML es un lenguaje basado en pares de tags (etiquetas). Un tag es un código entre <>, si es de apertura o un código entre </ > si es de cierre. Los browsers (navegadores de Internet), son capaces de traducir estas etiquetas (tags) de forma que presentan visualmente la página.

ESTRUCTURA DE UN FICHERO HTML Básicamente consta de cuatro pares de etiquetas:

<HTML> <HEAD> <TITLE>Nuestra primera página</TITLE> </HEAD> <BODY> .......................... .......................... .......................... </BODY> </HTML>

El par <HTML> y </HTML> Determina que un fichero sea HTML El par <HEAD> y </HEAD> Determina la cabecera del fichero HTML, que puede contener un título. El par <TITLE> y </TITLE> Encierra el ―título‖: frase de texto que aparecerá en el marco del navegador (primera línea), al ejecutar el fichero HTML El par <BODY> y </BODY> Encierra el contenido de la página html, es decir lo que se visualizará en el navegador. Los navegadores (browsers) más conocidos son:

• Netscape Comunicator • Microsoft Internet Explorer

149

Page 155: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Ejecuta el “Bloc de Notas”, es decir: [Inicio] Programas Accesorios Bloc de Notas Escribe: <HTML>

<HEAD> <TITLE>PROG000.HTM</TITLE> </HEAD> <BODY> <P>Esto aparecerá en el navegador porque es un párrafo</P> <P>Esto es otro párrafo</P> <P>Observa lo que aparece en la línea de título</P> <P>La línea de título es la frase que aparece en el marco del navegador, línea superior</P> <P>¿Está claro para qué sirven los tags P, /P?</P> </BODY> </HTML>

Graba el fichero anterior con el nombre PROG000.HTM en TuCarpeta Ejecuta el ―Explorador de Windows‖. Sitúate en TuCarpeta y haz un doble click en PROG000.HTM De esta forma, se ejecuta el navegador de tu ordenador (supondré que es el Internet Explorer) y se ―carga‖ la página PROG000.HTM El navegador nos muestra la página HTML ―visualmente‖, para ver su código debes hacer:

Menú Ver Código fuente

La programación en HTML no tiene ninguna utilidad para un usuario normal, ya que en el mercado existen herramientas que evitan la necesidad de tener que introducir manualmente los ―tags‖: HotMetal, FontPage, Word, etc. Lo que sí tienen sentido es el estudio de la programación en JavaScript. JavaScript es un lenguaje de programación creado por la empresa Netscape (creadora de uno de los navegadores más conocido) Es el lenguaje de programación más utilizado en Internet para añadir interactividad a las páginas Web No confundir el JavaScript con el Java. El Java es un lenguaje de programación de propósito general como lo son el C++ o el Visual Basic. Un programa en JavaScript se integra en una página Web (entre el código HTML) y es el navegador el que lo interpreta (ejecuta). Es decir el JavaScript es un lenguaje interpretado, no compilado (no se genera ningún tipo de fichero objeto o exe).

150

Page 156: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Para programar en JavaScript sólo necesitamos un editor de texto (utilizaremos el Bloc de Notas del Windows) y un navegador (utilizaremos el Microsoft Internet Explorer) para ejecutarlo. ¿Por qué el JavaScript y no otro lenguaje de programación? Porque:

• Es moderno (tiene pocos años) • Es sencillo (su hermano mayor: el Java, es bastante más complejo) • Es útil (el desarrollo de Internet, se prevé muy rápido en los próximos años) • Es potente: permite la moderna POO (programación orientada a objetos) • Es barato: sólo necesitamos un editor de textos (el ―Bloc de Notas‖ está incluido en el

Windows) y un navegador (es gratuito, ya sea el ―Internet Explorer‖ o el ―Netscape‖). • Es visual: permite la moderna ―programación visual‖ (ventanas, botones, colores,

formularios, etc.).

En definitiva: es ideal para un primer curso de introducción a la programación. Y has de tener en cuenta que hay un ―dicho‖ en informática, que afirma: “Si dominas un lenguaje de programación, los conoces todos”.

SINTAXIS BÁSICA Escribe, utilizando el ―Bloc de Notas‖ del Windows, el siguiente programa:

<HTML> <HEAD> <TITLE>PROG001.HTM</TITLE> <SCRIPT LANGUAGE="JavaScript"> alert("¡Hola Mundo!"); </SCRIPT> </HEAD> <BODY> <P> Programa 1 en JavaScript </P> </BODY> </HTML>

Graba el fichero anterior en TuCarpeta con el nombre Prog001.htm Ejecuta el programa Prog001.htm, es decir:

• Ejecuta el ―Explorador de Windows‖ • Sitúate en TuCarpeta • Clic-Click en Prog001.htm

Estudio del Prog001.htm: Un programa ―JavaScript‖ se escribe integrado en una página HTML, por lo tantono es más que un fichero de texto que contiene una serie de pares de tags correspondientes a la página Web (como mínimo el par: <HTML>, </HTML>), además del par de tags característico de un programa JavaScript. Dicho fichero se ha de grabar necesariamente con la extensión HTM (característica de una página HTML). Un programa ―JavaScript‖ no es más que una secuencia de ordenes, que deben terminar en punto y coma, entre los tags:

151

Page 157: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

<SCRIPT LANGUAGE=”JavaScript”> y </SCRIPT>

En nuestro Prog001.htm, hemos incluido el programa en la cabecera (HEAD) de la página, pero podríamos colocarlo en cualquier parte del fichero htm Nuestro primer programa JavaScript contiene una única sentencia: alert(“”¡Hola Mundo!”); Que ―abre‖ una ventana con el mensaje que tenemos entre comillas. Al hacer clic en el [Aceptar] de la ventana “alert”, se acaba el programa JavaScript (se encuentra el tag </SCRIPT>) y continua ejecutándose la página HTML. Utilizando el ―Bloc de Notas‖ escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG002.HTM var nom; nom=prompt("Escribe tu nombre ","Paco"); alert("Mucho gusto "+ nom); </SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog002.htm Ejecútalo varias veces, observando detenidamente lo que sucede. Estudio del Prog002.htm

1. Primera y última línea: <HTML> y </HTML> Es decir: página html mínima que necesitamos para incluir un programa JavaScript.

2. Segunda y penúltima líneas: <SCRIPT LANGUAGE=.....> y </SCRIPT>, es decir programa en JavaScript

3. Primera sentencia del programa: // PROG002.HTM Única línea del programa que no es necesario acabarla con punto y coma. Todas las líneas que empiezan por // son comentarios para el programador, es decir no forman parte del programa, dicho de otra forma: el navegador si encuentra una línea que empieza por //, la salta.

4. var nom; Definimos una variable de nombre nom

5. nom = prompt(―Escribe tu nombre‖,‖Paco‖); Aparece un recuadro con un mensaje y un campo donde podemos escribir algo; el mensaje corresponde a lo que escribimos en el primer argumento de la función prompt, encerrado entre comillas. El segundo argumento del prompt contiene el valor que aparece por defecto en el campo del cuadro de diálogo. El valor del prompt es nom, es decir lo que nosotros escribamos en el cuadro será el valor que

tomará la variable nom. Si no escribimos nada y hacemos click en [Aceptar], el prompt, es decir la variable nom tomará el valor de Paco, porque es el valor que aparece por defecto. 6. alert("Mucho gusto "+nom);

Aparece un cuadro con el mensaje "Mucho gusto" y a continuación el valor de la variable "nom", que será lo que hemos escrito en el primer cuadro que nos ha aparecido.

En definitiva:

152

Page 158: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo La función prompt nos permite introducir "valores", dichos valores se han de guardar en variables, que previamente hemos de declarar con la palabra reservada "var". La función "alert" muestra mensajes y/o valores de variables. Utilizando el "Bloc de Notas del Windows" escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG003.HTM /*Programa que sirve para calcular el área de un rectángulo */ var base,altura; base=prompt("Escribe la base del Rectángulo",""); altura=prompt("Escribe la altura del Rectángulo",""); alert("El área del Rectángulo es = "+(base*altura)); </SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog003.htm Ejecútalo varias veces. Sería conveniente utilizar números enteros y también decimales (5.72, 0.531: observa que has de utilizar el punto decimal inglés). Si has ejecutado el programa una vez, para volverlo a ejecutar, no es necesario que "cierres" el navegador, basta que hagas: Menú Ver Actualizar o si quieres ir más rápido, pulsa la tecla [F5] Es importante que tengas claro este programa: Declaramos dos variables (var), que necesitamos para introducir la base y la alturadel rectángulo, a través de dos "prompts":

base= prompt...... altura= prompt.....

Por último necesitamos dos "alerts" que nos muestre el resultado del programa, que es simplemente el producto base * altura El único elemento nuevo que aparece en el Prog003.htm es:

/*Programa que sirve para calcular el área de un rectángulo */ Todo lo que aparece escrito entre /* y */ no es más que un comentario para el programador, igual que pasaba con las líneas que empezaban por // La diferencia entre // y /* */ está en que esta última forma de incluir un comentario, nos permite colocarlo de forma que ocupe más de una línea.

VARIABLES DECLARACIÓN DE VARIABLES

Una variable se puede declarar en JavaScript, de dos formas:

153

Page 159: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

• Forma Explícita: var nombre Variable; • Forma Implícita: var nombre Variable= valor;

En el último caso no es imprescindible escribir var, pero es conveniente, ya que de esta forma localizamos rápidamente todas las variables del programa.

El "JavaScript" es un lenguaje de programación "Case Sensitive", esto es: no es lo mismo las mayúsculas que las minúsculas. Es decir, para el JavaScript: pepe es distinto de Pepe y distinto de pEpe.

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE=''JavaScript''>

// PROG004.HTM /* Programa que utiliza una variable explícita y dos

implícitas */

var Expli; var pi=3.141592; var radio=7; Expli=pi*radio*radio; alert("Área del Círculo = "+Expli);

</SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog004.htm Ejecútalo

TIPOS DE DATOS Cuando declaramos una variable, ésta no pertenece a ningún tipo de dato en concreto, se dice que es Undefined. Es al asignarle un valor cuando pasa a ser de uno u otro tipo, según el dato que albergue. Existen 6 tipos de datos: String: cadenas de texto Object: objetos Number: valores numéricos Null: nulo Boolean: true o false Undefined: no definido. Podemos averiguar el tipo de dato que contiene una variable si utilizamos la función incorporada typeof Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE=''JavaScript''>

154

Page 160: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

// PROG005.HTM var Pepe; var PEPE="Hola que tal "; var pepE=75.47; var pEpe=" ¿Como estás?";

Pepe=PEPE+pEpe; alert("PEPE="+PEPE); alert("PEPE es "+typeof(PEPE)); alert("pepE="+pepE); alert("pepE es "+typeof(pepE)); alert("pEpe="+pEpe); alert("pEpe es "+typeof(pEpe)); alert("Pepe="+Pepe); alert("Pepe es "+typeof(Pepe));

</SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog005.htm Ejecútalo tantas veces como quieras.

EL TIPO DE DATO "string":

En JavaScript los textos se denotan por comillas dobles o comillas simples, pero no ambas a la vez. Variable1 = "Pepito" Variable2 = 'Paquito' Podemos incluir un carácter de control en una cadena de texto, si utilizamos el llamado carácter de escape que es: \ Los caracteres de control más usados son:

\n salto de línea \t tabulador

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG006.HTM var num; alert("Hola que tal"); alert("Hola \nque tal"); alert("Hola\t"+"que"+"\n"+"tal"); alert("Hola\n que\n t\nal"); num=prompt("Escribe un número: ",""); alert("El \ndoble\n es: \n"+(num*2)); </SCRIPT> </HTML>

155

Page 161: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Grábalo en TuCarpeta con el nombre Prog006.htm Ejecútalo, observando detenidamente la acción de \n y \t Si no introducimos un número en el "prompt", en el "alert" correspondiente al doble del número, aparecerá NaN, que quiere decir que no es un número. EL TIPO DE DATOS "number"

Podemos guardar indistintamente en una variable number un número entero, decimal, positivo o negativo. Ejemplos:

var numNatural= 1234; var numEntero = -479; var numDecimal = 3.141592; var numDecimal2 = -0.123;

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE=''JavaScript''>

// PROG007.HTM

var n1=57; // número en base 10 var n2=012345; //base 8, porque empieza por 0 var n3=0xFF32; //base 16, porque empieza por 0x alert("número decimal= "+n1); alert("el 12345 en base 8 es en decimal= "+n2); alert("el FF32 en base 16 es en decimal= "+n3);

/* Observa que al escribir una variable numérica en un "alert" siempre nos da el número en decimal, aunque sea en octal o hexadecimal */

</SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog007.htm y ejecútalo. En el programa anterior aparecen 3 ―alerts‖, uno para cada uno de los tres números. No hay ningún problema para incluir los tres ―alerts‖ en uno solo....

CONTADORES Uno de los instrumentos más utilizados en todo lenguaje de programación es el llamado contador Observa: var x= 10; x = x+1; x = x-5; Declaramos una variable "x", que es numérica y que inicialmente es 10.

156

Page 162: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo La línea "x = x+1" es un contador, que hemos de leer: El nuevo valor de "x" es igual al anterior valor de "x" más una unidad. Es decir, que en estos momentos nuestra variable "x" es igual a 11. La siguiente línea: "x = x-5" es otro contador que hemos de leer: el nuevo valor de "x" es igual al anterior valor de "x" menos 5 unidades. Es decir, que el valor de la variable "x" es ahora 11 - 5 = 6 Haz un programa para comprobar lo que hemos dicho sobre los contadores, es decir:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG008.HTM var x=10; alert("El valor inicial de x es "+x); x=x+1; alert("Después de x=x+1, x="+x); x=x-5; alert("Después de x=x-5, x="+x); </SCRIPT> </HTML>

Grábalo en Tu carpeta con el nombre Prog008.htm y ejecútalo.

CONVERSIÓN ENTRE TIPOS DE DATOS CONVERSIÓN IMPLÍCITA DE TIPOS

Observa:

var var1 = "75"; var var2 = 25; var var3, var4; var3 = var1 + var2; var4 = var2 + var1;

Las varibles var3 y var4 contienen ¿números o textos?

Cuando se suman cadenas de texto con cualquier otra cosa, los otros tipos de datos se convierten en cadenas de texto. Pero si restamos, multiplicamos o dividimos "cadenas de texto", ¿sucede lo mismo?. Vamos a descubrirlo en los siguientes programas.

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG09.HTM var num1="30"; var num2="15"; // Observa que definimos dos cadenas de texto alert("30+15= "+(num1+num2)); alert("30*15= "+(num1*num2)); </SCRIPT> </HTML>

157

Page 163: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Graba el programa en TuCarpeta con el nombre Prog09.htm Ejecútalo. La conclusión está clara:

• Si sumamos dos cadenas (aunque contengan números) de texto se produce la concatenación (unión) de los dos textos. • Si multiplicamos (o hacemos cualquier operación aritmética que no sea la suma), dos cadenas de texo que en realidad contienen números, se produce unaconversión implícita de las cadenas a números y aparece el producto aritméticode los números.

¿Qué sucede si introducimos dos números a través de la función prompt? CONVERSIÓN EXPLÍCITA DE TIPOS

parseFloat(cadena) Toma la "cadena" y la transforma en un número en coma flotante, si es posible.

parseFloat ("123.456") = 123.456 parseFloat ("123ABC") = 123 parseFloat ("ABC") = NaN

parseInt(cadena, número) Devuelve números enteros, el segundo argumento nos permite escoger la base de numeración (entre 2 y 36)

parseInt ("ABC",16) = 2748 ABC16 = 274810

Si no especificamos el segundo argumento, por defecto es 10. Si la cadena empieza por 0x y no existe el segundo argumento, se entiende que es 16. Si la cadena empieza por 0 y no existe el segundo argumento, se entiende que es 8 toString(argumento) Si argumento = número Devuelve una cadena que contiene el número Puede haber un argumento opcional: (13).toString(16) =‖d‖ siendo 1310 = d16 (13).toString(2) = ―1101‖ siendo 1310 = 11012 Vamos a hacer un programa que sume números en JavaScript. Escribe:

<HTML> <SCRIPT LANGUAGE="JavaScript"> //PROG010.HTM var num1,num2; num1=prompt("Escribe un número",""); num1=parseFloat(num1); num2=prompt("Escribe otro número",""); num2=parseFloat(num2); alert("La suma es ="+(num1+num2)); </SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog010.htm Ejecútalo, utilizando números enteros, naturales y decimales. 158

Page 164: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo A partir de este momento hemos de tener claro si los ―prompts‖ corresponden a números enteros, decimales o de texto: Si ―x‖ ha de ser un número entero escribiremos: x = parseInt(prompt(―Escribe un número entero‖,‖‖)); Si ―x‖ ha de ser un número decimal escribiremos: x = parseInt(prompt(―Escribe un número entero o decimal‖,‖‖)); Si ―x‖ ha de ser una cadena de texto escribiremos: x = prompt(―Escribe el texto correspondiente‖,‖‖); Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // Prog011.htm var x,y; x=parseInt(prompt("Escribe un entero ","")); y=parseInt(prompt("Escribe otro entero ","")); alert("La suma de "+ x +" + " + y +" es =" + (x+y) +"\n"+ "El producto de "+ x +" y "+ y +" = "+(x*y)+"\n"+ "El promedio de "+ x +" y "+ y +" es "+ (x+y)/2); </SCRIPT> </HTML>

Grábalo con el nombre Prog011.htm, y ejecútalo.

OPERADORES

OPERADORES LÓGICOS Y RELACIONALES

>, <, <=, >= == igualdad != diferente && y || o o No

ESTRUCTURAS DE CONTROL LA ESTRUCTURA “if-else”

Escribe el siguiente programa: <HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG012.HTM var num;

159

Page 165: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

num=parseFloat(prompt("Escribe un número","")); if(num==100) alert("El número que has escrito es 100"); Else alert("El número que has escrito no es 100"); if(num>0) alert("El número que has escrito es positivo"); Else alert("El número es negativo o 0"); </SCRIPT> </HTML> Grábalo con el nombre Prog012.htm en TuCarpeta Ejecútalo.

La estructura de programación “if-else” Sintaxis: if(condición) sentencia1; sentencia2; sentencia3; Else sentencia4; sentencia5; sentencia6; Significado: Si se cumple la condición, se ejecutan las sentencias 1, 2 y 3 y si no se cumple se ejecutan las sentencias 4, 5, 6. La opción ―else‖ es opcional. Observa la diferencia entre ―=‖ y ―==‖ a = 3*9 es una asignación, es decir la variable ―a‖ es 27. En cambio if(a==5) es una condición: si ―a‖ es idéntico a 5 (si el valor de ―a‖ es el número 5)… Escribe el siguiente programa: <HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG013.HTM var a,b; a=parseFloat(prompt("Escribe el primer número","")); b=parseFloat(prompt("Escribe el segundo número","")); if(a==b) alert("Los dos números son iguales"); if(a != b) alert("Los dos números son distintos"); if(a>b) alert("El primer número es mayor que el segundo"); else

160

Page 166: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

alert("El primer número no es mayor que el segundo"); if((a>b) && (100>a)) alert("El primero es mayor que el segundo"); alert("Además los dos son menores de 100"); else alert("El primero no es mayor que el segundo"); alert("O uno de los dos números es mayor o igual a 100"); </SCRIPT> </HTML> Grábalo con el nombre Prog013htm en TuCarpeta. Ejecuta el programa para los siguientes casos, observando detenidamente lo que aparece: 1) a=70, b=2 2) a=50, b=30 3) a=7, b=11 4) a=100, b=50 5) a=50, b=100 Observa: a==b ―a‖ es igual a ―b‖ a != b ―a‖ es diferente a ―b‖ (a>b) && (100>a) ―a‖ es mayor que ―b‖ y además ―100 es mayor que –a-― El else correspondiente a la condición anterior, sería equivalente a no(a>b) || no(100>a), es decir la negación de la primera condición o la negación de la segunda (o las dos negaciones a la vez).

LA ESTRUCTURA DE PROGRAMACIÓN “WHILE”

Sintaxis: while(condición) setencia1; sentencia2;

sentencia3; Significado: ―Mientras‖ se cumpla la condición, se irán repitiendo las sentencias 1, 2 y 3. Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG014.HTM var x=0; while(x<6) alert("El valor de x es= "+x); x=x+1;

161

Page 167: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

</SCRIPT> </HTML>

Grábalo con el nombre Prog015.htm en TuCarpeta y ejecútalo. Estudio del Prog014.htm • En ―palabras‖, nuestro programa nos dice: ―mientras‖ la x sea inferior a 6; Escribe el valor de ―x‖; Incrementa en una unidad el valor de ―x‖; • Al principio x=0 Se cumple la condición del while: x<6 Aparece escrito x=0 Al pasar por el contador x=1 Se cumple la condición x<6 Aparece escrito x=1 Al pasar por el contador x=2 Aparece escrito x=2 … … Cuando x=6 no se cumple la condición y por lo tanto se acaba el programa. CONTADORES EN JAVASCRIPT

a=a+1 es equivalente a escribir a++ a=a-1 es equivalente a escribir a— num=num+2 es equivalente a escribir num += 2 num=num*2 es equivalente a escribir num *= 2 num=num/2 es equivalente a escribir num /= 2 Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG015.HTM var i=2; var res=""; var j=7; while (i<j) res=res+" "+i+" "+j+"\n"; i++; j--; alert(res); </SCRIPT> </HTML>

Grábalo con el nombre Prog015.htm en TuCarpeta Ejecuta el programa, es importante que tengas claro el funcionamiento del Prog016.htm: compara el listado del programa con lo que sucede al ejecutarlo. Observa cómo conseguimos escribir toda la salida en un único ―alert‖ (variable ―res‖).

162

Page 168: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Programa que repite un texto cualquiera, el número de veces que queramos, utilizando un ―while‖ Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG016.HTM var nom; var indice=1; var num; var respuesta=" "; nom=prompt("Escribe tu nombre",""); num=prompt("Cuántas veces quieres que lo repita",""); num=parseInt(num,10); // era una cadena y ahora es un número while (indice <= num) respuesta=respuesta+nom+"\n"; indice++; alert(respuesta); </SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog016.htm y ejecútalo Recuerda que en el ―ParseInt‖ no es necesario escribir el 10, ya que por defecto (si no lo escribimos), es base 10. Programa que acumula la suma y el producto de los números que queramos Escribe:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG017.HTM var num; var sum=0; var pro=1; var respuesta=""; num=prompt("Escribe un número diferente de cero=",""); num=parseFloat(num); while(num != 0) sum=sum+num; pro=pro*num; respuesta=respuesta+num+"\tsuma parcial:"+sum+"\tproducto parcial:"+pro+"\n"; num=prompt("Escribe otro número (para acabar introduce cero)",""); num=parseFloat(num); alert(respuesta); </SCRIPT> </HTML>

Grábalo en TuCarpeta con el nombre Prog017.htm y ejecútalo. Observa como acumulamos la suma y el producto: Contador que acumula la suma de los números ―num‖: sum=sum+num; Hemos de inicializar a 0 la variable ―sum‖.

163

Page 169: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Contador que acumula el producto de los números ―num‖: pro=pro*num Hemos de inicializar a 1 la variable ―pro‖. LA ESTRUCTURA DE PROGRAMACIÓN “FOR”

for (contador = valor inicial; condición; expresión de incremento) …; …; …;

Ejemplo: for (i=1;i<=10;i++) sentencia1; sentencia2;

sentencia3; En palabras significa: ―Desde i=1, hasta i=10 de 1 en 1, repite las sentencias 1, 2 y 3‖ Es decir: Repite 10 veces las sentencias 1, 2 y 3. Observa que el contador o índice del ―for‖ (en nuestro caso la ―i‖), es una variable que no es necesario declararla, ya que la expresión ―i=1‖ la declara e inicializa. Programa que repite un texto cualquiera en número de veces que queramos, utilizando un ―for‖ Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG018.HTM var texto; var num; var salida=""; texto=prompt("Escribe un texto",""); num=prompt("Cuántas veces quieres que lo repita",""); num=parseInt(num,10); for(i=1;i<=num;i++) salida=salida+texto+"\n";

alert(salida); </SCRIPT> </HTML>

Graba el fichero en TuCarpeta, con el nombre Prog018.htm y ejecútalo unas cuántas veces. Programa que calcula todos los múltiplos de 11 menores de 3000 y por último nos da la suma de todos ellos. Escribe el siguiente programa:

164

Page 170: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG019.HTM var salida=""; var sum=0; for(multi=11;multi<3000;multi=multi+11) salida=salida+multi+" "; sum=sum+multi; alert(salida+"\nLa Suma de todos ellos es= "+sum); </SCRIPT> </HTML>

Grábalo en TuCarpeta, con el nombre Prog019.htm y ejecútalo. Programa que calcula el factorial de un número Recuerda que el factorial del número ―x‖ es: 1*2*3*4*5*…*x Escribe el siguiente programa: <HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG020.HTM var salida=""; var fact=1; var num; num=prompt("Cálculo del factorial del numero ",""); num=parseInt(num,10); for(i=1;i<=num;i++) fact=fact*i; alert("El factorial de "+num+" es "+fact); </SCRIPT> </HTML> Grábalo en TuCarpeta con el nombre Prog020.htm y ejecútalo varias veces. Observa que nuestro ―for‖ no necesita llaves, porque contiene una única sentencia. Programa que calcula los 10 primeros múltiplos del número que queramos, por último nos da la suma de todos ellos. Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG021.HTM var salida=""; var num; var mult; var sum=0;

165

Page 171: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

num=prompt("¿Múltiplos de qué número?",""); num=parseInt(num,10); for(i=1;i<=10;i++) mult=num*i; salida=salida+mult+" "; sum=sum+mult; alert(salida+"\nSuma= "+sum); </SCRIPT> </HTML>

Grábalo con el nombre Prog021.htm en TuCarpeta y ejecútalo varias veces. Tabla de valores de la función y=x2-5x+10 Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG022.HTM var x1,x2,paso; var salida=""; var y; x1=prompt("Escribe el menor valor de x",""); x1=parseFloat(x1); x2=prompt("Escribe el mayor valor de x",""); x2=parseFloat(x2); paso=prompt("Escribe el incremento de x:",""); paso=parseFloat(paso); for(i=x1;i<=x2;i=i+paso) y=i*i-5*i+10; salida=salida+i+" "+y+"\n"; alert(salida); </SCRIPT> </HTML>

Graba el fichero en TuCarpeta con el nombre Prog022.htm y ejecútalo varias veces. Al ejecutar el programa anterior, nos podemos encontrar con una serie de problemas, por ejemplo si introducimos en el valor menor de ―x‖ (x1), un valor que sea mayor que el introducido en la variable x2, o también puede suceder que en la variable paso escribamos un número negativo. Vamos a solucionar estos posibles problemas, es decir vamos a ―mejorar‖ el programa anterior. ¡Realizalo! ________________________________________________________________________________________________________________________________________________________________________________________________________ ____________________________________________________________________________________________________

166

Page 172: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo ____________________________________________________________ ____________________________________________________________________________________________________ ____________________________________________________________________________________________________ _______________________________________________________________________________________________________________________________________________________________________________________________

_________ ___________________________________________________________________________________________

_________ ___________________________________________________________________________________________

_________ ___________________________________________________________________________________________

_________ ___________________________________________________________________________________________

_____________________________________________________________________________________________________________ ____________________________________________________________________________________________________ ____________________________________________________________________________________________________ _________________________________________________________________

LA ESTRUCTURA DE PROGRAMACIÓN “SWITCH-CASE”

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG025.HTM var opc="0"; var num; while (opc != "10") opc=prompt("Escribe la opción que desees: (1)El Triple-(2)El Cuadrado-(3)El Logaritmo Neperiano(4)El Seno-(5)El Coseno-(10)SALIR",""); switch(opc) case "1": num=prompt("Escribe el número",""); num=parseFloat(num); alert("El triple de "+ num +" es " +(3*num)); break; case "2": num=prompt("Escribe el número",""); num=parseFloat(num); alert("El cuadrado de "+ num +" es " +(num*num)); break; case "3": num=prompt("Escribe el número",""); num=parseFloat(num); alert("El Logaritmo Neperiano de "+ num +" es " +(Math.log(num))); break; case "4": num=prompt("Escribe el ángulo en radianes",""); num=parseFloat(num); alert("El seno de "+ num +" es " +Math.sin(num)); break; case "5": num=prompt("Escribe el ángulo en radianes",""); num=parseFloat(num); alert("El coseno de "+ num +" es " +Math.cos(num)); break;

167

Page 173: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

</SCRIPT> </HTML>

Graba el programa en TuCarpeta con el nombre Prog025.htm y ejecútalo. La estructura “switch-case”

switch(x) case valor 1: sentencia1; sentencia2; …; …; break; case valor 2: sentencia3; …; …; break; … … …

Según el valor que tome la variable ―x‖, se ejecutarán las líneas de programa del ―case‖ correspondientes. Observa que cada ―case‖ termina con ―break‖.

Programa que nos da la "nota" cualitativa a partir de la cuantitativa

El programa nos pide el número total de preguntas y el número de respuestas acertadas. A partir de aquí y utilizando la estructura "switch-case", el programa nos da la "nota" cualitativa. En efecto, escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG026.HTM var num,bien,notanum,notacual; num=parseInt(prompt("Escribe el número total de preguntas",""));

bien=parseInt(prompt("Escribe el número de resouestas acertadas","")); notanum=parseInt(10*bien/num);

switch(notanum) case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: notacual="Muy Deficiente"; break; notacual="Muy Deficiente"; break;

168

Page 174: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

notacual="Deficiente"; break; notacual="Deficiente"; break; notacual="Insuficiente"; break; notacual="Suficiente"; break; notacual="Bien"; break; notacual="Notable"; break; notacual="Notable"; break; notacual="Excelente"; break; case 10: notacual="Matricula de Honor"; break; alert("La nota cualitativa es "+notacual); </SCRIPT> </HTML>

Grábalo con el nombre Prog026.htm en TuCarpeta y ejecútalo varias veces para comprobar que funciona.

LA ESTRUCTURA DE PROGRAMACIÓN “DO-WHILE”

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG027.HTM var x=1; var salida="while:\n"; while (x<5) x=x+1; salida=salida+x+"\t"; salida=salida+"\ndo while:\n"; x=1; do x=x+1; salida=salida+x+"\t"; while (x<5); alert(salida); </SCRIPT> </HTML>

Graba el programa en TuCarpeta con el nombre Prog027.htm y ejecútalo.

¿Qué diferencia hay entre la estructura while y la do-while?

Estructura de programación do-while:

Do sentencia1; sentencia2; sentencia3;

169

Page 175: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

while(condición);

Mientras se cumpla la condición, se repetirá la ejecución de las sentencias 1, 2 y 3. Como la evaluación de la condición se efectúa al acabarse el ciclo, el do-while se ejecutará siempre como mínimo una vez. Ésta es la diferencia que hay entre la estructura do-while y la while.

Para comprobarlo escribe el siguiente programa (aprovecha el Prog027.htm, porque prácticamente es el mismo):

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG028.HTM var x=1; var salida="while:\n"; while (x<5) x=x+1; salida=salida+x+"\t"; salida=salida+"\ndo while:\n"; x=1; do x=x+1; salida=salida+x+"\t"; while (x>5); alert(salida); </SCRIPT> </HTML>

Graba el programa en TuCarpeta con el nombre Prog028.htm y ejecútalo varias veces, comparándolo con el Prog027.htm

EL OBJETO “MATH” Nos permite trabajar con funciones matemáticas. Concretamente: Math.log(x) = ln(x) Math.exp(x) = ex Math.sqrt(x) = raiz cuadrada de ―x‖ Math.pow(a, b) = ab Math.floor(): número entero más cercano y menor Math.ceil(): número entero más cercano y mayor Math.round(): redondea al entero más próximo. Math.random(): número aleatorio entre 0 y 1 Math.round(y-x)*Math.random()+x: número aleatorio entre ―x‖ e ―y‖. Math.sin(x)= sin(x) x en radianes Math.cos(x)= cos(x) x en radianes Math.tan(x)= tg(x) x en radianes Math.atan(x)= arctg(x) resultado en radianes Math.abs(x): valor absoluto de ―x‖ Math.max(a,b) : máximo valor de los dos Math.min(a,b): mínimo valor de los dos. Programa que calcula la hipotenusa de un triángulo rectángulo Escribe:

<HTML> <SCRIPT LANGUAGE="JavaScript">

170

Page 176: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

// PROG023.HTM var cat1,cat2,hipo; cat1=prompt("Escribe el valor de un cateto",""); cat2=prompt("Escribe el valor del otro cateto",""); cat1=parseFloat(cat1); cat2=parseFloat(cat2); hipo=Math.sqrt(cat1*cat1+cat2*cat2); alert("La hipotenusa del triángulo de catetos "+cat1+" y "+cat2+" es "+hipo); </SCRIPT> </HTML>

Graba el fichero con el nombre Prog023.htm en TuCarpeta y ejecútalo unas cuantas veces.

NÚMEROS ALEATORIOS Escribe el siguiente programa: <HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG024d.HTM var a; var x,y; var salida=""; salida=salida+"5 números aleatorios entre 0 y 1\n"; for(i=1;i<=5;i++) salida=salida+Math.random()+"\n"; salida=salida+"\n\n5 números aleatorios entre 3 y 7\n"; for(i=1;i<=5;i++) salida=salida+(Math.round(7-3)*Math.random()+3)+"\n"; salida=salida+"\n\n5 números aleatorios entre 15 y 70\n"; for(i=1;i<=5;i++) salida=salida+(Math.round(70-15)*Math.random()+15)+"\n"; alert(salida); alert("Vamos a ver 5 números aleatorios entre los dos\nque tú quieras");

x=parseFloat(prompt("Escribe el número menor (puede ser decimal)","")); y=parseFloat(prompt("Escribe el número mayor (puede ser decimal)",""));

salida=""; salida=salida +"5 números aleatorios entre "+x+" y "+y+"\n\n\n"; for(i=1;i<=5;i++) a=Math.round(y-x)*Math.random()+x; salida=salida+a+"\n"; alert(salida); /* Si quieres números aleatorios enteros basta cambiar los paréntesis de la siguiente

forma:

171

Page 177: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Math.round((y-x)*Math.random()+x) */

salida=""; salida=salida+"150 números enteros aleatorios entre 2 y 17\n"; for(i=1;i<=150;i++) salida=salida+Math.round((17-2)*Math.random()+2)+" - "; alert(salida); </SCRIPT> </HTML>

Graba el fichero con el nombre Prog024.htm en TuCarpeta y ejecútalo unas cuantas veces.

FUNCIONES

FUNCIONES SIN RETORNO DE PARÁMETRO

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG029.HTM alert("Programa que ahora llamará a una función"); mediageo(); alert("Se acabó lo que se daba"); /* ¡Atención!: a continuación tenemos la función */ function mediageo() var a,b; a=prompt("Escribe un número",""); a=parseFloat(a); b=prompt("Escribe otro número",""); b=parseFloat(b); alert("La media geométrica de "+ a +" y "+ b +" es "+Math.sqrt(a*b)); </SCRIPT> </HTML> Graba el programa anterior con el nombre Prog029.htm en TuCarpeta y ejecútalo varias veces. Estudio del Prog029.htm Estructura de una función:

function nombreFunción() sentencia1; sentencia2; ...; ...;

172

Page 178: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Se dice que la función es sin retorno de parámetros, porque no devuelve nada; para que la unción devuelva un valor, debería haber la instrucción return. Si una función no retorna nada se le denomina también con el nombre de MÉTODO. Nuestra función mediageo(), calcula la media geometrica de dos números. Como no retorna nada, lo que hace en realidad la función es ―agrupar‖ en un lugar determinado del fichero HTML, una serie de sentencias que por ellas mismas ya forman un programa, se dice también que es un subprograma.

<HTML> <SCRIPT LAN.... // Programa Principal sentencia1; mediageo(); // llama a la función y se ejecuta en este lugar sentencia2();// Fin del programa Principal function mediageo() sentencia3; ...; ....; </SCRIPT> </HTML>

Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG030.HTM var opc="0"; Método o Subprograma = función sin retorno de parámetros while (opc != "T") opc=prompt("Escribe la letra de la opción deseada: (S) Sumar - (R) Raíz Cuadrada (L) Logaritmo Neperiano - (A) Ayuda - (T) Terminar",""); if (opc=="S") suma(); if (opc=="R") raiz(); if (opc=="L") logaritmo(); if (opc=="A") ayuda(); function suma() var a,b; a=prompt("Escribe el primer sumando",""); a=parseFloat(a); b=prompt("Escribe el segundo sumando",""); b=parseFloat(b); alert("La suma de "+ a +" y "+ b +" es "+(a+b)); function raiz() var a; a=prompt("Escribe el radicando ",""); a=parseFloat(a); alert("La raíz cuadrada de "+ a +" es "+Math.sqrt(a));

173

Page 179: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

function logaritmo() var x; x=prompt("Escribe un número positivo",""); x=parseFloat(x); alert("El logaritmo neperiano de "+ x +" es "+Math.log(x)); function ayuda() alert("Es bastante tonto que me pidas ayuda\npero aquí la tienes:\n\tPulsa S si quieres sumar\n\tPulsa R para la raíz cuadrada\n\tPulsa L para el logaritmo neperiano\n\tPulsa A para acceder a la ayuda\n\tPulsa T para acabar") </SCRIPT> </HTML> Graba el programa con el nombre Prog030.htm en TuCarpeta y ejecútalo unas cuantas veces.

FUNCIONES QUE RETORNAN PARÁMETROS

Escribe el siguiente programa: <HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG031.HTM /* Programa Principal */ var x,y,result; x=prompt("Escribe el primer sumando",""); x=parseFloat(x); y=prompt("Escribe el segundo sumando",""); y=parseFloat(y); /* A continuación llamo a la función para calcular el cuadrado de la suma de x e y */ result=SumaCuadrado(x,y); alert("El cuadrado de la suma de "+ x +" y "+ y +" es "+result); // Fin del programa principal /* A continuación tengo la definición de la función */ function SumaCuadrado(a,b) return (a*a+b*b+2*a*b); </SCRIPT> </HTML> Graba el programa en TuCarpeta con el nombre Prog031.htm y ejecútalo varias veces. Estudio del Prog031.htm function SumaCuadrado(a,b) return (a*a+b*b+2*a*b);

Es una función con dos argumentos (a y b) que retorna un valor (parámetro), que en nuestro caso es el cuadrado de la suma de ―a‖ y ―b‖.

174

Page 180: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Una función que retorna parámetros, se caracteriza en que en su interior aparece la sentencia return, que permite devolver valores.

MATRICES Y ARRAYS

Una matriz es un conjunto de elementos colocados de forma adyacente en la memoria de manera que nos podemos referir a ellos con un solo nombre común. Las matrices se pueden clasificar según su tamaño en:

• Matrices Estáticas: tienen un tamaño fijo e inmutable. • Matrices Dinámicas: tienen un tamaño variable.

En JavaSript las matrices siempre son dinámicas. Las matrices se pueden clasificar según sus dimensiones:

• Arrays: son matrices de una dimensión. • Matrices: son matrices multidimensionales.

En JavaScript, las matrices son siempre ―Arrays‖, pero veremos que podemos ―simular‖ matrices multidimensionales. Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG032.HTM var x=new Array(); var salida=""; for(i=0;i<=10;i++) x[i]=2*i; salida=salida+"x["+i+"]="+x[i]+"\t"; alert(salida); </SCRIPT> </HTML>

Graba el programa con el nombre Prog032.htm en TuCarpeta y ejecútalo. Estudio del Prog050.htm

• var x=new Array(); Definimos la variable ―x‖ como un ―array‖ de un número indeterminado de elementos.

• Los elementos de un ―array‖ se indican: NombreArray[índice]= valor El índice= 0, 1, 2, 3, 4, ... En nuestro caso: X[0] será el primer valor del array X[1] será el segundo. Etc.

• x[i] = 2*i Asignamos a cada elemento del array el doble de su índice, es decir: x[0]= 0; x[1]= 2; x[2]= 4; etc.

Escribe el siguiente programa:

175

Page 181: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

<HTML> <SCRIPT LANGUAGE="JavaScript"> //PROG033.HTM var n; var salida=""; n=prompt("Escribe el número de elementos del Array",""); n=parseInt(n); var Vector=new Array(n); for(i=0;i<n;i++) Vector[i]=prompt("Introduce Valor",""); salida=salida+Vector[i]+"\n"; alert("Los valores de la matriz son:\n"+salida); </SCRIPT> </HTML>

Graba el programa con el nombre Prog033.htm en TuCarpeta. Observa de qué forma, podemos definir un array con un número variable de valores. Programa que calcula la media aritmética de una serie indeterminada de valores Escribe:

<HTML> <SCRIPT LANGUAGE="JavaScript"> //PROG034.HTM var x=new Array(); var med; var y=0; var i=0; var sum=0; while(y != 9999) y=parseFloat(prompt("Introduce un valor\npara acabar escribe 9999","9999")); x[i]=y; i++; x[i]=0; for(j=0;j<i-1;j++) sum=sum+x[j]; med=sum/j; alert("La media es "+med); </SCRIPT> </HTML>

Grábalo con el nombre Prog034.htm y ejecútalo varias veces para comprobar que funciona. Programa que calcula la media aritmética de un número determinado de valores utilizando una función Escribe:

<HTML>

176

Page 182: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

<SCRIPT LANGUAGE="JavaScript"> //PROG035.HTM function media(n) var x=new Array(n); var sum=0; for(i=0;i<n;i++) num=parseFloat(prompt("Escribe un valor de la serie ("+(i+1)+"º):","")); x[i]=num; sum=sum+x[i]; return sum/n; var valores; valores=parseInt(prompt("Escribe el número de elementos de la serie","")); alert("La media de todos los valores es: "+media(valores)); </SCRIPT> </HTML>

Grábalo con el nombre Prog035.htm y ejecútalo varias veces para comprobar que funciona. Mejora la ―salida‖ del programa anterior de la siguiente forma:

<HTML> <SCRIPT LANGUAGE="JavaScript"> //PROG036.HTM function media(n) var x=new Array(n); var sum=0; var salida=""; for(i=0;i<n;i++) num=parseFloat(prompt("Escribe un valor de la serie ("+(i+1)+"º):","")); x[i]=num; salida=salida+x[i]+" - "; sum=sum+x[i]; salida=salida+"\nLa Media Aritmética de estos "+n+" números es "+(sum/n); return salida; var valores; valores=parseInt(prompt("Escribe el número de elementos de la serie","")); alert(media(valores)); </SCRIPT> </HTML>

Grábalo con el nombre Prog036.htm y pruébalo. MATRICES CON VARIAS DIMENSIONES

JavaScript no soporta directamente matrices con varias dimensiones. En ―Java‖ o en ―C++‖ definimos matriz[5][5] como una matriz de dos dimensiones: 5x5 = 25 elementos en total. En JavaScript podemos ―simular‖ esta matriz de la siguiente forma:

177

Page 183: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

var Matriz2D=new Array(5); for(i=0;i<=4;i++) Matriz2D[i]=new Array(5);

Con este código lo que conseguimos es crear una matriz con 5 elementos cada uno de los cuales es, a su vez, una matriz. El resultado es el deseado: una matriz con dos dimensiones. Una vez definida una matriz multidimensional, podemos acceder a sus elementos de la siguiente forma: Matriz2D[0][0] = primer elemento de la matriz. Escribe el siguiente programa:

<HTML> <SCRIPT LANGUAGE="JavaScript"> // PROG037.HTM var Matriz2D= new Array(5); for (i=0;i<5;i++) var Aux=new Array(5); for (j=0;j<5;j++) Aux[j]="E"+i+j; Aux[4] += "\n"; Matriz2D[i]=Aux; alert(Matriz2D); </SCRIPT> </HTML>

Graba el programa en TuCarpeta con el nombre Prog037.htm y ejecútalo.

178

Page 184: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

UNIDAD 8 PHP INTRODUCCIÓN A PHP

PHP es un lenguaje de scripting que permite la generación dinámica de contenidos en un servidor web. El significado de sus siglas es HyperText Preprocessor. Entre sus principales características cabe destacar su potencia, su alto rendimiento, su facilidad de aprendizaje y su escasez de consumo de recursos. El código PHP puede incluirse dentro del código HTML de la página. Para delimitar la sección de código PHP podemos hacerlo de varias formas:

• Usando las etiquetas <?php y <? • Usando las etiquetas <? y ?> • Mediante <script languaje="php"> </script>

El funcionamiento de las páginas en PHP alojadas en un servidor es el siguiente:

• El navegador del cliente solicita el documento PHP. • Llega la solicitud del servidor y el servidor localiza el documento, lanza el intérprete de PHP y

ejecuta todo su código. • Una vez ejecutado el código se genera el resultado en HTML y lo devuelve al servidor para

que lo transfiera al cliente. • El servidor transfiere el resultado en HTML y es mostrado en el navegador del cliente.

VARIABLES

Una variable podría definirse como una posición de memoria creada para introducir o asignar cualquier valor o dato. Durante la ejecución del script el valor de la variable puede "variar"(valga la redundancia) tanto de tipo como de valor. En PHP (al igual que en Java Script) no hace falta declarar la variable ya que simplemente anteponiendo el carácter $ al nombre de la variable estamos indicando que es una variable. 179

Page 185: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Otro hecho que cabe destacar a la hora de programar en PHP y la declaración de variables es que PHP es un lenguaje "CASE SENSITIVE" es decir que diferencia entre mayúsculas y minúsculas y debido a esta razón no sería lo mismo $miVariable=valor; que $MiVaRiABle=valor; ya que PHP lo interpretaría como dos variables completamente diferentes. Los tipos de datos posibles que puede almacenar una variable son los siguientes:

Integer Números enteros positivos y negativos

Double Números decimales o de coma flotante

String Cadenas de texto

Boolean Valores True o False

Array Tipo especial de colección de valores

Object Tipo especial de dato complejo

En capítulos posteriores daremos cabida a los dos últimos tipos de datos (array y object) que aquí no han sido explicados ni comentados apenas.

CONVERTIR TIPOS

PHP es un lenguaje que realiza la conversión de tipos en función de los operandos y del operador. De esta forma si intentamos sumar la cadena '10' y el número 20 la acción que realizaría sería convertir la primera variable a numérica y de esa forma podría sumar 10+20=30. Aparte de que PHP en algunos casos realiza la conversión existen dos funciones especiales del propio lenguaje las cuales nos permiten saber el tipo de variable que estamos usando y también pueden convertir el tipo de variable: gettype() Recibe el tipo de variable que es settype($variable,'tipo variable') Transforma el tipo de variable del modo actual a el modo que le introduzcamos. VARIABLES CARACTERÍSTICAS DE PHP argv Array de argumentos pasados en la ejecución del script.

$_SERVER['argc'] Número de parametros pasados al script en su ejecución.

$_SERVER['PHP_SELF'] Nombre del script que se está ejecutando

$_COOKIE Array asociativo de pares (clave,valor) pasados a través de cookies

$_GET Array asociativo de pares (clave,valor) pasados a través de GET

$_POST Array asociativo de pares (clave,valor) pasados a través de POST

180

Page 186: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo $_FILES Array asociativo que contiene información de los ficheros recibidos

mediante POST

$_ENV Array asociativo de pares (clave,valor) del entorno

$_SERVER Array asociativo de pares (clave,valor) del servidor

$_SESSION Array asociativo de pares (clave,valor) de sesion

CONSTANTES

Son valores que se van a mantener constantes a lo largo de la ejecución del script y que posiblemente queramos usar a lo largo del script un gran número de veces. Para ello usamos la siguiente sintaxis:

define("nombre de la constante", valor);

Mi primer script php

Una vez que ya tenemos instalados PHP y MySQL , y el servidor Apache configurado para usarlos, podemos comenzar a escribir nuestro primer script en PHP. Ejemplo script php

<html> <body> <?php $myvar = "Hola. Este es mi primer script en PHP n"; //Esto es un comentario es mi primer script en PHP n"; //Esto es un comentario echo $myvar; ?> </body> </html>

Una vez escrito esto lo salvamos en un fichero con la extensión php, y lo colocamos en nuestro servidor, http://mi_servidor/php/test.php . Ahora si ponemos esta URL en nuestro navegador veremos una línea con el texto "Hola. Este es mi primer script en PHP”. Lo primero que apreciamos en el script son sus delimitadores. En la primera línea del script vemos <?php que nos indica que comienza un script en PHP, y en la última colocamos ?> para indicar el final del script. Hay que destacar que todas las líneas que se encuentre entre estos delimitadores deben acabar en punto y coma, excepto las sentencias de control (if, swicht, while, etc.).

181

Page 187: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Como en toda programación, es importante poner muchos comentarios, para lo cual si queremos comentar una sola línea tenemos que poner al principio de la línea // , si lo que queremos es comentar varias utilizaremos los delimitadores /* - */ . Para que el servidor envié texto utilizaremos la instrucción echo , aunque también podemos utilizar printf de uso similar al del C o Perl . Finalmente, vemos que la palabra myvar comienza con el signo dólar ( $ ) . Este símbolo le indica a PHP que es una variable. Nosotros le hemos asignado un texto a esta variable, pero también pueden contener números o tablas (arrays). Es importante recordar que todas las variables comienzan con el signo dólar. También habréis observado que el texto que le asignamos a la variable termina con n, esto no se imprime sirve para indicarle al navegador una nueva línea.

OPERADORES EN PHP

Al desarrollar cualquier programa empleamos normalmente operadores que nos sirven para realizar diversas operaciones que le otorgan un cierto grado de complejidad a nuestros programas, ya que, de otro modo el programa realizaría siempre lo mismo y por tanto no seria un programa útil.

Operadores aritméticos

+ Suma dos valores

- Resta dos valores (o pasa a negativo un valor)

* Multiplica dos valores

/ Divide dos valores

% Resto de dividir dos valores

++ Incremento en una unidad

-- Decremento en una unidad

Operadores de asignación

= Asigna a la parte derecha el valor izquierdo

+= Realiza la suma de la derecha con la izquierda y la asigna a la derecha

-= Realiza la resta de la derecha con la izquierda y la asigna a la derecha

*= Realiza la multiplicación de la derecha con la izquierda y la asigna a la derecha

/= Realiza la división de la derecha con la izquierda y la asigna a la derecha

182

Page 188: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

%= Se obtiene el resto y se asigna

.= Concatena el valor de la izquierda con la derecha y lo asigna a la derecha

Operadores lógicos

! Operador NO o negación. Si era true pasa a false y viceversa

and Operador Y, si ambos son verdaderos vale verdadero

or Operador O, vale verdadero si alguno de los dos es verdadero

xor Verdadero si alguno de los dos es true pero nunca ambos

&& True si ambos lo son

|| True si alguno lo es

Operadores condicionales

== Comprueba si dos números son iguales

!= Comprueba si dos números son distintos

> Mayor que, devuelve true en caso afirmativo

< Menor que, devuelve true en caso afirmativo

>= Mayor o igual

<= Menor o igual

ESTRUCTURAS DE CONTROL

A partir de ahora vamos a dotar de mas "dinamismo" a nuestros scripts ya que a partir de diversas estructuras indicaremos que acción debe realizar en cada caso, además también nos dará la posibilidad de realizar una misma acción multitud de veces con tan solo una línea de código. ESTRUCTURA IF

IF es una estructura de control utilizada para tomar decisiones según se cumpla una condición (o varias) o no. Su estructura básica es la siguiente:

if(condición/es) acción a realizar; else acción a realizar en caso de que no se cumpla;

183

Page 189: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Veamos un ejemplo básico para entenderlo mejor:

if($edad>=18) Comprar cerveza; else echo "No puedes comprar cerveza porque no tienes 18 años"; E incluso podemos realizar condicionales mas completas como el siguiente caso: if(($edad>=18)&&($dinero>0)) Puedes comprar cerveza porque tienes 18 y tu dinero es mayor que 0; else echo "O no tienes pelas o no tienes los 18" ;

ESTRUCTURA SWITCH

Toma distintas decisiones en función de distintos estados de la variable. Su sintaxis es la siguiente:

Switch (expresión) case valor1: sentencia a ejecutar cuando la expresión tiene como valor valor1 break case valor2: sentencia a ejecutar cuando la expresión tiene como valor valor2 break case valor3: sentencia a ejecutar cuando la expresión tiene como valor valor3 break default: sentencia que se ejecutar por defecto cuando no se cumpla ninguna de las condiciones anteriores

BUCLE FOR

El bucle for se usa para repetir una misma operación un número determinado de veces. Su sintaxis es la siguiente:

for (inicialización;condición;actualización) sentencia a ejecutar mientras se cumpla la condición

El bucle for esta compuesto de 3 partes:

• Inicialización: Se ejecuta tan solo al iniciar por primera vez el bucle. En esta parte se suele colocar la variable que contara el número de veces que se repite el bucle.

• Condición: Es la condición que se evaluara cada vez que se inicie el bucle. Esta condición es la que determina la duración del bucle.

• Actualización: Sirve para indicar los cambios que queremos ejecutar en las variables cada vez que se ejecuta el bucle.

184

Page 190: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Un ejemplo de su uso seria el siguiente:

for($i=1;i<=10;i++) echo "El número actual es".$i;

De esta forma escribiría todos los números contenidos entre 0 y 10. BUCLE WHILE Este bucle se usa cuando queremos repetir la ejecución de unas sentencias un número indefinido de veces. Su sintaxis es la siguiente:

while(condición) sentencia a ejecutar

Para entender mejor el uso de while nos serviremos del siguiente ejemplo:

while($color != "rojo") color= dame un color;

Este es un ejemplo de lo que se puede hacer con while. En este caso siempre y cuando el color no sea rojo nos dirá que introduzcamos un color. Bucle DO...WHILE

Este bucle se usa cuando no sabemos el número de veces que va a ejecutarse un bucle pero lo que si tenemos claro es que por lo menos una vez si que se ejecutara la acción. Su sintaxis es la siguiente:

do sentencia del bucle while(condicion)

BREAK y CONTINUE

BREAK Se usa para detener el bucle y dejar de interpretar el código que sigue después del break CONTINUE Sirve para volver al principio del bucle desde cualquier parte del bucle.

FUNCIONES EN PHP

Una de las herramientas más importantes en cualquier lenguaje de programación son las funciones. Una función consiste en un conjunto de rutinas y acciones que a lo largo del script van a ser ejecutadas multitud de veces agrupados en una FUNCION y desde cualquier punto del script puede ser llamada y ejecutada. A su vez, esta función puede recibir parámetros externos de los cuales dependa el resultado de una función.

185

Page 191: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Las funciones deben ser colocadas siempre antes de realizar la llamada a la función (como es lógico). La sintaxis de una función es la siguiente:

function nombre(parámetros) instrucciones de la función

Para llamar a la función sería de la siguiente forma: nombre(parámetros) Un ejemplo para entender el uso de funciones es el siguiente: Crearemos una función que realice la suma de dos números y muestre el resultado

function sumar($sumando1,$sumando2) $ suma=$sumando1+$sumando2 echo $sumando1."+".$sumando2."=".$suma; sumar(5,6)

Un hecho relevante que cabe destacar es que las variables que declaremos dentro de la función solo existirán o tendrán dicho valor dentro de la función. Existen casos en los cuales no sabemos el número de parámetros que le pasaremos a la función y en estos casos debemos usar las funciones creadas al efecto como son:

func_num_args() Numero de parámetros que se le han pasado a la función func_get_args() Devuelve un elemento de los que forman la lista de argumentos

MATRICES (ARRAY)

En la realización de un script en PHP en múltiples ocasiones existen variables que tienen información similar y se procesan de forma semejante. Para ello PHP (y otros lenguajes) poseen un elemento denominado array. Un array es un conjunto de variables agrupadas bajo un único nombre. Cada variable dentro de la matriz se denomina elemento. Dentro de la misma matriz pueden existir variables de diferentes tipos y no es necesario que sean todas del mismo tipo. Hay que diferenciar entre los dos tipos de matrices existentes:

• Indexada: Aquella cuyo acceso a los elementos se realiza por la posición que ocupan dentro de la estructura (se inician siempre desde la posición 0). Ejemplo: $amigos[0]

• Asociativa: Es aquella en la que los elementos están formados por pares clave-valor y el acceso se realiza proporcionando una determinada clave. Ejemplo: $amigos['edad']

Para crear matrices en PHP existen dos formas:

• De forma implícita, que consistiría en indicarle el elemento (ya sea proporcionando su posición o su clave).Ejemplo: $nombres[0]='Javier'; En caso de no indicarle una posición el array tomara el valor siguiente al ultimo valor introducido.Ejemplo: $nombres[]='Lucas' // tomaría como valor 1 ya que lo ultimo introducido era 0.

• Mediante array() en el cual le pasamos los elementos como parámetros. En caso de matriz indexada toman la posición que ocupan en la creación de la matriz, mientras que los de la matriz asociativa se les asigna su valor mediante "=>".Ejemplo: $amigo=array('Nombre'=>'Jose','Direccion'=>'Neopatria 21');

186

Page 192: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Cabe destacar que PHP no solo se limita a la existencia de matrices por sí solo sino que existen matrices de matrices, o lo que es lo mismo, matrices multidimensionales. Ejemplo:

$amigos[2]['Pedro'] RECORRIDO DE UNA MATRIZ

Disponemos de diversas herramientas para poder acceder a los elementos de una matriz. En cada momento se mantiene una referencia del elemento de la matriz al que se tiene acceso, por tanto, para recorrer una matriz bastará con modificar dicha referencia. En caso de una matriz indexada el recorrido se realizara mediante un bucle y para ello debemos saber el número de elementos totales que posee la matriz. Para ello nos basamos de la función count(variable) donde variable representa la variable de la que se quiere obtener el número de elementos. Si variable es una matriz devuelve el número de elementos que tiene, devuelve 1 si solo tiene un elemento (aunque no sea matriz) y 0 si no tiene ningún valor. Otra función que nos permite saber el número de elementos es sizeof(matriz) . Para acceder a los elementos de una matriz asociativa debemos usar la función ecah() que recupera el par formado por clave y valor y además avanza una posición de puntero. Su sintaxis es each(matriz) y los valores que devuelve la matriz asociativa son los siguientes:

Clave Significado

0 Nombre de la clave

1 Valor asociativo de la clave

key Nombre de la clave

value Valor asociado a la clave

La función que realiza el constructor list(variable1,variable2...variableN) es asignar los valores del elemento actual de una matriz a las variables indicadas como parámetro. Navegación sobre matrices Cuando se trata de matrices indexadas la navegación es sencilla ya que tan solo basta acceder al elemento que queremos mostrar, pero al tratarse de alguna matriz asociativa no se puede aplicar el mismo tratamiento. Para ello existen un conjunto de funciones prefabricadas que nos permiten realizar multitud de acciones:

Sintaxis Acción

reset(matriz); El puntero interno vuelve a la primera posición

end(matriz); El puntero interno va a la ultima posición

next(matriz); El puntero va al elemento siguiente

prev(matriz); Accede al elemento anterior

187

Page 193: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

current(matriz); Devuelve el contenido del elemento actual

INSERCIÓN DE ELEMENTOS Para la inserción de elementos dentro de un array existen una serie de funciones que nos permiten añadir elementos. Entre ellas destacamos: array_push(matriz,variable1,variableN); Añade elementos al final de la función y su longitud se incrementara tantos elementos como se hayan añadido array_unshift(matriz,variable1,variableN); Añade elementos al principio de la función desplazando a los otros tantas posiciones como elementos haya. array_pad(matriz,nuevo_tamaño,valor_relleno); Aumenta el tamaño de la matriz empleando un valor proporcionado como relleno. Eliminación de elementos array_shift(matriz); Elimina el primer elemento de la matriz array_pop(matriz); Elimina el último elemento de la matriz array_splice(entrada,pos_ini,[tamaño],[sustitutos]); Se usa para reemplazar o borrar el contenido de una porción de matriz, para ello debemos especificar la posición desde la cual queremos iniciar el borrado o sustitución, el tamaño o número de elementos que se verán afectados y los sustitutos (en caso que deseemos sustituirlo por algún elemento). array_keys(matriz,[valor buscado]); Se emplea cuando deseamos eliminar un elemento cuya posición desconocemos. array_values(matriz); Devuelve una matriz indexada con todos los valores almacenados en la matriz pasada como parámetro. Manipulación masiva de matrices array_walk(matriz,nombre_de_la_funcion,lista_parametros); Se emplea para realizar el mismo proceso definido en la función en todos los elementos incluidos. Obtención de submatrices array_slice(matriz,posicion,tamaño); Permite extraer una secuencia de elementos de una matriz. Los parámetros a pasarle son la matriz en la cual queremos extraer dichos elementos, la posición desde la que se inicia la extracción y el tamaño de la extracción (posiciones que abarcamos a partir de la inicial). ORDENACIÓN DE MATRICES

Criterio Función

Orden ascendente(matriz indexada) sort(matriz)

Orden descendente(matriz indexada) rsort(matriz)

Orden ascendente por valor(matriz asociativa) asort(matriz)

Orden descendente por valor(matriz asociativa) arsort(matriz)

Orden ascendente por clave(matriz asociativa) ksort(matriz)

Orden descendente por clave(matriz asociativa) krsort(matriz)

188

Page 194: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Otras funciones En este apartado se comentaran una serie de funciones (no todas porque seria imposible) que nos pueden servir en cierto momento. compact() Devuelve una matriz asociativa a partir de un numero indeterminado de parámetros extract() Crea variables desde matriz asociativa array_unique() Devuelve matriz sin datos repetidos ya que algunos se eliminan array_reverse() Devuelve matriz con mismos elementos pero en orden inverso shuffle() Modifica el orden de elementos de forma aleatoria array_count_values() Devuelve una matriz asociativa que contiene frecuencias de repetición de los valores de la matriz in_array() Permite comprobar si un valor esta en la matriz array_merge() Combina elementos de dos matrices en 1.

CADENAS DE CARACTERES

En este capítulo se comentaran todos los pormenores relacionados con cadenas de caracteres, las funciones existentes, etc. Una cadena consiste en una secuencia de caracteres que se encuentran comprendidos entre unos delimitadores que pueden ser:

• Comillas simples ' ' • Comillas dobles " " • Documento incrustado <<< >>>

En caso de que se desee por ejemplo unas " " dentro de las comillas de la cadena de carácter es necesario realizar la acción que se denomina escapar un carácter que consiste en precederlo de una es decir ". Los caracteres especiales que pueden aparecer dentro de un documento con delimitación son:

Secuencia Significado

n Nueva línea

r Retorno de carro

t Tabulación horizontal

Barra invertida

$ Signo de dólar

" Comillas dobles

[0-7]1,3 Carácter ASCII que coincide con el numero octal

x[0-9A-Fa-f]1,2 Carácter ASCII que coincide con el numero hexadecimal

El caso de documento incrustado es diferente al de ambas comillas. Su sintaxis es la siguiente:

<<<Identificador Cadena de caracteres Identificador;

189

Page 195: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo El resultado obtenido con documento incrustado es el texto mostrado igual que se ha introducido. La función chr(valor) nos devuelve en una variable del tipo cadena el carácter de la tabla de códigos ASCII asociado a un valor que recibe como parámetro, el valor que se pase debe estar entre 0 y 255. La función ord(cadena) nos devuelve un número entero que se corresponde con el código ASCII del primer caracter que recibe como parámetro. Visualización de cadenas

• Echo: Es el modo de visualización mas empleado. Su sintaxis es la siguiente: echo "texto"; • Print: Es la mas sencilla de todas y se encarga de mostrar una cadena de caracteres sobre su

salida estándar. No soporta ningún formato de salida y su sintaxis es: print(cadena); • Printf(formato,[valores]); Su funcionamiento es el mismo que en el caso anterior. La única

diferencia es que este soporta formatos de salida como su alineación (por defecto a la izquierda), valor numérico ( numero mínimo de caracteres que deben mostrarse), numero de decimales y tipo de datos cuyas posibilidades son:

Símbolo Significado

% Representa el símbolo del porcentaje

b El argumento se trata como nº entero y se representa en codificación binaria.

c El argumento se trata como nº entero y se muestra el carácter cuyo código ASCII se corresponde con el valor.

d El argumento se trata como nº entero y se representa en codificación decimal sin parte fraccionaria

f El argumento se trata como un nº de tipo double y se representa como un decimal sin coma flotante

o El argumento se trata como un nº entero y se representa en codificación octal

s El argumento se trata y representa como una cadena de caracteres

x El argumento se considera un nº entero y se representa en codificación hexadecimal en minúsculas

X El argumento se considera un nº entero y se representa en codificación hexadecimal en mayúsculas

Sprintf(formato,[valores]); su funcionamiento es idéntico a printf. Lo único que la cadena resultante de aplicarle un determinado formato se guarda en una variable. Alteración del contenido En ocasiones es necesario emplear dichas funciones para alterar el formato de salida de las cadenas. Las funciones empleadas para modificar dicho formato son:

• Chop (cadena); Devuelve la cadena de caracteres con los caracteres de blanco y nueva línea eliminados.

190

Page 196: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

• ltrim(cadena); Elimina los blancos que aparecen a la derecha de una cadena de caracteres • rtrim(cadena) ; Elimina los blancos que aparecen por la derecha en una cadena de caracteres • trim(cadena); Elimina los blancos que aparecen a izquierda y derecha de la cadena de

caracteres • str_pad (cadena, longitud, relleno, lugar); Comprueba si la longitud es menor que el valor

indicado, si es así añade los caracteres necesarios. El lugar de añadir puede ser: str_pad_left añade por la derecha (opción por defecto), str_pad_right añade por la izquierda y str_pad_both añade por ambos extremos.

• str_repeat(caracter,numero_veces); Repite un carácter el numero de veces indicado • strtolower(cadena); Pasa toda la cadena a letras minúsculas • strtoupper(cadena); Pasa toda la cadena a letras mayúsculas • ucfirst(cadena); Pasa a mayúscula el primer carácter de una cadena • ucwords(cadena); Pone en mayúsculas el primer carácter de cada palabra de la cadena • str_replace(subcadena1,subcadena2,cadena); Sustituye una palabra por otra dentro de una

cadena • strtr (cadena, originales, traducidos); Traduce ciertos caracteres .Ejemplo: $persona=strt

($persona,"áéíóú","a,e,i,o,u"); de esta forma cambiaría todas las vocales con acento por vocales sin acento.

• substr_replace(cadena,nueva,comienzo,longitud); Sustituye una porción del contenido de una cadena

ACCESO AL CONTENIDO

• strlen(cadena); Indica el nº de caracteres de una cadena • count_chars (cadena, modo); Numero de repeticiones de un carácter en una cadena. Los

modos posibles son: 0-Matriz indexada con frecuencia de aparición de todos los caracteres del código ASCII 1-Matriz con caracteres ASCII con frecuencia mayor que 0 2-Matriz con caracteres que no aparecen en la cadena 3-Cadena con caracteres usados en el código ASCII 4-Cadena con caracteres no usados en el código ASCII

• substr_count(cadena,subcadena); Frecuencia de aparición de una cadena • trchr(cadena,caracter); Devuelve la subcadena que comienza en la primera aparición del

caracter indicado • strstr(cadena,subcadena); Localiza subcadena dentro de la cadena original • stristr(cadena,subcadena); Igual que la función anterior pero sin distinción entre mayúsculas y

minúsculas • strpos(cadena,subcadena); Primera ocurrencia de una cadena en otra • strrpos(cadena,subcadena); Ultima ocurrencia de una cadena en otra • ord(cadena); Devuelve el valor ASCII de un caracter • substr(cadena,comienzo,longitud); Porción de texto que empieza en una posición y tiene una

longitud • strcmp(cadena1,cadena2); Compara dos cadenas siendo sensible a mayúsculas y minúsculas • strcasecmp(cadena1,cadena2); Compara dos cadenas sin ser sensible a mayúsculas y

minúsculas • strncmp(cadena1,cadena2,tamaño); Compara los N primeros caracteres de una cadena

strnatcmp(cadena1,cadena2); Sensible a mayúsculas y minúsculas. Compara dos cadenas.

• strnatcasecmp(cadena1,cadena2); No sensible a mayúsculas y minúsculas. Compara dos cadenas.

191

Page 197: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

• chunk_split(cadena,longitud,separador); Coge una cadena de caracteres e introduce separadores a una distancia determinada. No modifica el original sino que es una función nueva.

• explode(separador,cadena,limite); Permite obtener una matriz de cadenas de caracteres extraídas del original.

• implode(separador,elementos); Junta en una cadena los elementos de una matriz usando como concatenación el separador pasado como parámetro.

• parse_str(cadena); Permite extraer y crear variables que forman parte de una cadena que se corresponde con un "query string" recibido de una URL.

APOYO A HTML

• addcslashes(cadena,lista); Devuelve una cadena que tiene escapados todos los caracteres como parámetro.

• addslashes(cadena); Devuelve una cadena que tiene escapados todos los caracteres lógicos • stripcslashes(); y stripslashes(); Reciben cadenas que pueden contener caracteres de de escapes

y los desescapan • quotemeta(cadena); Esacapa los caracteres especiales • htmlspecialchars(cadena); Lleva a cabo conversiones como &->&amp,"->&quot • htmlentities(); Convierte todos los caracteres a entidades html. á pasa a ser &aacute; • get_html_translation_table(htmlentities o html_specialchars); Obtiene la relación de

traducción de cada caracter especial. • array_flip(); Intercambia las claves por los valores en array asociativo. • get_meta_tags(nombre_fichero,include_path); Devuelve todos los meta tags que contiene un

HTML. • strip_tags(cadena,mostrar_tags); Omite etiquetas PHP y HTML , lo de mostrar_tags son las

cadenas HTML y PHP no deben ser omitidas en la lectura. • n12br(cadena); Permite sustituir saltos de línea por <br> • parse_url(cadena_url); Devuelve una matriz asociativa con los siguientes campos:

Campo Significado

scheme Http

host Ip o DNS

port puerto

user nombre usuario

password contraseña

path path completo al recurso

query query string con datos al recurso

urldecode decodifica la información

urlencode Codifica la información

192

Page 198: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

CLASES

Las Clases son máximo exponente de la Programación Orientada a Objetos (POO). PHP no es un lenguaje orientado a objeto, pero implementa las características que permiten definir las clases. Pero, ¿qué son las Clases y para que sirven?. Empecemos por los segundo, sirven hacer el código más legible, y lo que es más importante, reutilizable. Escribir una Clase es sin duda más largo que escribir el código directamente, pero a la larga es más rentable por su portabilidad a otras aplicaciones y su mantenimiento. Las Clases no son más que una serie de variables y funciones que describen y actúan sobre algo. Por ejemplo, vamos a crear la clase automóvil , la cual tendrá diversas variables, $color, $modelo, $marca , $potencia , $matricula y habrá una serie de funciones que actuarán sobre la clase automóvil como Precio() , Acelerar() , Frenar() , Girar() y Reparar() . Como ejemplo vamos a crear la clase mysql, que nos servirá para realizar consultas a las bases de datos MySQL. <?php

class DB_mysql /* variables de conexión */ var $BaseDatos; var $Servidor; var $Usuario; var $Clave; /* identificador de conexión y consulta */ var $Conexion_ID = 0; var $Consulta_ID = 0; /* número de error y texto error */ var $Errno = 0; var $Error = ""; /* Método Constructor: Cada vez que creemos una variable de esta clase, se ejecutará esta función */ function DB_mysql($bd = "", $host = "localhost", $user = "nobody", $pass = "") $this->BaseDatos = $bd; $this->Servidor = $host; $this->Usuario = $user; $this->Clave = $pass; /*Conexión a la base de datos*/ function conectar($bd, $host, $user, $pass) if ($bd != "") $this->BaseDatos = $bd; if ($host != "") $this->Servidor = $host; if ($user != "") $this->Usuario = $user; if ($pass != "") $this->Clave = $pass; // Conectamos al servidor $this->Conexion_ID = mysql_connect($this->Servidor, $this->Usuario, $this->Clave); if (!$this->Conexion_ID) $this->Error = "Ha fallado la conexión."; return 0; //seleccionamos la base de datos if (!@mysql_select_db($this->BaseDatos, $this->Conexion_ID)) $this->Error = "Imposible abrir ".$this->BaseDatos ; return 0;

193

Page 199: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

/* Si hemos tenido éxito conectando devuelve el identificador de la conexión, sino devuelve 0 */ return $this->Conexion_ID; /* Ejecuta un consulta */ function consulta($sql = "") if ($sql == "") $this->Error = "No ha especificado una consulta SQL"; return 0; //ejecutamos la consulta $this->Consulta_ID = @mysql_query($sql, $this->Conexion_ID); if (!$this->Consulta_ID) $this->Errno = mysql_errno(); $this->Error = mysql_error(); /* Si hemos tenido éxito en la consulta devuelve el identificador de la conexión, sino devuelve 0 */ return $this->Consulta_ID; /* Devuelve el número de campos de una consulta */ function numcampos() return mysql_num_fields($this->Consulta_ID); /* Devuelve el número de registros de una consulta */ function numregistros() return mysql_num_rows($this->Consulta_ID); /* Devuelve el nombre de un campo de una consulta */ function nombrecampo($numcampo) return mysql_field_name($this->Consulta_ID, $numcampo); /* Muestra los datos de una consulta */ function verconsulta() echo "<table border=1>n"; // mostramos los nombres de los campos for ($i = 0; $i < $this->numcampos(); $i++) echo "<td><b>".$this->nombrecampo($i)."</b></td>n"; echo "</tr>n"; // mostrarmos los registros while ($row = mysql_fetch_row($this->Consulta_ID)) echo "<tr> n"; for ($i = 0; $i < $this->numcampos(); $i++) echo "<td>".$row[$i]."</td>n"; echo "</tr>n"; //fin de la Clse DB_mysql ?>

194

Page 200: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Como habreis observado, para crear una clase utilizamos la sentencia class, y además hemos creado una función con el mismo nombre que la clase, a esa función se le llama constructor y se ejecutará cada vez que definamos una variable de esa clase. No es obligatorina variable de esa clase. No es obligatorio crear un constructor en una definición de clase. Otra cosa importante en las clases es el operador -> , con el que indicamos una variable o método (parte derecha del operador) de una clase (parte izquierda del operador). Para hacer referencia a la clase que estamos creando dentro de su definición, debemos utilizar this. Y ahora veamos un ejemplo de la clase que hemos creado, y supongamos que el código anterior lo hemos guardado en un fichero llamado clase_mysql.inc.php .

<body> <html> <?php require ("clase_mysql.inc.php"); $miconexion = new DB_mysql ; $miconexion->conectar("mydb", "localhost", "nobody", ""); $miconexion->consulta("SELECT * FROM agenda"); $miconexion->verconsulta(); ?> </body> </html>

FECHAS

En este capítulo se estudiarán las funciones existentes en PHP para el empleo de fechas. Este tipo de funciones existen en la mayoría de lenguajes de programación y van orientadas a su obtención y representación en diferentes formatos. El tiempo en cualquier lenguaje de programación se suele tomar con respecto al inicio de la "era UNIX" que es el 1 de enero de 1970 a las 00:00:00. La función más sencilla que se basa en esta marca de tiempo es la función time() cuyo valor devuelto es el numero entero que representa la marca de tiempo correspondiente al instante en que se ejecutó la función con respecto a la era unix. En algunas aplicaciones es necesario poseer una marca de tiempo mas detallada y por ello usamos microtime() que devuelve una cadena de caracteres con los segundos y microsegundos. En caso de que quisiéremos tener como valor de referencia la hora del ordenador desde el cual se ejecuta emplearíamos la función gettimeofday() en la cual pasaríamos como parámetro interno , sec (para saber los segundos), usec (microsegundos), minuteswest (nº segundos al oeste de greenwich) y dstime (tipo de corrección en horarios de verano e invierno). Estas funciones citadas anteriormente son poco utilizadas ya que la existencia de otras funciones más completas, como por ejemplo la función getdate() que obtiene una matriz asociativa con la información de la fecha y hora del sistema. Los elementos de dicha matriz son:

Clave Contenido

seconds Numero de segundos de la hora actual

minutes Numero de minutos de la hora actual

195

Page 201: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

hours Numero de horas de la hora actual

mday Día correspondiente del mes

wday Día de la semana en valor numérico(empezando por 0)

mon Mes del año en valor numerico.Del 1 al 12.

year Valor numérico del año

yday Día del año en valor numérico

weekday Cadena de caracteres que contiene el día de la semana(en ingles)

month Cadena de caracteres que contiene el mes del año(en ingles)

0 Marca de tiempo obtenida por la función getdate()

Si no le pasamos ningún parámetro a la función entonces se considera la hora actual del sistema y si se recibe como parámetro un número entero entonces lo convierte a la fecha correspondiente. Otra función para obtener la hora es la función localtime(marca_tiempo,tipo_matriz); cuyos valores pasamos a comentar a continuación:

Índice Clave Contenido

0 tm_sec Numero de segundos de la fecha indicada

1 tm_min Numero de minutos de la fecha indicada

2 tm_hour Numero de horas de la fecha indicada

3 tm_mday Día correspondiente del mes

4 tm_wday Día de la semana en valor numérico(empezando por 0)

5 tm_mon Mes del año en valor numerico.Del 0 al 11.

6 tm_year Valor numérico del año.(se ve afectado por el efecto 2000)

7 tm_yday Día del año en valor numérico

8 tm_isdst Indica si esta activado el efecto del cambio de hora.

FORMATOS DE FECHAS Las funciones vistas anteriormente nos permitían convertir el valor entero de la fecha en un valor mas fácilmente entendible, aunque para poder acceder a dicha información hay que pasar por el paso previo 196

Page 202: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo de obtener una matriz. Para evitar ese paso intermedio, PHP pone a tu disposición la funcióndate(formato,marca_tiempo); Esta función nos devuelve una cadena de caracteres que se corresponde con una fecha a la que se ha aplicado un determinado formato. Para definir el formato de la fecha se dispone de las siguientes opciones:

Opción Descripción

a Hace que en la hora aparezca la cadena am o pm

A Hace que en la hora aparezca la cadena AM o PM

d Día del mes con dos dígitos desde 01 a 31

D Día de la semana como cadena de tres letras(en ingles).Ejemplo: "Mon"

F Nombre del mes completo como una cadena de caracteres.Ejemplo: "March"

h Hace que la hora aparezca en formato 01 a 12

H Hace que la hora aparezca en formato 00 a 23

g Hace que la hora aparezca en formato 1 a 12

G Hace que la hora aparezca en formato 0 a 23

i Hace que los minutos aparezcan en formato 00 a 59

j Hace que el día aparezca en formato 1 a 31

l(L min) Día de la semana completo.Ejemplo: Monday

L Escribe 0 si no es año bisiesto y 1 si lo es

m Hace que el mes aparezca en formato 01 a 12

M Hace que el mes aparezca en formato 1 a 12

s Hace que los segundos aparezcan en formato 00 a 59

S Cadena de caracteres con el sufijo ordinal.Ejemplo: "th","nd".

t Número de días del mes especificado de 28 a 31

U Número de segundos desde el comienzo de la "era UNIX"

w Número del día de la semana de 0 a 6

Y Año con cuatro cifras

197

Page 203: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

y Año con dos cifras

z Día del año de 0 a 365

Z Obtiene la diferencia horaria en segundos con respecto al GMT

La función strftime() representa otra posibilidad para aplicar formatos a una fecha. Esta función utiliza las convenciones locales de la máquina desde la que se ejecuta el script para devolver una cadena con el formato definido en el idioma seleccionado. Su formato queda definido por los siguientes valores:

Opción Descripción

%a Nombre del día de la semana abreviado en el idioma actual

%A Nombre del día de la semana completo en el idioma actual

%b Nombre del mes abreviado en el idioma actual

%B Nombre del mes completo en el idioma actual

%c Representación de fecha y hora en el idioma actual

%d Día del mes en formato 01 a 31

%H Hora como numero de 01 a 12

%I Hora como numero de 01 a 12

%j Día del año como numero de 001 a 366

%m Mes como numero de 01 a 12

%M Minuto en numero

%p am o pm según la hora dada

%S Segundos en numero

%U Numero de la semana del año como el primer domingo como primer día de la semana

%W Numero de la semana del año como el primer lunes como primer día de la semana

%w Día de la semana en numero de 0 a 6

%x Representación por defecto de la fecha sin hora

%X Representación por defecto de la hora sin fecha

198

Page 204: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

%y Año en numero de 00 a 99

%Y Año en numero de cuatro cifras

%Z Nombre o abreviatura de la zona horaria

%% Caracter %

ESTABLECIENDO HORAS Y FECHAS Una vez conocida la forma de obtener la fecha actual, es necesario disponer de una forma de poder fijar una determinada hora para establecer por ejemplo la fecha de caducidad de una cookie, es decir, la forma de obtener una marca de tiempo correspondiente a una determinada hora. Para ello PHP dispone de dos funciones que son mktime() y gmmktime() cuyo funcionamiento explicaremos a continuación: La función mktime(hora,minuto,segundo,mes,dia,año,[ajuste->0 horario de verano y 1 invierno]); nos devuelve un valor entero que representa la marca de tiempo UNIX de una determinada fecha. Cada uno de los valores mencionados puede omitirse siempre y cuando a partir del valor omitido no se representen mas valores a su derecha. La función gmmktime() funciona de la misma forma lo que considera que los parámetros representan una hora GMT. La función setlocale(categoria,pais); nos permite establecer el idioma en los que aparecerán la fecha,hora,etc. Las categorías posibles son:

Opción Descripción

LC_TYPE Conversión de cadenas a configuración regional

LC_NUMERIC Separadores numéricos

LC_TIME Para aplicar formatos de fecha y hora con strftime()

LC_ALL Todos los anteriores

VALIDACIÓN DE FECHAS Existen numerosas ocasiones en las que es necesario la creación de un sistema para comprobar si la fecha introducida por el usuario es valida o no. Para ello PHP nos brinda dos funciones capaces de realizar dicha comprobación:

• checkdate(mes,dia,año); Comprueba que la fecha introducida sea correcta. • strtotime(cadena_fecha); Comprueba que la cadena de fecha sea correcta. Para ello la fecha

debe estar en formato ingles, es decir, mm/dd/aa

ENTRADA Y SALIDA

Las operaciones de entrada/salida en PHP tienen una gran importancia en cualquier lenguaje de programación ya que no tiene sentido que un lenguaje de programación no pueda escribir, leer,

199

Page 205: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo actualizar datos de una base de datos, etc. En este capítulo nos centraremos básicamente en las operaciones de entrada y salida con archivos y posteriormente explicaremos las operaciones con bases de datos. Supongamos que deseamos hacer una tienda de compra online. Imaginemos el gran esfuerzo que supondría tener que modificar todas las paginas HTML de aquellos productos en los cuales en la temporada de oferta su precio se viera afectado. La solución más primitiva para el almacenamiento de datos es un fichero de texto, el contenido del fichero de texto puede ser cualquiera. ¿CÓMO ABRIMOS UN FICHERO? Para abrir un fichero PHP pone a disposición una función. Su sintaxis es la siguiente: fopen(fichero,modo); la ruta del fichero se indica en fichero, y modo determina los diferentes modos de lectura de un archivo:

Atributo Efecto

r Solo lectura

r+ Lectura y escritura

w Sólo escritura. Borra el contenido anterior

w+ Lectura y escritura. Borra el contenido anterior.

a Solo escritura. Conserva el contenido anterior.

a+ Lectura y escritura. Conserva el contenido anterior

La función fopen devuelve un manejador de fichero que es el que utilizaremos en las funciones relacionadas con la lectura y escritura de ficheros. ¿Cómo se recorre un fichero? Para leer un fichero lógicamente la operación es muy sencilla. Consiste en ir leyendo todos los caracteres hasta llegar al EOF (end of file... final del archivo) el cual determina el final del texto. Al igual que en las matrices los ficheros poseen un cursor interno que indica su posición actual con respecto a todo el texto. Para comprobar si se ha llegado al final del archivo, PHP pone a nuestra disposición la función feof(manejador_fichero); que se encarga de comprobar si la posición actual del fichero es la marca del final. La función mas genérica de lectura es fread(manejador_fichero,nº_bytes); que se encarga de leer un numero determinado de bytes del fichero y devolvérnoslo en una cadena de caracteres. En cambio, si lo que pretendemos es leer el fichero caracter a caracter debemos usar la función fgetc(manejador_fichero); Otras de las funciones mas características son: fgets(fichero,nº bytes); que nos devuelve una cadena de caracteres con la información leída. fgetss(manejador_fichero,nº bytes,[mostrar_tags]); nos lee un fichero HTML omitiendo las etiquetas características del código, en mostrar tags debemos introducir las etiquetas que deseamos que se muestren.

200

Page 206: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Si al realizar la lectura lo que se pretenden leer los valores que siguen un determinado formato de entrada nos podemos ahorrar un gran trabajo usando la función fscanf(manejador_fichero,formato,variables); Esta función obtiene los datos de entrada de un fichero siguiendo un formato determinado. Posteriormente dicha información debe ser tratada por el programador. La ultima función que vamos a estudiar para abrir ficheros es la función file(nombre_fichero); con esta función no es necesario usar las funciones fopen() y fclose() ya que se ejecutan de forma implícita. ¿Cómo se cierra un fichero? Cerrar es la ultima operación que se debe realizar al manipular un fichero y permite cerrar la referencia que se hace al fichero en el script ejecutado. Para poder cerrar un fichero usamos la función fclose(manejador_fichero); ESCRITURA EN FICHEROS Para escribir en un fichero básicamente debemos realizar tres operaciones: abrir el fichero en modo escritura, realizar la operación de escritura realizada, cerrar el fichero. Las funciones que empleamos para escribir en un fichero son fputs(manejador_fichero,cadena); y fwrite(manejador_fichero,cadena); que nos permiten añadir una cadena de caracteres al texto anterior contenido en el texto. ACCESO DIRECTO EN FICHEROS Existen un conjunto de funciones que nos permiten situarnos en una determinada posición del fichero para leer a partir de ahí. La función fseek(manejador_fichero,posicion); Nos permite empezar a leer un fichero a partir de una posición según se determine: seek_set (se toma con el principio del fichero), seek_cur (posición actual), seek_end (posición final). Existen dos funciones básicas que nos posicionan al principio del fichero -> rewind(manejador_fichero); o que nos devuelven el valor actual de la posición-> ftell(manejador_fichero); Funciones variadas para el manejo de ficheros fpassthru(manejador_fichero); Nos muestra el contenido referenciado por manejador de fichero. Devuelve el numero de bytes mostrados si no se produce ningún fallo. set_file_buffer(fichero,tamaño); Determina el tamaño del buffer de ese archivo que usara PHP. readfile(fichero); Lee un fichero y lo muestra por el método de salida estándar.

OPERACIONES CON FICHEROS

En el desarrollo y administración de sitios webs resulta bastante habitual tener que acceder a ficheros del servidor para manipularlos. Por esta razón en este capítulo vamos a describir las funciones creadas en PHP para realizar dichas operaciones. Cambio, creación y borrado de directorios chdir(ruta_al_directorio); Nos permite cambiar el directorio activo a la ruta establecida como parámetro.

201

Page 207: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo mkdir(ruta_al_directorio,permisos); Esta función crea un nuevo directorio en la ruta que hemos indicado, el segundo parámetro debe ser un numero octal y es por el que vienen determinados los permisos. rmdir(ruta_directorio); Borra el directorio pasado como parámetro. Procesamiento de los elementos de un directorio Supongamos que queremos realizar una operación determinada como una búsqueda, visualización, etc sobre todos los ficheros de un directorio. PHP nos proporciona una solución a este problema: el manejador de directorios (representa una conexión lógica con un directorio determinado que permite leer la lista con los nombres de los elementos contenidos en el directorio actual). La función empleada para abrir un directorio es opendir(ruta); cuya función como ya se ha comentado es abrir el directorio de la ruta especificada. Una vez se ha ejecutado opendir() podemos realizar tres operaciones: La función readdir(manejador); nos devuelve una cadena con el nombre del siguiente elemento del directorio, ya sea un subdirectorio o un fichero. La función rewinddir(manejador); procesa un directorio y sitúa el puntero interno en el primer directorio. La función closedir(manejador); finaliza el tratamiento de entradas de directorio. La clase dir PHP nos proporciona una pseudoclase predefinida para el manejo de ficheros. Esta clase no aporta ninguna funcionalidad que no hayamos visto hasta este punto pero recopila todas las funciones a partir de una sola. Para poder trabajar con un directorio primero hay que crear una instancia de clase dir por medio de su constructor. $directorio=dir(ruta_directorio); Este objeto cuenta con 3 métodos y 2 propiedades(las propiedades sólo de consulta por lo que no pueden ser modificadas. Los métodos empleados son read(),rewind() y close() Copiado,borrado y renombrado de ficheros copy(fichero_origen,fichero_destino); Realiza una copia de un fichero. unlink(nombre_fichero); Elimina el fichero. rename(nombre_antiguo,nombre_nuevo); Renombra el fichero pasado como parámetro. Atributos de ficheros y directorios Los ficheros y directorios poseen una serie de características propias denominadas atributos. PHP pone a nuestra disposición un conjunto de funciones que nos permitirán obtener información sobre los archivos o carpetas. La función file_exists(elemento); Comprueba que el elemento pasado como parámetro exista. filesize(nombre_fichero); nos informa sobre el tamaño del fichero en bytes. La función fileatime(fichero); nos informa sobre el ultimo acceso al fichero. La función filemtime(fichero); nos informa sobre la ultima modificación del fichero. La función filectime(fichero); nos informa sobre el último cambio al fichero. La función filetype(fichero); nos devuelve el tipo de elemento que estamos tratando. Los resultados posibles que puede devolver son:

202

Page 208: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Resultado Significado

block Dispositivo de bloques

char Caracteres

dir Directorio

fifo FIFO

file Fichero

link Enlace

unknown Desconocido

Chmod(elemento_directorio,permisos); recibe como parámetro el elemento y los permisos que deseamos otorgarle a dichos elementos

UNIDAD 9 EL LENGUAJE SQL Y MYSQL

SQL

En este capítulo nos dedicaremos a explicar el lenguaje SQL ya que posteriormente lo usaremos mucho en las conexiones de PHP con MySQL. CREACIÓN Y MODIFICACIÓN DE TABLAS EN SQL MySQL esta organizado a partir de tablas y dichas tablas contienen campos. Cada campo es capaz de contener un tipo de dato. Los tipos de datos que es posible crear en el lenguaje SQL son:

Tipo Descripción

Tinyint[Unsigned] Entero de 0 a 255 o de -128 a 128

Smallint[Unsigned] Entero de 0 a 65535 o de -32768 a 32768

Int o Integer Entero normal.Rango de -2147483648 a 214783648

Float[ (M,D) ] Número de coma flotante de simple precisión si no se pasa ningun argumento M es el nº de digitos y D el nº de decimales

Double [ (M,D) ] Número de coma flotante de doble precision. Siempre dispone de signo M y D

Decimal [ (M [,D]) ] Número almacenado como cadena de caracteres M es el número total de dígitos y D el nº de decimales

Date Tipo fecha.Admite formatos "AAAA-MM-DD" o "AA-MM-DD" o 203

Page 209: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

"AAMMDD"

Time Tipo hora.Admite formato "HH:MM:SS" o "HHMMSS" o "HHMM" o "HH"

Char(longitud) Cadena de caracteres de la longitud indicada.Se reserva el espacio en caracteres aunque no se usen

Varchar(longitud) Cadena de caracteres de la longitud indicada que se almacena con su ocupacion.Máxima longitud: 255 caracteres

Blob Tipo destinado a almacenar bits sin intrepretar.Se usa para almacenar texto mas largo de 255 caracteres.Diferencia mayúsculas de minúsculas.

Text Tipo destinado a almacenar bits sin intrepretar.Se usa para almacenar texto mas largo de 255 caracteres.No diferencia mayúsculas de minúsculas.

Para crear una tabla usaremos la siguiente sintaxis:

CREATE TABLE Nombre_tabla (Campo1 Tipo_dato Not Null, Campo2 Tipo_dato, PRIMARY KEY (Campo3));

Esto nos crearía una tabla con 3 campos de los cuales Campo3 es un valor único, es decir, que no puede ser sobreescrito. ELIMINAR TABLAS Para eliminar una tabla usaremos:

DROP TABLE Nombre_tabla; MODIFICAR TABLAS Para modificar la estructura de la tabla usaremos la siguiente sintaxis:

ALTER TABLE Nombre_tabla [ADD Nombre_atributo Definición] //Añadiría un nuevo campo [CHANGE AntiguoNombreAtributo NuevoNombreAtributo Definición] //Cambiaría un campo [DROP NombreAtributo]; //Borraría un campo

Los índices son una estructura de acceso que permiten organizar los datos contenidos en una tabla. Para crear un índice usaríamos la siguiente sintaxis:

CREATE [UNIQUE] INDEX NombreIndice ON Tabla (Campos);

204

Page 210: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

MANIPULACIÓN DE DATOS EN SQL INSERCIÓN DE DATOS Para insertar datos en la tabla se realiza mediante el comando insert y su sintaxis es la siguiente:

INSERT INTO NombreTabla [Campo1,Campo2...CampoN] VALUES (Valor1,Valor2...ValorN);

CONSULTAS DE DATOS Para esta acción usamos el comando SELECT y la sintaxis es la siguiente:

SELECT ([*]/[Atributos]) FROM Tabla/s [WHERE ListaCondiciones] [GROUP BY Campo] [HAVING ListaCondiciones] [ORDER BY Campo]

Existen un conjunto de funciones dentro de las consultas de datos que nos permiten obtener información o realizar operaciones con respecto a las filas. Las funciones son:

FUNCIÓN DESCRIPCIÓN

COUNT(*/DISTINCT Campo) Cuenta el numero de filas

SUM(Campo) Suma los valores del atributo indicado

AVG(Campo) Obtiene la media aritmética del atributo

MAX(Campo) Obtiene el valor máximo del atributo

MIN(Campo) Obtiene el valor mínimo del atributo

ELIMINACIÓN DE DATOS Para eliminar datos usamos la sentencia DELETE cuya sintaxis es la siguiente:

DELETE FROM NombreTabla [WHERE Condición];

CONEXIÓN CON MYSQL

Una vez que ya hemos explicado un poco por encima todas las operaciones posibles y lógicas que podemos hacer con una base de datos en el lenguaje SQL, llega el momento de combinarlo con la potencia de PHP y para ello usaremos el programa MySQL. MySQL es uno de los gestores de bases de datos mas utilizados en entornos en los cuales se emplea PHP ya que PHP dispone de numerosas funciones que se compaginan perfectamente con MySQL. La forma genérica de obtener información de tablas en Mysql es la siguiente:

• Conexión con el gestor. • Preparación de la consulta SQL. • Ejecución de la consulta. • Procesamiento del resultado obtenido en el cursor. • Liberación de recursos (esta es opcional, aunque es recomendable). • Cierre de la conexión con el gestor.

Para realizar estas y otras muchas mas cosas disponemos de las siguientes funciones:

Función Descripción

205

Page 211: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo mysql_connect("host","usuario","password") Establece la conexión con el servidor. Recibe el host

y el usuario y contraseña con el que debe conectar.

mysql_select_db("base de datos",conexión) Selecciona la base de datos sobre la cual se va a trabajar

mysql_query(consulta,conexión) Ejecuta la consulta SQL indicada como primer parámetro.

mysql_num_fields(cursor) Devuelve el numero de atributos que figuran en el cursor que se le pasa como parámetro y en el que se almacena el resultado de la consulta

mysql_fetch_row(cursor) Avanza a la siguiente posición de la fila en cursor. Devuelve un array que contiene en sus celdas cada uno de los valores de los atributos de la fila.

mysql_free_result(cursor) Libera los recursos asociados al cursor.

mysql_close(conexion) Cierra la conexion establecida con mysql_connect.

Una de las ventajas que proporciona la altísima integración que PHP y MYSQL tienen es la existencia de funciones que permiten al programador acceder a las diferentes estructuras que conforman la base de datos. Algunas de las funciones son:

Función Descripción

mysql_list_dbs(conexion) Devuelve en un cursor los nombres de las bases de datos disponibles en el servidor al que se haya conectado con mysql_connect

mysql_list_tables(base_datos,conexion) Devuelve en un cursor los nombres de las tablas disponibles en la base de datos.

mysql_tablename(cursor,numero_fila) Devuelve el nombre de la tabla o base de datos en la que esta el cursor indicado

mysql_field_name(cursor,numero_col) Devuelve el nombre del campo cuyo índice se pasa como segundo parámetro

mysql_field_type(cursor,numero_Col) Devuelve el tipo del campo cuyo índice se pasa como segundo parámetro

mysql_field_len(cursor,numero_col) Devuelve la longitud del campo cuyo índice se pasa como segundo parámetro

mysql_field_flags(cursor,numero_col) Devuelve una serie de indicativos correspondientes a características del atributo cuyo índice se pasa como segundo parámetro

206

Page 212: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

mysql_affected_rows(conexion) Devuelve el numero de filas afectadas por una actualización o borrado

mysql_change_user(usuario,password) Cambia de usuario

mysql_create_db(basedatos) Crea una base de datos con el nombre pasado por parámetro

mysql_drop_db(basedatos) Elimina la base de datos pasada por parámetro

mysql_insert_id(cursor) Devuelve el valor generado para un AUTOINCREMENT

SESIONES

Generalmente una web se compone de una serie de páginas entre las que existe alguna relación. Un ejemplo claro es una página en la cual es necesario estar registrado para poder acceder a ellas ya que en función de la categoría del usuario nos permitirá acceder a unas secciones o otras. En estas aplicaciones será necesario ir comprobando los permisos de usuario y para ello usamos un elemento en PHP denominado "sesiones". Una sesión se inicia cuando un usuario entra en la aplicación web y finaliza cuando el usuario abandona la aplicación (mas adelante comprenderemos lo de "abandonar aplicación"). Durante todo ese tiempo podemos manipular una serie de variables que se inician al iniciar la sesión y mantener un tipo de información común entre todas las páginas (en el caso de el usuario registrado seria los privilegios que posee). Para mantener esta información constante es necesario que los datos se guarden en un fichero ya sea en el cliente (cookies) o en el servidor (en caso de que tenga desactivado las cookies). Para el problema que consiste en diferenciar los diferentes usuarios existe una solución muy básica que consiste en un identificador de sesión diferente en cada caso. Este identificador de sesión debe ser enviado de una pagina a otra para mantener la sesión activa(a menos que en la configuración del servidor tengamos activada la opción session_trans_id) y también es necesario pasar el identificador de sesión en los formularios como un campo HIDDEN. Ejemplos: Hipervínculo

<a href="pagina.php?<? =SID ?>">Entrar</a> Formulario

<input type="hidden" name="session_name()" value="SID">

Funciones de gestión de sesiones FUNCIÓN SIGNIFICADO

session_start(); Si es la primera solicitud genera un identificador de

207

Page 213: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

sesión aleatorio cuyo nombre será sess_IDsesión; si es otra solicitud continua la sesión iniciada anteriormente.

session_destroy(); Elimina todos los datos asociados con una sesión, borra el archivo en el servidor pero no borra la cookie.

session_register(nombre); Recibe como parámetro una serie de nombres de variable globales y los registra como variables de sesión en el fichero del servidor

session_unregister(nombre); Eliminamos la variable global introducida y se elimina el contenido de esta variable en el fichero del servidor.Sin pasar el parámetro nombre eliminaremos todas las variables de la sesión.

session_is_registered(nombre); Devuelve true en caso de que en la sesión se encuentre registrada una variable con dicho nombre.

session_unset(); Dejamos sin ningún valor asignado a todas las variables de la sesión

session_id([nombre]); Si no le proporcionamos ningún parámetro nos da el identificador de sesión; si le proporcionamos el parámetro nombre cambia el valor del identificador por el parámetro nombre.

session_name([nombre]); Si se invoca sin parámetro devuelve el nombre de la variable interna que tiene el id de sesiones; si se pasa parámetro cambia el nombre de la sesión.

session_get_cookie_params(); Permite definir nuevos valores para los parámetros de configuración de las cookies.Para que el cambio sea permanente hay que invocar el cambio en todos los documentos.

session_cache_limiter([cache_limiter]); Si se le proporciona valor modifica el valor por defecto en cambio sino se muestra el caché que tiene por defecto.

session_encode(); Devuelve una cadena con la información de una sesión, después de usar esta función la información de la sesión queda actualizada

session_decode(cadena); Descodifica la cadena que recibe como parámetro y que contiene la info de sesión, después de usar esta función se actualiza la info de sesión.

208

Page 214: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

session_save_path([path]); Devuelve el camino al directorio donde se guardan los ficheros asociados a la sesión.El efecto solo dura en el script actual.

session_module_name([modulo]); Devuelve el nombre del modulo que se usa para realizar la gestión de sesiones. Cuando se invoca un parámetro se usa como nuevo gestor de sesiones.

session_set_save_handler(open,close,read,write,destroy,gc);

Permite definir su propio manejador para almacenar la información asociada con una sesión.De esta forma los datos pueden ser metidos en una BD en vez de en un fichero. Tenemos que pasarle

como parámetro toda la información necesaria para crear y destruir sesiones.

FORMULARIOS CON PHP

Los Formularios no forman parte de PHP, sino del lenguaje estándar de Internet, HTML. Vamos a dedicar en este capítulo algunas líneas al HTML, para entrar posteriormente a tratarlos con PHP. Todo formulario comienza con la etiqueta <FORM ACTION="lo_que_sea.php" METHOD="post/get"> . Con . Con ACTION indicamos el script que va procesar la información que recogemos en el formulario, mientras que METHOD nos indica si el usuario del formulario va ha enviar datos ( post ) o recogerlos ( get ). La etiqueta <FORM> indica el final del formulario. A partir de la etiqueta <FORM> vienen los campos de entrada de datos que pueden ser: Cuadro de texto:

<input type="text" name="nombre" size="20" value="jose"> Cuadro de texto con barras de desplazamiento:

<textarea rows="5" name="descripcion" cols="20">Es de color rojo</textarea> Casilla de verificación:

<input type="checkbox" name="cambiar" value="ON"> Botón de opción:

<input type="radio" value="azul" checked name="color"> Menú desplegable:

<select size="1" name="dia"> <option selected value="lunes">lunes</option> <option>martes</option> <option value="miercoles">miércoles</option> </select>

Boton de comando: <input type="submit" value="enviar" name="enviar">

Campo oculto: <input type="hidden" name="edad" value="55">

Este último tipo de campo resulta especialmente útil cuando queremos pasar datos ocultos en un formulario.

209

Page 215: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Como habrás observado todos lo tipos de campo tienen un modificador llamado name , que no es otro que el nombre de la variable con la cual recogeremos los datos en el script indicado por el modificador ACTION de la etiqueta FORM FORM , con value establecemos un valor por defecto. A continuación veamos un ejemplo, para lo cual crearemos un formulario en HTML como el que sigue y lo llamaremos formulario.htm:

<HTML> <BODY> <FORM METHOD="post" ACTION="mis_datos.php"> <input type="hidden" name="edad" value="55"> <p>Tu nombre <input type="text" name="nombre" size="30" value="jose"></p> <p>Tu sistema favorito <select size="1" name="sistema"> <option selected value="Linux">Linux</option> <option value="Unix">Unix</option> <option value="Macintosh">Macintosh</option> <option value=&qmargin-left: 75"><option value="Windows">Windows</option> </select></p> <p>¿Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p> <p>¿Cual es tu sexo?</p> <blockquote> <p>Hombre<input type="radio" value="hombre" checked name="sexo"></p> <p>Mujer <input type="radio" name="sexo" value="mujer"></p> </blockquote> <p>Aficiones</p> <p><textarea rows="5" name="aficiones" cols="28"></textarea></p> <p><input type="submit" value="Enviar datos" name="enviar"> <input type="res-left: 50"> <input type="reset" value="Restablecer" name="B2"></p> </FORM> </BODY> <HTML>

Y ahora creemos el script PHP llamado desde le formulario mis_datos.php: Todos los datos se encuentran en la variable $_POST, ya que el formulario está enviado por el método post.

<?PHP; if (isset($_POST['enviar']) echo "Hola <b>" . $_POST['nombre'] . "</b> que tal estás<BR>n"; echo "Eres " . $_POST['sexo'] . "<BR>n"; echo "Tienes " . $_POST['edad'] . "<BR>n"; echo "Tu sistema favorito es " . $_POST['sistema'] . "<BR>n"; if (isset($_POST['futbol']) echo "Te gusta el futbol <BR>n"; else odigo" style="margin-left: 50"> else echo "NO te gusta el futbol <BR>n"; if ($_POST['aficiones'] != "") echo "Tus aficiones son: <BR>n"; echo nl2br($_POST['aficiones']); else

210

Page 216: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

echo "NO tienes aficiones <BR>n"; echo "<a href='formulario.htm'>VOLVER AL FORMULARIO</a>" ?>

Una vez rellenados los datos del formulario, pulsamos el botón Enviar datos , con lo que le campo enviar toma lo que su etiqueta value indica, es decir enviar="Enviar datos" . En nuestro script lo primero que evaluamos es que se haya enviado el formulario, y para ello nada mejor que comprobar que la variable $enviar no está vacía. Le ponemos el signo dólar delante a enviar , ponemos el signo dólar delante a enviar , ya que en PHP todas las variables se les refiere con este signo. Hay que tener en cuenta que si fusionáramos el código de ambos ficheros, nos ahorraríamos uno, pero no también se puede hacer en dos como lo estamos haciendo. Si la variable $enviar está vacia, enviamos el formulario.

<?PHP; if ($enviar) echo "Hola <b>" . $nombre . "</b> que tal estás<BR>n"; echo "Eres " . $sexo . "<BR>n"; echo "Tienes " . $edad . "<BR>n"; echo "Tu sistema favorito es " . $sistema . "<BR>n"; if ($futbol) echo "Te gusta el futbol <BR>n"; else echo "NO te gusta el futbol <BR>n"; if ($aficiones != "") < stuot;)>

echo "Tus aficiones son: <BR>n"; echo nl2br($aficiones); else echo "NO tienes aficiones <BR>n"; echo "<a href='$PHP_SELF'>VOLVER AL FORMULARIO</a>" else <HTML> <BODY> <FORM METHOD="post" ACTION="<?PHP echo $PHP_SELF ?>"> <input type="hidden" name="edad" value="55"> <p>Tu nombre <input type="text" name="nombre" size="30" nombre" size="30" value="jose"></p> <p>Tu sistema favorito <select size="1" name="sistema"> <option selected value="Linux">Linux</option> <option value="Unix">Unix</option> <option value="Macintosh">Macintosh</option> <option value="Windows">Windows</option> </select></p> <p>¿Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p> <p>¿Cual es tu sexo?</p>

211

Page 217: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

<blockquote> <p>Hombre<input type="radio" value="hombre" checked name="sexo"></p> <p>="codigo" style="margin-left: 100"><p>Mujer <input type="radio" name="sexo" value="mujer"></p> </blockquote> <p>Aficiones</p> <p><textarea rows="5" name="aficiones" cols="28"></textarea></p> <p><input type="submit" value="Enviar datos" name="enviar"> <input type="reset" value="Restablecer" name="B2"></p> </FORM> </BODY> </HTML> <?PHP //fin IF ?>

La variable de entorno $PHP_SELF , es una variable de entorno que nos devuelve el nombre del script que estamos ejecutando. Y por último, hacer notar el uso de la función nl2br() , nl2br() , con la cuál sustituimos los retornos de carro del texto, los cuáles no reconocen los navegadores, por la etiqueta <BR> . Descarga de ficheros desde un formulario Vamos a ver un caso especial, como descargar un archivo desde un formulario. Para ello utilizaremos una etiqueta INPUT de tipo FILE , soportada a partir de las versiones de los navegadores Nestcape Navigator 2.0 e Internet Explorer 4.0. El formulario debe usar el método post , y el atributo post , y el atributo enctype debe tener el valor multipart/form-data . Además al formulario debemos añadirle un campo oculto de nombre MAX_FILE_SIZE , al cuál le daremos el valor en bytes del tamaño máximo del archivo a descargar. <FORM ENCTYPE="multipart/form-data" ACTION="7-3.php" METHOD="post"> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="100000"> <INPUT NAME="archivo" TYPE="file"> <INPUT TYPE="submit" VALUE="Descargar Archivo"> </FORM> Cuando el formulario es enviado, PHP detectará automáticamente que se está descargando un archivo y lo colocará en un directorio temporal en el servidor. Dicho directorio será que el que esté indicado en el archivo de configuración php.ini , o en su defecto en el directorio temporal del sistema. Cuando PHP detecta que se está descargando un archivo crea varias variables con el prefijo del nombre del archivo pero con distintas terminaciones. La

variable terminada en $_FILES['archivo']['name'] contiene el nombre original del archivo, $_FILES['archivo']['size'] contiene el tamaño en bytes de éste, y la variable $_FILES['archivo']['type'] nos indicará el tipo de archivo si éste es ofrecido por el navegador. Si el proceso de descarga no ha sido correcto la variable archivo tomará el valor none y _size será 0, y si el proceso ha sido correcto, pero la variable $_FILES['archivo']['size'] da 0 , quiere decir que el archivo a descarga supera el tamaño máximo indicado por MAX_FILE_SIZE . Una vez descargado el archivo, lo primero que debemos hacer es moverlo a otro lugar, pues sino se hace nada con él, cuando acabe la ejecución de la página se borrará. 212

Page 218: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo Veamos un ejemplo de todo lo dicho.

<HTML> <BODY> <?PHP if (isset($_POST['enviar']) if ($_FILES['archivo']['name'] != "" && $_FILES['archivo']['size'] != 0) echo "Nombre: $archivo_name <BR>n"; echo "Tamaño: $archivo_size <BR>n"; echo "Tipo: $archivo_type <BR>n"; if (! move_uploaded_file ($_FILES['archivo']['tmp_name'], "directorio/".$_FILES['archivo']['name'])) echo "<h2>No se ha podido copiar el archivo</h2>n"; elseif ($_FILES['archivo']['name'] != "" && $FILES['archivo']['size'] == 0) echo "<h2>Tamaño de archivo superado</h2>n"; else echo "<h2>No ha escogido un archivo para descargar</h2>n"; echo "<HR>n"; ?> <FORM ENCTYPE="multipart/form-data" ACTION="<?php echo $_SERVER['PHP_SELF']; ?>" METHOD="post"> <INPUT type="hidden" name="MAX_FILE_SIZE" value="100000"> <p><b>Archivo a descargar<b><br> <INPUT type="file" name="archivo" size="35"></p> <p><INPUT type="submit" name="enviar" value="Aceptar"></p> </FORM> </BODY> </HTML>

ESTRATEGIAS DE ENSEÑANZA Y PARENDISAJE. Ensayo

Este tipo de estrategia se basa principalmente en la repetición de los contenidos ya sea escrito o hablado. La cual nos va permitir interiorizar los conceptos básicos de informática y su historia.

213

Page 219: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Elaboración Este tipo de estrategia se basa en crear: resumir, tomar notas, responder preguntas, describir como se relaciona la información.

Organización Utilizaremos esta estrategia que se basa en una serie de modos de actuación que consisten en agruparse para que sea más sencillo estudiarla y comprender la información.

Análisis - Síntesis: En el presente modulo se aplicara en el proceso de distinguir y separar las partes constituyentes de un todo

Estudio y trabajo en grupo Preparación de seminarios, lecturas, investigaciones, trabajos, memorias, etc. Para exponer o entregar en las clases teóricas. Se incluye la preparación de ensayos, resúmenes de lecturas, seminarios, conferencias, obtención de datos, análisis, etc. Así como el estudio de contenidos relacionados con las clases teóricas, prácticas, seminarios, etc. (estudiar para exámenes, trabajo en biblioteca, lecturas complementarias, hacer problemas y ejercicios, etc.). Todo ello, realizado de forma grupal y en espacios amplios.

Finalidad Hacer que los estudiantes aprendan entre ellos.

Estudio y trabajo autónomos Preparación de seminarios, lecturas, investigaciones, trabajos, memorias, etc. Para exponer o entregar en las clases teóricas. Se incluye la preparación de ensayos, resúmenes de lecturas, seminarios, conferencias, obtención de datos, análisis, etc. Así como el estudio de contenidos relacionados con las clases teóricas, prácticas, seminarios, etc. (estudiar para exámenes, trabajo en biblioteca, lecturas complementarias, hacer problemas y ejercicios, etc.). Todo ello, realizado de manera autónoma, individual. Finalidad Desarrollar la capacidad de autoaprendizaje.

RECURSOS

HUMANOS

Comunidad Educativa MATERIALES

214

Page 220: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Manual Técnico Pizarra Marcadores Borrador

TECNOLOGICOS

Internet Computador Infocus Amplificacion

EVALUACIÓN JAVA

1. ¿Cuál es la diferencia entre el tipo float y double? ___________________________________________________________________________

___________________________________________________________________________ ___________________________________________________________________________ 2. ¿Un literal y una constante, son lo mismo?, ¿si? ¿no? ¿Por qué?

______________________________________________________________________________________________________________________________________________________ ___________________________________________________________________________ 3. ¿Para que se utiliza el paquete javax.swing? ___________________________________________________________________________ ___________________________________________________________________________ 4. ¿Qué es un Applet y para que sirve? ___________________________________________________________________________ ___________________________________________________________________________ 5. ¿En que se diferencian las clases String y StringBuffer? ___________________________________________________________________________ ___________________________________________________________________________ 6. ¿Por qué Java lanza una Excepción? ___________________________________________________________________________ ___________________________________________________________________________ 7. 8. ¿Qué es, y cuales son los tipos de estructuras que Java soporta? ___________________________________________________________________________ ___________________________________________________________________________ 9. ¿Para que nos sirven las estructuras repetitivas en Java? ___________________________________________________________________________ ___________________________________________________________________________ 10. ¿Cuándo una condición se convierte en compuesta? ___________________________________________________________________________ ___________________________________________________________________________ 11. ¿Par que sirve el operador new, al momento de declarar un arreglo? ___________________________________________________________________________ ___________________________________________________________________________ 12. Mencione dos de las características más releventes de los arryas? ___________________________________________________________________________ ___________________________________________________________________________

215

Page 221: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

13. ¿Cuál es la diferencia entre las sentencia public y private? ___________________________________________________________________________ ___________________________________________________________________________ 14. Mencione dos características de los constructores:

_________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Descubre el Error A continuación se muestran, algunas líneas de código, las cuales poseen algunos errores, los que usted tendrá que identificar y corregir:

15. import java.swing.* 16. JOptionPane.showMessageDialog(―Bienvenido!!!!‖); 17. g.drawstring(―Hola‖, 25,25); 18. g.drawOval(60,30,45,); 19. g.drawrect(60,50); 20. g.setColor(White); 21. setbackground(Green); 22. string b; 23. StringBuffer str= StringBuffer(―Hola‖); Ejercicios 1. Escriba un programa que imprima su nombre en pantalla 2. Diseñe un programa en Java, que muestre la cantidad de gramos que hay en 3 Kg

(1Kg=1000g). 3. Diseñe un Applet en Java, el cual, muestre un mensaje en cinco, colores diferentes. 4. Cree un Applet, el cual dibuje un Ovalo, y dentro de éste, un Cuadrado. 5. Cree una aplicación web en Java, que le permita al usuario, dibujar un Ovalo, pero

permitiéndole al usuario, poder escoger el tamaño de sus radios. Luego, y un poco más abajo, se permita dibujar un rectángulo, en el cual, también el usuario, tenga la posibilidad de ingresar el tamaño de su base y de su altura.

6. Cree un Applet que indique si una frase ingresada por el usuario, es palíndromos. Es decir que se lee de igual manera al derecho que al revés.

7. Escriba un programa en Java, que dadas 5 notas de un alumno, muestre en pantalla, el promedio del alumno, pero redondeando la nota al entero más cercano.

8. Cree un Applet, que reciba dos números (a y b), y que muestre, cual de ellos es mayor, cual es menor, y ab y ba

9. Se desea crear una aplicación (ya sea Applet o Windows) que permita visualizar la construcción de un triángulo, en pantalla. El usuario, deberá ingresar la cantidad de niveles que desea y el programa, mostrará el resultado. Ejemplo: 3 niveles

* * * * * *

10. Diseñe un Applet que, muestre si un número es primo o no. Si es primo, se indicará dibujando una leyenda en el fondo del Applet, de lo contrario, se dibujarán todos los divisores de ese número.

11. El valor del seno de un ángulo x se puede aproximar sumando n términos de la serie: sin(x) = x - x^3/3! + x^5/5! - x^7/7! + ... Escribir un programa que solicite n y un ángulo x e informe del valor aproximado de su seno.

12. En una empresa de telefonía local, se tiene la siguiente política: si el consumo mensual, de una determina familia, excede los 300 minutos, se le cobra $0.03 por cada minuto. Si excede los

216

Page 222: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

500 minutos, se le cobran los primeros 300 minutos a precio normal y los restantes a $0.02. Pero si el consumo mensual, es superior a $800 minutos, se aplica la regla de asignación anterior, además que se le realiza un descuento de 1.25% del total. Diseñe una Aplicación en Java que de soporte a dicha política de cobro.

13. Escribir un programa en Java, que le permita al usuario ingresar las notas de cierta cantidad de alumnos, y que luego muestre la cantidad de aprobados (notas mayores o iguales a 6.00), la cantidad de reprobados, y las notas extremas. Así como los nombres de los alumnos que obtuvieron dichas notas.

14. Abarrotes, S.A. de C.V., desea tener un mayor control, sobre las venta sy las respectivas ganancias que realizan por día. Para lo cual, se le soliciota que escriba un programa en Java, que le permita contabilizar las ventas diarias, los importes totales de cada venta, la ganancia neta ( que es de 10% de cada venta).

15. En un vector de 20 posiciones se almacenan los sueldos de n empleados, de los cuales se desea saber, cuantos empleados ganan más del mínimo (sueldo mínimo: $160.00), cuántos ganan menos que el sueldo mínimo.

16. Realice una búsqueda binaria en un arreglo unidimensional. Una búsqueda binaria, es de la siguinte forma: se lee el valor que se desea buscar, se compara la primera posición, si son iguales, fin de la búsqueda; de lo contrario, compararlo con la posición dos, y así sucesivamente, si se llega al final del arreglo y no se encontró el valor, se debe indicar con una leyenda. Pero si se encuentra, se debe especificar la posición, que ese valor ocupa en el arreglo.

17. diseñe una matriz en Java, de 6*6 elementos, y luego muestre, la suma de sus filas, y columnas por separado.

18. Se desea crear un Applet, el cual sea capaz de leer una matriz de 5*6, y luego determine si la suma de la diagonal es mayor que la suma de la diagonal menor, además que dibuje estos valores, junto con los elementos de la matriz en el fondo del Applet.

19. Se desea saber la suma y la multiplicación de dos matrices A y B, cada una con m*n elementos.

20. Diseñe una clase en Java, llamada Leer(), la cual devuelva una cadena que el usuario haya ingresado por separado, y luego las concatene, dejendo un espacio entre ellas. Ejemplo=str1=Manuel; str2=Ortez Cadena=Manuel Ortez.

21. Cree un Objeto del tipo Fecha(), el cual recibe como argumentos, el día, mes y año. Y luego imprima esos Datos.

22. Se desea crear un objeto del tipo Moneda, el cual realice el cambio de colones a dólares (1 colón=8.75 dólares). Al ingresar una cantidad en colones imprima la respectiva equivalencia el dólares, pero solo con DOS decimales.

JAVA SCRIPT

23. Haz un programa de nombre Eval1I.htm, que has de grabar en TuCarpeta, que funcione de la siguiente forma: • El programa nos pide nuestro nombre. • El programa nos pide nuestro primer apellido. • El programa nos pide en qué población vivimos. • El programa presenta una pantalla aproximadamente igual a la siguiente:

================================== Hola nombre Apellido Adiós habitante de Población ==================================

217

Page 223: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

24. Haz un programa de nombre Eval1J.htm, que has de grabar en TuCarpeta, que funcione de la siguiente forma:

El programa nos pide un número. Utiliza tres contadores:

• Un contador: suma 5 • Otro contador: suma 21 • Otro contador: resta 4

El programa nos presenta los 4 números de la siguiente forma: • La primera línea: el número introducido. • La segunda línea: los tres números tabulados, que han resultado de los tres contadores.

De forma que si introducimos el nº 5 debería aparecer:

25. Haz un programa de nombre Eval1K.htm, que has de grabar en TuCarpeta, que funcione de la

siguiente forma: • El programa nos pide un número entero. • El programa nos da como resultado el mismo número pero en base 16 • Y por último nos lo escribe en base 5

Comprueba el programa para el número 52. Deberás calcular en primer lugar matemáticamente el valor de 52 en base 16 y en base 5. 26. Haz un programa de nombre Eval1L.htm, que has de grabar en TuCarpeta, que funcione de la

siguiente forma: • El programa nos pide un número en base ocho El programa nos lo escribe en base

decimal. • Y por último en base 2.

Comprueba el programa para el número 65618. Deberás resolver en primer lugar el problema matemáticamente. 27. Haz un programa de nombre Eval1M.htm que has de grabar en TuCarpeta, que funcione de la

siguiente forma: • El programa nos pide un número entero. • El programa nos pide la base • El programa nos escribe el número introducido en la "base" deseada.

Comprueba el programa para el número 100, en base 2, 3 y 11. Deberás resolver en primer lugar el problema matemáticamente. 28. ¿Qué es la WWW? 29. ¿Cuáles son los "browsers" más conocidos? 30. Escribe un fichero HTML (que no sea un programa JavaScript), que presente la frase: "Hola

que tal" y debajo tu nombre y apellidos.

218

Page 224: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

31. ¿Qué encierra el par de tags: <BODY>, </BODY>? 32. ¿Qué relación hay entre el Java y el JavaScript? 33. ¿Quién creó el lenguaje de programación JavaScript? 34. ¿Cuáles son las características del JavaScript? 35. El JavaScript es un lenguaje ¿compilado o interpretado?. ¿Qué programa hace de compilador o

interprete? 36. ¿Qué diferencia hay entre null y NaN 37. ¿Qué problema hay al sumar en JavaScript?. Explica cómo solucionarlo. 38. Indica a qué es igual los siguientes valores:

a) parseInt("A",16)= b) parseFloat("31H")= c) toString(13)= d) toString(4.273,49)=

39. Haz un programa de nombre Eval1o.htm, que sirva para calcular el producto escalar de dos

vectores del plano. La ―salida‖ ha de ser de la siguiente forma:

Comprueba el funcionamiento del programa, utilizando el caso concreto que aparece en la ilustración. 40. Haz un programa de nombre Evalip.htm, que sirva para calcular el coseno del ángulo que

forman dos vectores del plano, sabiendo que Math.sqrt(x) calcula la raíz cuadrada de ―x‖. La ―salida‖ ha de ser de la siguiente forma:

Comprueba el funcionamiento del programa, utilizando el caso concreto que aparece en la ilustración.

219

Page 225: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

41. Haz un programa de nombre Eval1q.htm que sirva para calcular el punto medio de un segmento.

La ―salida‖ ha de ser de la siguiente forma:

Comprueba el funcionamiento del programa, utilizando el caso concreto que aparece en la ilustración.

42. El siguiente programa tiene errores. Escríbelo y corrígelo para que funcione (grábalo con el

nombre Eval2A.htm en TuCarpeta):

<SCRIPT> <HTML LANGUAGE="JavaScript" // EVAL2A.HTM var farenheit,celsius, var s=""; for(i=-2;i<=12:i++) celsius=10*i; farenheit=32+(celsius*9)/5; s=s+"C= "+celsius+" F= "+farenheit+"\n"; if (celsius==0) s=s+"Punto congelación del Agua\n"; if (celsius==100) s=s+"Punto de ebullición del Agua\n"; alert(s; <//SCRIPT> <HTML>

43. Haz un programa que funcione de la siguiente forma:

• El programa nos pide que escribamos dos números positivos menores de 57 • El programa nos da como resultado el producto de los dos números • Si los números no son positivos o son mayores de 57, el programa nos lo dice. • El programa nos pregunta al final si queremos volver a empezar. Graba el programa con el

nombre Eval2B.htm en TuCarpeta

44. Escribe un programa que nos vaya pidiendo números. Si escribimos el número 9999 se acaba; por último el programa nos da como resultado el número de números introducidos, exceptuando el 9999.

Graba el programa con el nombre Eval2C.htm en TuCarpeta.

45. Haz un programa que sirva para resolver sistemas de ecuaciones del tipo: ax + by = c dx + ey = f

Graba el programa con el nombre Eval2J.htm en TuCarpeta. x=(ce-bf)/(ae-bd) ; y=(af-dc)/(ae-bd) Prueba el funcionamiento del programa para el caso a=1; b=-2; c=-3; d=3; e=1;f=5; si todo funciona correctamente: x=1 ; y=2

220

Page 226: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

46. Haz un programa con la posibilidad de hacer el Eval2I.htm o el Eval2J.htm (debes utilizar la estructura ―switch‖)

Graba el programa con el nombre Eval2K.htm en TuCarpeta.

47. Haz un programa que escriba la tabla de valores de la función y = ax2 + bx + c, el programa nos pide los valores de a, b, c y el número natural ―v‖. El programa construye la tabla de valores entre los valores de ―-v‖ y ―v‖ con un incremento de una unidad. Graba el programa con el nombre Eval2L.htm en TuCarpeta.

La ―salida‖ para el caso a = 1, b = -2, c=3, v=5 ha de ser de la siguiente forma:

221

Page 227: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

EVALUACIÓN FINAL A) Conteste:

1. ¿Cuál fuel el primer instrumento creado por el hombre que ayudava a contar? 2. ¿En qué generación de computadoras se utilizarón por primera vez los transistores? 3. ¿Cuál es la principal diferencia entre computadoras analógicas y digitales? 4. ¿La unidad de medida más pequeña que se utiliza para medir el almacenamiento de

información es? 5. ¿Al procesar los datos ingresados al computador da como resultado? 6. Mencione 10 partes de la mainboart. 7. Mencione, cuáles son los dos grandes rubros de tipos de datos en Java: 8. Para que sirve el tipo Srtring, y el tipo double? 9. ¿Cuáles son las diferencias entre los 3 tipos de comentarios que Java soporta? 10. ¿Cuál es la diferencia entre los métodos showInputDialog y el método

showMessageDialog? 11. ¿Cuáles son las diferencias entre un objeto y una variable? 12. ¿Los métodos matemáticos, sólo pueden utilizarse con el tipo de dato double?¿Por

qué? 13. try y finally. ¿Tienen la misma Función? 14. ¿Cuál es la diferencia entre la estructura while y do..while? 15. ¿En que se diferencian las variables de tipo acumulador con las de tipo contador? 16. ¿Qué es un arreglo, array, matriz o vector? 17. ¿Cuáles son las diferencias entre un arreglo de una dimensión y dos dimensiones? 18. ¿Que es y para que sirven las Clases? 19. ¿Qué es un constructor? 20. ¿Por qué, la clase a partir de la cual creamos los objetos y la clase que la utiliza, deben

estar en el mismo directorio? B) Seleccione la respuesta correcta 21. La ALU realiza:

a) La toma de deciciones. b) Cálculos aritméticos. c) Almacena temporalmente la información 22. Unix es un sitema

operativo: a) Monousuario b) Monotarea c) Multiusuario

23. El comando que permite visualizar los atributos de los archivos y directorios es: a) Atrib /s /d –r –h –s *.* b) Attrib /s /d –r –h –s *.* c) Attrib /a /d –r –h –s *.*

24. Si tengo una Resistencia con los colores verde, Amarillo, café, dorado. Su valor será: a) 540 Ω ±5% b) 540 Ω ±10% c) 540 Ω ±15%

25. Los conectores para un cable UTP de 4 pares para una red LAN son: a) RJ11 b) RJ45 c) RJ12

C) Una según corresponda

26. símbolos y componentes 222

Page 228: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

Símbolo Componente

Transformador

Circuito integrado

Resistencia

LED

Interruptor 27. comandos UNIX

Comando Descripción ls Comprueba si responde en red cd Eliminar un archivo rmdir Mueve un archivo cp Elimina un directorio mv Cambia de directorio rm Muestra una lista de los directorios ping Copia un archivo

D) complete 28. La primera máquina analítica fue creada por ______________, profesor matemático

de la Universidad de Cambridge en el siglo________.

29. En ________se construyó en la Universidad de Pennsylvania la ________ (Electronic Numerical Integrator And Calculator) que fue la primera ____________________, el equipo de diseño lo encabezaron los ingenieros _______________ y _____________.

30. Las computadoras _______ operan contando _______ y haciendo comparaciones

_________ entre factores que tienen valores _______.

31. Las computadoras ____________ no computan directamente, sino que _________ constantementes _________, _________ o magnitudes físicas ___________.

32. La ____________es la ___________ que estudia el tratamiento ____________ y

____________ de la _____________.

33. El _________ es un concepto básico, ________ y sin elaborar. Por ejemplo, los nombres con los que _________ los objetos que nos rodean.

E) Verdadero falso ( )

34. Ranuras AGP: Se dedica exclusivamente a conectar tarjetas de vídeo 2D,. ofrece

223

Page 229: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

264 MB/s o incluso 528 MB/s. Mide unos 8 cm ( ) 35. Ranuras ISA: son las más antiguas. Funcionan con 8 MHz-16MB/s sirve para

conectar un módem o una tarjeta de sonido, Miden unos 14 cm y su color suele ser negro ( )

36. La topología en estrella se caracteriza por tener todos sus nodos conectados a un controlador central ( )

37. En la topología en anillo todas las estaciones o nodos están conectados entre si formando un anillo ( )

38. Topología en bus o canal los nodos se conectan formando un camino de comunicación vi direccional con puntos de terminación bien definidos. ( )

F) Ordene los siguientes pasos 39. Instalación del sistema operativo

___ Instalar los Drivers necesarios para los dispositivos no reconocidos en la instalación. ___ Ejecutar el programa de instalación ___ Proporcionar el nombre y contraseña del usuario que será administrador del sistema. ___ Preparación del Disco Duro: ___Seleccionar los componentes software opcionales que queremos instalar. ___Ajustar los parámetros de la red. ___Instalar el gestor de arranque. ___Realizar las actualizaciones de seguridad. ___Instalar los plugins del navegador. ___Preparar el equipo para arrancar desde CD/DVD.

40. LA NORMA IEEE T568 A:

___VERDE ___NARANJA ___BLANCO / VERDE ___CAFE ___AZUL ___BLANCO / AZUL ___BLANCO / CAFÉ ___BLANCO / NARANJA

41. LA NORMA IEEE T568 B:

___VERDE ___NARANJA ___BLANCO / VERDE ___CAFE ___AZUL ___BLANCO / AZUL ___BLANCO / CAFÉ ___BLANCO / NARANJA

G) Grafique e identifique sus partes de los siguiente:

42. Cable UTP 43. Cable FTP 44. Cable coaxcial

224

Page 230: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

45. Cable de fibra óptica 46. Mainborad

H) Descubre el Error: A continuación se muestran, algunas líneas de código, las cuales poseen algunos errores, los que usted tendrá que identificar y corregir:

47. sqrt(g); 48. try .. 49. catch.. 50. int v = new int[10]; 51. for(int i=0; i<10, i++); v[i]=i+5;

52. int [][] mat = new int(); 53. int [] b = 1, 2, 3, 4, 5, 6, ;// esta coma es permitida 54. class punto

Public int x; Private int y; void punto( )

x=10;y=20;

55. punto p=new Punto( ); 56. System.out.printl(p.X + ― ―+p.Y); 57. public punto(int , int )x=a;y=b; 58. punto(int a, int b)a=x; y=b; 59. punto()a=-1;b=-1;

I) EJERCICIOS

60. Diseñe un programa que muestre en pantalla, los 5 primeros números y a la par, como se leen cada uno de esos números

61. Se pide que cree, un Applet, el cual, debe dibujar un triangulo Equilátero. 62. Cree un Applet el cual, dibuje un rectángulo, y dentro de él, dibuje una cadena de

caracteres, la cual, puede ser su nombre. 63. En un banco, se desea calcular el interés que, recibirá un cliente al final del período

por sus ahorros. La fórmula para determinar el interés es la siguiente: I=C*i*t. donde C, es el monto de los ahorros, i es la tasa de interés y t es el período te tiempo en días.

64. Diseñe Un Applet que dibuje tantas veces, como el usuario el usuario lo desee, un rectángulo.

65. Se necesita crear una aplicación en Java que le permita al usuario ingresar tantos dígitos, como éste quiera, para luego, imprimir el valor mayor, el valor menor, y el promedio de todos los valores que se introdujeron.

48. Haz un programa de nombre Eval1A.htm, que has de grabar en TuCarpeta que sirva para restar dos números cualesquiera, sean enteros o reales. ¿Qué sucede si en lugar de restar dos números, intentamos restar dos textos?.

49. Haz un programa de nombre Eval1Ab.htm, que demuestre el único caso en que podemos restar dos cadenas de texto.

225

Page 231: segundo_media_infor.docx

UNIDAD EDUCATIVA TÉCNICA “VIDA NUEVA”

“Educación de calidad para un mundo competitivo

BIBLIOGRAFÍA Manuel Ortez [email protected] San Salvador, El Salvador. Diciembre de 2006

Elizabeth [email protected] Curso práctico de mantenimiento, reparación, actualización e instalación de computadoras. Editorial Cekit 2001. www.pchardware.org www.mundopc.net www.pc_actual.com http://simur.wikispaces.com/file/view/UD1.+Introducci%C3%B3n+a+los+sistemas+inform%C3% A1ticos.pdf http://www.monografias.com/trabajos/histocomp/histocomp.shtml#ixzz2Yg1t06dD http://r-

luis.xbot.es/ebasica/eb08.html

1. "Java como programar". Deitel y Deitel. 5º edición, Person Education 2004 2. "Programación en Java", Mora Rodríguez, Frank.Año: 2006 http://www.lawebdelprogramador.com 3. "Aprenda Java como si estuviera en Primero".García de Jalón, Javier. Rodríguez, José Ignacio.y otros. Escuela Superior de Ingenieros Industriales. Universidad de Navarra. Marzo, 1999 4. "Teach Yourself Java 2 In 21 Days". Doherty, Donald. Manning, Michelle. Sams Publishing. Año 1998 5. "Introducción a Java". Chojrin, Mauro. Año 2006 Guiones de Clases. Inga. MSc. Patricia Haydeè Estrada de López. Programación III Ciclo II/2006. Falcultad de Ingeniería y Arquitectura. Universidad de El Salvador

226