80727956 Modulo Fundamentos Programacion Eje 1[1]

29
FUNDAMENTOS DE PROGRAMACIÓN JOHLVER JOSE PARDO GARCIA Universitaria de Investigación y Desarrollo Bucaramanga - 2008 Educación a Distancia

description

programación cc++

Transcript of 80727956 Modulo Fundamentos Programacion Eje 1[1]

Page 1: 80727956 Modulo Fundamentos Programacion Eje 1[1]

FUNDAMENTOS DE PROGRAMACIÓN

JOHLVER JOSE PARDO GARCIA

Universitaria de Investigación y Desarrollo

Bucaramanga - 2008

Educación a Distancia

Page 2: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

MODULO FUNDAMENTOS DE PROGRAMACION

TABLA DE CONTENIDO

INTRODUCCIÓN AL MÓDULOBienvenida al módulo.Guía del módulo.Requisitos del módulo.

EJE TEMATICO 1: COMPONENTES Y FUNCIONAMIENTO BÁSICO DEL COMPUTADORCompetenciasIntroducciónEvaluación diagnósticaContenidos TemáticosComponentes básicos del computador

Dispositivos de entrada y salidaTipos de softwareTipos de lenguaje de programaciónCompiladores e interpretes

Situación ProblemaActividad de Enseñanza – AprendizajePrueba CognitivaRealimentación colaborativaRecursos del Eje Temático

EJE TEMATICO 2: DISEÑO DE ALGORITMOSCompetenciasIntroducciónEvaluación diagnósticaContenidos Temáticos

2.1 Definición de algoritmo2.2 Proceso para la construcción de algoritmos2.3 Construcción de algoritmos en pseudocódigo y

Diagramación estructurada.2.4 Variables, constantes y tipos de datos2.5 Operadores y jerarquía2.6 Procesos de control de flujo2.6.1 Asignación2.6.2 Condicionales2.6.3 Iterativos

Situación problemaActividad de enseñanza – aprendizajePrueba cognitivaRealimentación colaborativaRecursos del Eje Temático

Página 2

Page 3: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

EJE TEMATICO 3:FUNDAMENTOS BASICOS DE JAVACompetenciasIntroducciónEvaluación diagnósticaContenidos Temáticos3.1 Historia de java3.2 Componentes de la tecnología java3.3 Características de java3.4 Comparativa de java con otros lenguajes de3.5 Programación.3.6 Tipos de datos3.7 Operadores3.8 Estructura básica de un programa en java3.9 Entrada - salida de datos en java por consola

3.9.3 Entrada de datos3.9.4 Salida de datos3.10 Sentencias condicionales

3.10.3 If3.10.4 Switch3.11 Sentencias de iteracion

3.11.3 Ciclo For3.11.4 Ciclo While3.11.5 Ciclo Do-While3.12 Cadenas

3.12.3 Operaciones string básicas.3.12.4 Comparaciones de cadenas3.12.5 Conversiones de cadenas.3.12.6 La clase stringbuffer.

3.13 Arreglos3.13.3 Declaración de un vector3.13.4 Creación de un vector3.13.5 Inicialización de un vector.

Situación problemaActividad de enseñanza – aprendizajePrueba cognitivaRealimentación colaborativaRecursos del Eje Temático

BIBLIOGRAFIA

Página 3

Page 4: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

INTRODUCCIÓN

Saber programar es vital para el desempeño de la labor de un Ingeniero de

Sistemas porque los programas se aplican sistemáticamente en varias áreas:

Salud

Finanzas.

Procesos automatizados

Robótica

Inteligencia Artificial

Se dice que un buen programa es aquel que se puede mantener y para ello lo

que se requiere es un buen diseño del programa.

En el presente módulo se aprenderán fundamentos Básicos de programación y

la estructura básica del lenguaje Java.

La asignatura tiene una parte conceptual que se desarrollará por parte del

estudiante en jornadas individuales con apoyo del docente periódicamente.

La asignatura se complementa, con el Laboratorio de Programación, donde el

alumno usará estos fundamentos para realizar y poner a punto programas

completos, incluidas sus pruebas.

Página 4

Page 5: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

BIENVENIDA

Título de la Bienvenida

Te damos la bienvenida al gran universo de la computación y la programación

en el cual exploraras tus capacidades para el desarrollo de problemas que

satisfagan las necesidades personales y de la sociedad.

Beneficios

Los estudiantes que cumplan con los temas propuestos estarán en capacidad

de:

Analizar y dar solución a problemas algorítmicos.

Conocer la estructura básica de los computadores.

Conocer los diferentes procesos para la elaboración de

algoritmos

Elaborar programas computacionales haciendo uso de

herramientas software.

Identificar los diferentes aspectos de los lenguajes de

programación.

Invitación.

Durante la evolución del ser humano se ha buscado la perfección y la

superación del ser. Te invitamos a pertenecer al gran selecto grupo de

personas que deciden superarse profesionalmente y académicamente

estudiando este módulo con gran ímpetu y entusiasmo y así lograr alcanzar tus

metas personales e intelectuales,

Página 5

Page 6: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

GUIA DEL MÓDULO

Competencia

Diseñar algoritmos para dar solución a problemas que contemplen

asignaciones, condiciones y ciclos, utilizando diagramas de flujo y

pseudocódigo.

Justificación

En la asignatura de Fundamentos de Programación se sientan las bases para

que el estudiante desarrolle el pensamiento algorítmico y pueda aplicarlas en la

generación de programas de computadora que realicen eficientemente

procesos de cálculo. Estas bases de programación le serán útiles al estudiante,

en todas las asignaturas que hacen parte del área de aplicación profesional y

que están relacionadas con programación de computadores.

Página 6

Page 7: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

Metodología del Contenido

El modulo para una mejor comprensión y estudio esta dividido en tres ejes

temáticos que dan explicación a los diferentes temas contenidos de la

asignatura.

• Componentes y Funcionamiento Básico Del Computador. En este

eje temático el estudiante encontrara los diferentes conceptos que lo

introducirán en el mundo de la computación y la estructura básica que

compone una computadora y sus principales cualidades.

• Diseño De Algoritmos. En este eje temático el estudiante encontrará

conceptos, ejercicios que le permitirán comprender de una manera

sencilla desarrollar algoritmos a partir de casos de la vida cotidiana.

• Fundamentos Básicos De Java. En este eje el estudiante desarrollara

habilidades para la implementación y desarrollo de programas aplicando

los conceptos y técnicas para la elaboración de programas en el

lenguaje de programación JAVA.

Página 7

Page 8: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

Metodología del Desarrollo

Para el desarrollo del modulo se plantea un papel activo del estudiante en el

proceso, de manera que se realizarán múltiples actividades extraclase que

buscan que el estudiante profundice de forma independiente en los diferentes

temas. Tanto docentes como estudiantes participan en el proceso de

aprendizaje de la asignatura, mediante el cumplimiento de sus respectivos

roles.

El estudiante de la asignatura adquiere el compromiso de:

• Consultar los recursos que el docente y la Universitaria de Investigación

y Desarrollo - UDI facilitan para el desarrollo de al asignatura

(bibliografía, bases de datos en línea, otros recursos en línea,

documentos digitales)

• Participar activamente en las actividades de aprendizaje individual y en

grupo, diseñadas para el curso.

• Plantear las dudas e inquietudes que surgieran en el proceso de

desarrollo de la asignatura y colaborar en la resolución de las mismas

junto con sus compañeros de grupo.

• Mantener un ambiente de cordialidad, respeto, honestidad y

compañerismo durante las diferentes actividades y procesos realizados

en la asignatura, garantizando el bienestar y desarrollo personal de los

integrantes del curso.

• Realizar prácticas individuales de los diferentes temas planteados en la

asignatura, como elemento fundamental para el afianzamiento del

aprendizaje.

Página 8

Page 9: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

REQUISITOS DEL MODULO

• Requisitos Técnicos

Las personas que inicien el estudio de este módulo debe tener

conocimientos previos en:

• Manejo básico del Sistema operativo Windows.

• Manejo de Correo electrónico.

• Manejo de motores de búsqueda de Internet.

• Requisitos Académicos

El estudiante debe contar con un buen nivel de lógica matemática; por

medio de esta se construyen algoritmos más eficientes y eficaces.

Página 9

Page 10: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

EJE TEMATICO 1: COMPONENTES Y FUNCIONAMIENTO BÁSICO DEL

COMPUTADOR

TABLA DE CONTENIDO

CompetenciasIntroducciónEvaluación diagnósticaContenidos Temáticos1.1 Componentes básicos del computador1.2 Dispositivos de entrada y salida1.3 Tipos de software1.4 Tipos de lenguaje de programación1.5 Compiladores e interpretesSituación ProblemaActividad de Enseñanza – AprendizajePrueba CognitivaRealimentación colaborativaRecursos del Eje Temático

COMPETENCIAS

Competencias Conceptuales

Describir las diferencias que existen entre los diferentes tipos de lenguaje.

Competencias Procedimentales

Identificar los componentes hardware que componen una computadora.

Competencias Metacognitivas

Determinar la importancia del tipo de lenguaje de programación empleado en el

desarrollo de programas.

Competencias TransversalesParticipar de una manera activa en las diferentes actividades realizadas en el

aula de clase.

Página 10

Page 11: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

INTRODUCCION

Logros

• Identifica la utilidad de los traductores, sus diferencias y semejanzas.

• Demuestra de una forma grafica la estructura de un computador.

• Clasifica los diferentes tipos de software que existen en el medio.

• Comparte activamente con sus compañeros y el entorno que lo rodea.

Presaberes conceptuales

• Conocimientos básicos en Windows

• Manejo básico del Mouse y tecleado

• Manejo de procesador de texto

Importancia.

Este primer eje temático ubica al estudiante dentro del contexto de la

informática, permitiéndole así entender sus implicaciones importantes dentro

del funcionamiento interno de un computador. Esta teoría introductoria es

necesaria para el éxito del estudiante durante su estudio académico, dada la

constante necesidad de innovación, rapidez de actuación ante el cambio y la

transformación y adopción de nuevas tecnologías.

EVALUACIÓN DIAGNOSTICA

1. Escriba las principales partes que componen una computadora.

2. ¿La unidad de Cd-rom de la computadora se considera como un

dispositivo de salida?

3. Responda falso(f) o verdadero (v) según sea el caso

a. Windows es un sistema operativo grafico ( )

b. Microsoft Word es considerado como una aplicación para el

manejo de hojas de calculo ( ).

c. El lenguaje de maquina es el que entiende las computadoras ( )

Página 11

Page 12: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

4. Nombre tres sistemas operativos más comunes.

5. Componente que se encarga de hacer operaciones aritméticas en las

computadoras.

6. De los siguientes programas marque cuales son indispensables para el

funcionamiento de una computadora.

a. Juegos,Sistema operativo

b. Procesadores de texto, sistemas operativos,hojas de calculo.

c. Internet, juegos, procesadores de texto.

d. Todos los anteriores

CONTENIDOS TEMÁTICOS

COMPONENTES BÁSICOS DEL COMPUTADOR

Componentes de un Computador

http://www.gooachi.com/guachi.php?

page=cursos/introinformatica/introduccion_a_la_informatica3.html

Página 12

Page 13: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

Independientemente de la apariencia física los computadores se pueden

agrupar en seis componentes básicos las cuales se enumeran a continuación:

a. Unidad de entrada y Salida: Esta unidad es la encargada de la

recepción de la información que el usuario desea introducir al

computador desde varios dispositivos (Unidad de Disco, Unidad de Cd-

rom, Usb, Tecleado). Esta información se pone a disposición del sistema

operativo para ser procesada.

http://es.lge.com/products/model/detail/cdrom_gcr8525b.jhtml#

b. Unidad De salida: En esta sección la computadora toma la información

procesada y la coloca a disposición del usuario haciendo uso de los

dispositivos de salida (Monitor, Impresora), hoy en día en sistemas

compartidos la información esta disponible en redes de computadoras

para que los usuarios dispongan de la misma.

Página 13

Page 14: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

http://www.shopping.hp.com/product/printer/Officejet/1/storefronts/Q8081A

%2523ABA

c. Unidad de Memoria: Esta sección funciona como una “Bodega” de

acceso rápido, teniendo en cuenta que su nivel de almacenamiento es

relativamente bajo. Retiene la información que es introducida desde los

diferentes dispositivos de entrada para que pueda ser accesada de una

manera rápida y optima. La unidad de memoria toma posesión de la

información de una manera temporal hasta que sea colocada en los

dispositivos de salida. La unidad de memoria también es conocida como

memoria primaria.

http://www.valueram.com/europe/desktop/memory.asp

Página 14

Page 15: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

d. Unidad Aritmético Lógica(ALU): Este componente se encarga de

realizar las diferentes operaciones aritméticas (Sumar, Restar, Dividir y

Multiplicar).

e. Unidad Central de Procesamiento: Esta unidad es la encargada de

dirigir y supervisar las diferentes tareas ejecutadas por las anteriores

secciones. Dentro de las principales funciones se encuentran:

a. Indicar a las unidades de entrada que ejecuten los procesos de

almacenamiento.

b. Indicar a la unidad de memoria cuando es el momento exacto

para enviar la información a los dispositivos de salida.

http://www.intel.com/products/vpro/index.htm?iid=desktop_body+vpro

Página 15

Page 16: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

f. Unidad de Almacenamiento Secundario: Esta unidad es conocida como

el disco duro de la computadora en la cual se encuentran almacenados

nuestros directorios, archivos, programas.

http://tato.blogsome.com/2005/11/14/partes-de-un-disco-duro/

Página 16

Page 17: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

DISPOSITIVOS DE ENTRADA Y SALIDA

Dispositivos de entrada

Los dispositivos de entrada de la computadora son los encargados de

suministrar la información para su posterior procesamiento; dentro de los

diferentes dispositivos encontramos:

a. Tecleado

b. Mouse

c. Escáner

d. Unidad de Disco

e. Unidad de Cd-Rom

f. Memorias Usb.

g. Dispositivos de Red.

Dispositivos de salida

Los dispositivos de salida de la computadora son los encargados de

mostrarle la información al usuario después de haber sido procesada por la

unidad central de procesamiento de la computadora; dentro los dispositivos

de salida más comunes encontramos:

a. Impresora

b. Monitor

c. Diskette

d. Memoria Usb

Página 17

Page 18: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

TIPOS DE SOFTWARE

Software del sistema

http://pcprogress.com/img/productpics/WINXP%20Pro%20Booklet%20cvr

%20w_CD.jpg

El software del sistema es el conjunto de programas indispensables para que la

máquina funcione. Estos programas son, básicamente, el Sistema Operativo,

los editores de texto, los compiladores de lenguajes de programación y los

utilitarios.

El sistema operativo dirige las operaciones globales de la computadora,

instruye a la computadora para ejecutar otros programas y controla el

almacenamiento y recuperación de archivos de discos duros. Gracias al

sistema operativo es posible que el programador pueda introducir y grabar

nuevos programas, así como instruir a la computadora para que los ejecute.

Ejemplos de sistemas operativos son: Microsoft Windows, MS-DOS, OS/2, Mac

OS y UNIX.

Página 18

Page 19: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

Software de aplicación

Los programas que realizan tareas concretas (por ejemplo facturación,

contabilidad, análisis estadístico, gestión de negocios, etc.) se denominan

programas de aplicación.

Página 19

Page 20: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

1.4 TIPOS DE LENGUAJES DE PROGRAMACIÓN

Los lenguajes utilizados para escribir programas de computadoras que puedan

ser entendidos por ellas se denominan Lenguajes de Programación. Éstos se

clasifican en tres grandes categorías

1.4.1 Lenguajes de Maquina

Los lenguajes de máquina son aquellos cuyas instrucciones son directamente

entendibles por la computadora, y no necesitan traducción posterior para que el

CPU pueda comprender y ejecutar el programa. La programación en lenguaje

de máquina es difícil, porque implica escribir directamente en un sistema

binario (ceros y unos), por eso se necesitan lenguajes que permitan simplificar

ese proceso.

Los lenguajes de bajo nivel fueron diseñados con ese fin. Éstos son

dependientes de la arquitectura física de la computadora y de un conjunto

específico de instrucciones para el CPU, y los programas escritos en ellos

deben ser traducidos a lenguaje máquina para ser ejecutados. Un lenguaje

típico de bajo nivel es el lenguaje ensamblador (Assembler).

Página 20

Page 21: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

1.4.2 Lenguajes de alto nivel

Los lenguajes de programación de alto nivel son aquellos en los que las

instrucciones o sentencias a la computadora son escritas con palabras

similares a los lenguajes humanos – en general lenguaje inglés – lo que facilita

la escritura y comprensión por parte del programador. Una propiedad de los

lenguajes de alto nivel es que son independientes de la máquina, esto es, las

sentencias del programa no dependen del diseño de hardware de una

computadora específica. Los programas escritos en lenguajes de alto nivel, al

igual que los escritos en lenguajes de bajo nivel, no son entendibles

directamente por la máquina, sino que necesitan ser traducidos a instrucciones

en lenguaje máquina que entiendan las computadoras. Los programas que

realizan esta traducción se llaman Compiladores, y los programas escritos en

un lenguaje de alto nivel se llaman Programas Fuente. El compilador traduce el

Programa Fuente en un programa llamado Programa Objeto. El proceso de

traducción de un programa fuente a un programa objeto se denomina

Compilación.

Ejemplos de lenguajes de programación de alto nivel son: Basic, C, Pascal, C+

+, Cobol, Fortran, C#, Java y Visual Basic.NET.

Existen diversos tipos de lenguajes de programación de alto nivel, según su

evolución temporal y el uso que se les quiera dar. Algunos ejemplos de tipos de

lenguajes de alto nivel son:

- Estructurados (Basic, C, Pascal)

- Orientados a Objetos (C#,Visual Basic.NET, C++, Java)

- Declarativos (Lisp, Prolog)

- Funcionales (AML, CAML)

Página 21

Page 22: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

1.5. COMPILADORES E INTÉRPRETES

1.5.1 Compilador

Un compilador es el programa que se encarga de traducir un programa que se

encuentra escrito en lenguaje natural o de programación, en este proceso el

compilador crea un programa equivalente el cual se conoce con el nombre de

código de maquina.

Tipos de Compilador

• Compiladores cruzados: generan código para un sistema distinto del

que están funcionando.

• Compiladores optimizadores: realizan cambios en el código para

mejorar su eficiencia, pero manteniendo la funcionalidad del programa

original.

• Compiladores de una sola pasada: generan el código máquina a partir

de una única lectura del código fuente.

• Compiladores de varias pasadas: necesitan leer el código fuente

varias veces antes de poder producir el código máquina.

• Compiladores JIT (Just In Time): forman parte de un intérprete y

compilan partes del código según se necesitan.

1.5.2 Interprete

En el área de desarrollo de programas de computador el intérprete es un

programa que se encarga de analizar y ejecutar otros programas que están

elaborados en un lenguaje de alto nivel. Los interpretes se encuentran en un

nivel por encima de los compiladores; estos se encargan de traducir un

programa a lenguaje de maquina del sistema destino, los interpretes se

encargan de traducir los programas a medida que sea necesario y

normalmente no se guardan los resultados de dicha traducción.

Página 22

Page 23: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

Los programas interpretados son más lentos que los programas compilados ya

que es necesario traducir el programa a medida que este se ejecuta, los

programas que son interpretados son mucho más flexibles como entornos de

programación y depuración porque permiten reemplazar partes completas del

programa o agregar nuevos módulos. Los programas interpretados no

dependen de la computadora donde se esta ejecutando sino del propio

interprete esto se conoce con el nombre de Maquina Virtual. Dentro de los

lenguajes interpretados encontramos los siguientes:

• PHP

• JAVASCRIPT

• ASP

• PYTHON

Situación Problema

1. La empresa de salud SALUDECO desea hacer la adquisición

de unas computadoras para sus instalaciones. Los requisitos

que debe tener cada computadora son:

a. Debe almacenar información considerable al amplio número de

pacientes.

b. Se debe permitir compartir archivos entre dependencias.

c. Se debe permitir que cada usuaria imprima la historia de los

pacientes que la requieran.

De acuerdo a los anteriores requisitos que dispositivos recomendaría a la

empresa adquirir y ¿Por qué?

- Primero que todo le recomendaría unas computadoras Duerd Core 2 Duo

para los respectivos servidores, discos duros con suficientes capacidades de

almacenamiento de información, deberá tener software de aplicación

Página 23

Page 24: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

procesadores de palabras, hojas de cálculo, bases de datos y programas de

gestión empresarial; dispositivos de entrada y salida de información.

2. La empresa BucaSoft desea desarrollar una aplicación y desea adquirir un

programa compilador que le permita realizar cambio en el código para optimizar

la eficiencia en el programa. Que compilador recomendaría a la empresa y

porque.

• Compiladores optimizadores: realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original.

Página 24

Page 25: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

ACTIVIDAD DE ENSEÑANZA APRENDIZAJE

Bienvenida

Bienvenido a la primera actividad en la cual podrás poner a prueba tus

conocimientos adquiridos durante el estudio del eje temático.

Objetivos

• Evaluar los conocimientos adquiridos en el estudio del eje temático.

• Identificar los diferentes elementos que componen una computadora.

• Identificar las principales diferencia entre los interpretes y compiladores.

Detalle de la Actividad

La actividad deberá llevarse acabo de forma individual.

Metodología de trabajo

Los aspectos a tener en cuenta para lleva a cabo la actividad es la siguiente.

• Se debe entregar trabajo impreso con las preguntas resueltas. El

trabajo debe contar con las normas Icontec.

• Al momento de la revisión del trabajo se tendrá en cuenta la

ortografía como parte de la nota final.

Fuentes de información de referencia

Estudio del eje temático 1 que se encuentra en este modulo.

De acuerdo al contenido del eje temático resolver el siguiente cuestionario, el

cual servirá como medio de retroalimentación y estudio.

Página 25

Page 26: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

Preguntas:

Nombre las diferencias que existen entre los programas interpretados y compilados.

La ventaja de los intérpretes es que hacen que los programas sean más portables. Así, un programa compilado en una máquina PC bajo Windows no funcionará en un Macintosh, o en un PC bajo Linux, a menos que se vuelva a compilar el programa fuente en el nuevo sistema. En cambio, un programa interpretado funcionará en todas las plataformas, siempre que dispongamos del intérprete en cada una de ellas.

Java Script es un ejemplo de lenguaje interpretado. Esto permite que los scripts puedan funcionar en cualquier máquina que disponga de un navegador de Internet capaz de interpretarlos, algo común en todos los sistemas actuales. En cambio, C o C++ son lenguajes compilados, lo que hace que los programas desarrollados con estos lenguajes se ejecuten más rápido que sus equivalentes en JavaScript, aunque obliga a volver a compilarlos si se desea ejecutarlos en una máquina con diferente hardware o diferente sistema operativo (de hecho, muchos programas en C no podrían escribirse en JavaScript.

1. Cual de los siguientes programas pertenecen a los lenguajes de alto

nivel.

a. Php

Asp

Visual Basic.net

Todos los anteriores

2. ¿Por que se dice que los programas interpretados son más lentos que

los compilados?

El intérprete es notablemente más lento que el compilador, ya que realiza la

traducción al mismo tiempo que la ejecución. Además, esa traducción se

lleva a cabo siempre que se ejecuta el programa, mientras que el

compilador sólo la hace una vez. Por estos motivos, un mismo programa

interpretado y compilado se ejecuta mucho más despacio.

Página 26

Page 27: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

3. Nombre los tipos de compiladores.

Esta taxonomía de los tipos de compiladores no es excluyente, por lo que puede haber compiladores que se adscriban a varias categorías:

• Compiladores cruzados: generan código para un sistema distinto del que están funcionando.

• Compiladores optimizadores: realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original.

• Compiladores de una sola pasada: generan el código máquina a partir de una única lectura del código fuente.

• Compiladores de varias pasadas: necesitan leer el código fuente varias veces antes de poder producir el código máquina.

• Compiladores JIT (Just In Time): forman parte de un intérprete y compilan partes del código según se necesitan.

4. ¿Que nombre reciben los programas escritos en lenguaje de alto

nivel?

Estructurados (Basic, C, Pascal)

Orientados a Objetos (C#,Visual Basic.NET, C++, Java)

Declarativos (Lisp, Prolog)

Funcionales (AML, CAML)

5. Nombre tres dispositivos de salida.

- Teclado

- Impresora

- Mouse

6. ¿Que nombre reciben los programas interpretados que no dependen

de la computadora donde se ejecutan?

- Los programas de alto nivel son independientes de la máquina

Página 27

Page 28: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

7. De los siguientes lenguajes cuales pertenecen a los lenguajes

interpretados.

a. Visual Basic

b. PHP

c. C++

D. JAVASCRIPT

Pautas de Evaluación

• Elaboración de los ejercicios en forma correcta.

• Cumplimiento en la entrega y publicación de la actividad

• Orden de la presentación del trabajo.

BIBLIOGRAFÍA

CAIRO, Oswaldo. Metodología de la programación. Tomo 1 y 2. Editorial

AlfaOmega.1995.

JOYANES AGUILAR, Luis. Problemas de metodología de la programación.

Me GrawHill. 1990.

DEITEL, H.M. y DEITEL P.J. Cómo programar en C/C++ y Java. Pearson

Educación, 2004.

FLÓREZ RUEDA, ROBERTO. Algoritmos, estructura de datos y programación

orientada a objetos. Bogotá, Eco ediciones, 2005.

LIZCANO DALLOS, ADRIANA ROCÍO. Programación estructurada.

Edición Revisada. Bucaramanga: UDI, 2005

JOYANES AGUILAR, Luis. Programación en C: metodología,

algoritmos y estructura de datos. Madrid: McGraw Mili, 2001.

http://www.monografias.com/trabajos15/algoritmos/algoritmos.shtml

Proporciona una visión general de los algoritmos, mostrando

diferentes

herramientas para su construcción.

Página 28

Page 29: 80727956 Modulo Fundamentos Programacion Eje 1[1]

Copyright © UDI – Educación A Distancia

Fundamentos de Programación

http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/fundamentos.htm

Contiene los principios básicos para empezar a programar en ei lenguaje Java.

http://www.programacion.com/java/tutorial/java_basico/

Uno de los mejores tutoriales de nivel básico para el lenguaje Java

Página 29