You are on page 1of 30

2017

UNIVERSIDAD DE LAS FUERZAS ARMADAS


UNIDAD ACADEMICA ESPECIAL SALINAS

UNIDAD 1: ADMINISTRACIN DE PROYECTOS

1.1. Introduccin a la planeacin de proyectos.

La planificacin de un proyecto es el conjunto de actividades coordinadas entre s, cuyo


objetivo es determinar que, cuando y por quien deben hacerse las tareas del proyecto.

1.2. Proyecto: Qu es un proyecto, fases de un proyecto, tipos de


proyecto, diseo y planificacin de proyecto.

Que es un proyecto:

Un proyecto es un emprendimiento temporneo creado


para realizar un producto o servicio particular y con
objetivos definidos. En primer lugar un proyecto es
temporal. Un proyecto es adems un esfuerzo. Los
recursos pueden ser el personal y el equipamiento que
necesitan para realizar su trabajo. El esfuerzo es
encargado a un equipo u organizacin, por lo que los
proyectos tienden a ser eventos planificados. El xito
de un proyecto depende de una preparacin y
planificacin previa. Cada proyecto crea un producto
o servicio nico. Este es el objetivo del proyecto, la
razn por la que se emprende el proyecto.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Fases de un proyecto:

1
DIAGNOSTICO

Necesidad u oportunidad

4 2
EVALUACIN DISEO

Tcticas y estrategias
Valoracin pertinente sobre
lo planeado y lo ejecutado.

3
EJECUCIN

Poner en practica la
planificacin

Tipos de proyecto:
Proyecto productivo: Son proyectos que buscan generar rentabilidad econmica y
obtener ganancias en dinero. Los promotores de estos proyectos suelen ser empresas e
individuos interesados en alcanzar beneficios econmicos para distintos fines.
Proyecto Pblico o social: Son los proyectos que buscan alcanzar un impacto sobre la
calidad de vida de la poblacin, los cuales no necesariamente se expresan en dinero.
Los promotores de estos proyectos son el estado, los organismos multilaterales, las
ONG (organizacin no gubernamental) y tambin las empresas, en sus polticas de
responsabilidad social.
Proyecto comunitario: El proyecto comunitario es un instrumento en el cul se plantea
la solucin a un problema o la satisfaccin de una necesidad sentida por la colectividad;
es decir, es un plan de accin detallado que resuelve un problema, una necesidad
colectiva, situacional, corresponsable y cogestionara de la comunidad.
Un proyecto comunitario es el conjunto de actividades orientadas a satisfacer o resolver
las necesidades ms urgentes y apremiantes de una comunidad. Est orientado

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

fundamentalmente por quienes forman parte de la comunidad, puesto que son quienes
conocen la situacin real de la zona.

Diseo y Planificacin de proyecto:

1. Fijar objetivos generales y asignar recursos


2. Especificar actividades
3. Estimar su duracin
4. Asignar recursos a cada una
5. Determinar relaciones de precedencia
6. Supervisin, seguimiento

1.3. Qu son las tareas, tareas crticas, recursos.

Tareas
En el sector de tareas vamos a
comenzar a ingresar las tareas o
eventos, solo completaremos las
celdas Nombre de tarea y
Duracin.
La Duracin de las tareas puede
ser das (d), horas (h), minutos
(m), semanas (s), meses (me o
ms) pudiendo utilizar decimales,
por ejemplo 1,5 das.
Cuando creamos una tarea, Project
asigna a esta una duracin estimada de
1da, se identifica con signo de
interrogacin cerrado.
Cuando modificamos ese valor el signo de interrogacin desaparece, con ello estamos
diciendo que esa duracin es de tiempo real, a no ser que agreguemos dicho signo.
Esto es de gran ayuda cuando no sabemos bien cul va a ser la duracin de dicha tarea,
una vez que confirmemos dicha duracin sacamos el signo y listo.
Si necesitamos que una tarea dure un tiempo determinado sin importar la cantidad de
recursos que influyan en ella, debemos definir su duracin como transcurrida.
Por ejemplo, si colocamos un piso y necesitamos 2 das de secado. Si asfaltamos una
carretera necesitamos 1 da de secado.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Tan solo debemos agregar la t al final de la duracin. Quedar de esta manera: 2dt.

En la imagen anterior se pueden observar lo que son los hitos.

Cuando necesitamos marcar algn punto de referencia en algn lugar de nuestro proyecto
podemos ingresar un hito.
Para ello debemos ingresar una tarea con una duracin de cero, esto har que la tarea se muestre
automticamente como hito.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Tareas Crticas:
Una tarea crtica es la tarea que si se retrasara hara que el proyecto en general se retrase.
A medida que el proyecto avanza y estas tareas se van completando dejan de ser crticas.

Recursos:

Los recursos son quienes llevan acabo las tareas. Ellos son las Personas, equipos y materiales.

Tipos de recursos:
Recursos de tipo trabajo: son recursos humanos o de equipamiento que realizan trabajo para
completar una tarea. Consumen tiempo (horas o das) que es el que se utilizar para llevar a
cabo la tarea. Por ejemplo: personas y alquileres de mquinas.
Recursos de tipo material: vveres y otros elementos consumibles que se utilizan para llevar
a cabo una tarea. Por ejemplo: ladrillos, cemento, papel, CDs, etc.
Recursos de tipo costo: son recursos que tienen un costo final como por ejemplo: una comida,
un viaje, etc.

Hoja de recursos:

La hoja de recursos es donde iremos ingresando los


recursos que usaremos en el proyecto.
La podemos activar desde el men Ver Hoja de
recursos o desde la barra de vistas.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Definir calendario laboral del proyecto:

Para definir un calendario laboral para nuestro proyecto tenemos que dirigirnos para la pestaa
proyecto, en la seccin propiedades y damos clic en el botn cambiar tiempo de
trabajo

Una vez realizada esta accin se abrir automticamente una ventana, en la que encontraremos
varias opciones, pero la que debemos priorizar es la del botn crear calendario. Nos
aparecer un cuadro secundario:

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

En este cuadro podremos darle nombre a nuestro calendario, y elegir si queremos que
este calendario sea de las mismas caractersticas de algn calendario que ya tengamos
guardado con anterioridad o a su vez crear un totalmente nuevo calendario base.
Si optamos porque sea una copia de algn calendario anteriormente usado, al dar clic en aceptar
se aplicara la configuracin.
Si optamos por crear un nuevo calendario base, al dar clic en aceptar deberemos proceder a
configurar nuestro calendario con la primera ventana emergente en la que podremos elegir
semanas laborables y no laborables, horarios de trabajo, etc.

Crear Tareas:
Eliminar una tarea: para ello debemos seleccionar la tarea desde el indicador de la fila
(columna numerada), hacer click derecho y elegir la opcin Eliminar tarea. Las tareas que
estn debajo de esta procedern a acomodarse automticamente.
Insertar una nueva tarea entre las ya insertadas:

1. Nos debemos situar en la tarea que quedara debajo de la nueva.


2. Clic con el botn derecho y luego Nueva tarea o ir al men Insertar/ Nueva tarea.
3. Se crear la fila para ingresar el nombre y dems datos de la misma.
4. Tambin se puede pulsar la tecla INSERT.
Tareas de resumen y subtareas:
Con el fin de que el proyecto est ms organizado podemos agrupar las tareas que
compartan las mismas caractersticas o estn dentro de la misma etapa bajo una tarea
de resumen.
Una tarea de resumen es una tarea que est compuesta por subtareas.
La informacin de una tarea de resumen: duracin, fecha de inicio y fin, etc se obtendr
de sus subtareas.

Duracin estimada y duracin real:


Cuando creamos una tarea, Project asigna a sta una duracin estimada de 1 da, se identifica
con un signo de interrogacin cerrado. Cuando modificamos ese valor el signo de interrogacin
desaparece, con ello estamos diciendo que esa duracin es de tiempo real, a no ser que
agreguemos dicho signo. Esto es de gran ayuda cuando no sabemos bien cul va a ser la
duracin de dicha tarea, una vez que confirmemos dicha duracin sacamos el signo y listo.

Vincular tareas:

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Cuando pensamos un proyecto las tareas no comienzan todas juntas sino que por ejemplo, hay
tareas que no pueden comenzar hasta que otras finalicen. Para ello Project nos permite vincular
las tareas. Es muy importante en este paso marcar cul es la tarea antecesora y cul la
predecesora.

Project nos permite vincular las tareas de cuatro formas diferentes segn lo necesitemos:

Fin Comienzo
Cuando finaliza una tarea recin ah puede comenzar la tarea predecesora.

Comienzo Fin
El comienzo de la tarea antecesora se da cuando finaliza la predecesora.

Comienzo Comienzo
Ambas tareas deben comienzan juntas.

Fin Fin
Ambas tareas finalizan juntas.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Ntese que en todas las imgenes desde la primer tarea sale la flecha para terminar en la
segunda. Esto es lo que marca quien es la antecesora y quin la predecesora, en este caso la
primera es la antecesora y la segunda la predecesora.

Como vincular tareas:

1. Seleccionar la tarea antecesora.

2. Manteniendo presionada la tecla Control marcar la/s tareas predecesoras.

3. En la barra de Herramientas hacer clic en el botn Vincular tareas.

4. Para cambiar el tipo ir al diagrama de Gantt, hacer doble clic sobre la lnea que une las
tareas.
5. En el cuadro que aparece en Tipo elegir el tipo de vinculacin y Aceptar.

Desvincular tareas:

1. Seleccionar las tareas a desvincular.


2. En la barra de Herramientas hacer clic en el botn Desvincular tareas.

Asignar recursos a tareas:

Para asignar recursos debemos ingresar a la hoja de recursos y empezar a agregar recursos del
tipo que se necesiten para el proyecto. Para esto nos dirigimos a la pestaa TAREA, y damos
click en el desplegable Diagrama de Gantt.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Al desplegarse una lista seleccionaremos la opcin Hoja de recursos.

1. Nombre del recurso: Ingresamos el nombre del recurso.

2. Tipo: Desplegamos la lista y marcamos el tipo de recurso.

3. Etiqueta de material: Aqu especificamos la unidad de medida del recurso. Slo podemos
escribir en esta celda si el recurso es de tipo material, sirve para tener un mejor control a la
hora de asignar este tipo de recursos a una tarea.

4. Iniciales: Muestra la abreviatura del nombre de un recurso. Podemos utilizar la iniciales del
recurso en vez de los nombres para ajustar ms columnas en una vista. Por defecto Project
pone la primera letra del nombre pero podemos cambiarlas.

5. Grupo: Se pueden agrupar los recursos bajo un nombre de grupo, por ejemplo: albailes,
torneros.

6. Capacidad mxima: Aqu se establece la disponibilidad del recurso para el proyecto en el


que estamos trabajando. Por defecto la disponibilidad es del 100% pero por ejemplo, si Juan
va a trabajar en este proyecto la mitad del tiempo deberamos bajar a 50% la capacidad
mxima de dicho recurso.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Modificar datos de recursos:

Para modificar los datos de un recurso nos situamos en la celda correspondiente y hacemos el cambio
que deseemos.

Tambin podemos hacer todo esto desde el cuadro de dilogo Informacin del recurso.

Podemos acceder a ella desde:


Situndonos sobre el recurso y yendo al men Proyecto Informacin del recurso.
Haciendo doble clic sobre el recurso.
Clic derecho sobre el recurso y eligiendo del men la opcin Informacin del recurso.

Ruta crtica:
La ruta crtica es el conjunto de las tareas crticas que retrasaran la finalizacin del proyecto.
Podramos decir que la ruta est formada por las tareas ms importantes o a las que deberamos
prestarle ms atencin.
Para visualizar la ruta crtica debemos abrir la vista Gantt de seguimiento, desde la barra de
vistas o desde el men Ver.
En la siguiente imagen podemos ver las tareas que componen la ruta crtica en color rojo.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

UNIDAD 2: FUNDAMENTOS DE PROGRAMACIN

2.1 Conceptos de Algoritmo.

Un Algoritmo es una serie ordenada de instrucciones, pasos o procesos que llevan a la solucin
de un determinado problema. Los hay tan sencillos y cotidianos como seguir la receta del
mdico, abrir una puerta, lavarse las manos, etc; hasta los que conducen a la solucin de
problemas muy complejos.
Los Algoritmos permiten describir claramente una serie de instrucciones que debe realizar el
computador para lograr un resultado previsible. Vale la pena recordar que un procedimiento de
computador consiste de una serie de instrucciones muy precisas y escritas en un lenguaje de
programacin que el computador entienda, en este curso utilizaremos el entorno de desarrollo
de Scratch para programar nuestros algoritmos.
En la naturaleza hay muchos procesos que puedes considerar como Algoritmos ya que tienen
procedimientos y reglas. Incluso, muchas veces no somos conscientes de ellos.
Por ejemplo, el proceso digestivo es un concepto de algoritmo con el que convivimos a diario
sin que nos haga falta una definicin precisa de este proceso. El hecho de que conozcamos
cmo funciona el sistema digestivo, no implica que los alimentos que consumimos nos
alimenten ms o menos. La familiaridad de lo que sucede da a da nos impide ver muchos
algoritmos que pasan a nuestro alrededor. Procesos naturales como la gestacin, las estaciones,
la circulacin sangunea, los ciclos planetarios, etc, son algoritmos naturales que generalmente
pasan desapercibidos.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Ejemplo:
Veamos que algo tan comn como los pasos para cambiar una bombilla (foco) se pueden
expresar en forma de Algoritmo:

1. Ubicar una escalera o un banco debajo de la bombilla a cambiar


2. Tomar una bombilla nueva
3. Subir por la escalera o al banco
4. Sujetar y girar la bombilla a cambiar hacia la izquierda hasta retirarla del plafn.
5. Enroscar la bombilla nueva hacia la derecha en el plafn hasta apretarla.
6. Bajar de la escalera o del banco
7. Fin

2.2 Formas de expresar un Algoritmo.

Un algoritmo se puede representar por medio de dos formas, a travs de Pseudocdigo o de


Diagramas de Flujo. Para la presentacin de los algoritmos que hasta ahora se han utilizado en
el texto se han representado a travs de pseudocdigos.

Pseudocdigo: significa escribir las instrucciones del algoritmo en lenguaje natural, tal y como
lo expresamos de manera cotidiana, este procedimiento facilita su escritura en los lenguajes de
programacin. Segn Joyanes (2003): El pseudocdigo es un lenguaje de especificacin
(descripcin) de algoritmos.
Ejemplo:
Algoritmo diseado para el clculo de la hipotenusa de un tringulo, utilizando pseudocdigo,
Nota: Como se observa se utiliza el mtodo Entrada-Proceso-Salida La escritura del algoritmo
consta de:
Identificacin o cabecera
Declaracin de variables
Cuerpo o seccin de acciones
Inicio
Declaracin de variables
Lectura de los datos A, B y C
Aplicar formula
Imprimir resultado

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Fin

Diagramas de flujo o flujogramas: Son representaciones grficas de los pasos necesarios que
conllevan a la solucin algortmica de un problema. Para disearlos se utilizan determinados
smbolos o figuras que representan una accin dentro del procedimiento.
Estos smbolos se han normalizado o estandarizado para representar los pasos del algoritmo.
Cada paso se representa a travs del smbolo adecuado, que se van uniendo con flechas,
denominadas lneas de flujo, que a su vez indican el orden en que los pasos deben ser
ejecutados.
Ampliacin.
Ejemplo:
Algoritmo diseado para el clculo de la hipotenusa de un tringulo utilizando la tcnica del
diagrama de flujo
Para su elaboracin se deben seguir ciertas reglas:
1. Se escribe de arriba hacia abajo y de izquierda a derecha.
2. Siempre se usan flechas verticales u horizontales, jams curvas, se debe evitar el cruce de
flujos.
3. Cada paso expresa una accin concreta.

Para su secuencia de flujo normal se debe cumplir con:


1. Un inicio
2. Una lectura o entrada de datos
3. Procesamiento de datos
4. Una salida de informacin
5. Un final
Inicio
A, B, C
Aplicar formula
Resultado
Fin

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Diagrama de flujo: Un diagrama de flujo es una forma esquemtica de representar ideas y


conceptos en relacin. A menudo, se utiliza para especificar algoritmos de manera grfica.

-Representacin de las formas de diagrama de flujo: Al abrir la plantilla de diagrama de


flujo bsico, tambin se abre la galera de smbolos Formas para diagramas de flujo bsicos.
Cada forma de la galera de smbolos representa un paso diferente de un proceso.

Visio 2010 incluye muchas otras galeras de smbolos y formas especializadas que se pueden
usar en un diagrama de flujo. Para obtener ms informacin sobre cmo encontrar ms formas,
vea Usar la ventana Formas para organizar y buscar formas.

Inicio o finalizacin: Use esta forma para el primer y ltimo paso de un proceso.


Proceso: Esta forma representa un paso del proceso.


Subproceso: Use esta forma para un conjunto de pasos que se combinan para crear
un subproceso que est definido en otro lugar, a menudo en otra pgina del mismo
dibujo.


Documento: Esta forma representa un paso que da como resultado un documento.


Datos: Esta forma indica que hay informacin que est entrando desde afuera en
el proceso o saliendo de l. Esta forma tambin se puede usar para representar los
materiales y a veces se denomina forma de entrada y salida.


Referencia en pgina: Este pequeo crculo indica que el paso siguiente (o
anterior) se encuentra en otra parte del dibujo. Resulta particularmente til para
diagramas de flujo grandes en los que, de lo contrario, se debera usar un conector
largo, que puede ser difcil de seguir.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Referencia a otra pgina: Cuando se coloca esta forma en la pgina de dibujo, se


abre un cuadro de dilogo en el que se puede crear un conjunto de hipervnculos
entre dos pginas de un diagrama de flujo o entre una forma de subproceso y una
pgina de diagrama de flujo independiente que muestra los pasos en dicho
subproceso.

2.3. Tipos de algoritmo: matemtico, lgicos, grficos y cotidianos

Algoritmo matemtico: La obtencin de algoritmos, es un requerimiento bsico en la


enseanza de la Matemtica, conseguirlo exige un accionar prctico que establezca la
interconexin entre contenidos, clculos y operaciones de menor complejidad, dndole la
posibilidad al docente de utilizarlos en la estructuracin de los pasos que lo conforman.

Algoritmo lgico: Es un trmino muy comn utilizado en programacin, se refiere a que la


solucin se realiza usando el mtodo deductivo o lgico, y tiene como fin que el desarrollador
mejore su capacidad de resolver diversos planteamientos usando el razonamiento, y este
razonamiento debe tener sentido lgico y muchas ocasiones matemtico, por lo que tambin es
comn escuchar o ver trminos del tipo: lgico-matemtico

Algoritmo grfico: El diagrama de flujo es la representacin grfica del algoritmo o proceso.


Se utiliza en disciplinas como la programacin, la economa, los procesos industriales y la
psicologa cognitiva. Estos diagramas utilizan smbolos con significados bien definidos que
representan los pasos del algoritmo, y representan el flujo de ejecucin mediante flechas que
conectan los puntos de inicio y de fin de proceso.
En ciencias de la computacin, y anlisis numrico el pseudocdigo (o falso lenguaje) es una
descripcin de un algoritmo de programacin informtico de alto nivel compacto e informal
que utiliza las convenciones estructurales de un lenguaje de programacin verdadero, pero que
est diseado para la lectura humana en lugar de la lectura en mquina, y con independencia
de cualquier otro lenguaje de programacin. Normalmente, el pseudocdigo omite detalles que
no son esenciales para la comprensin humana del algoritmo, tales como declaraciones de
variables, cdigo especfico del sistema y algunas subrutinas.

Algoritmo cotidiano: es el que se da en la vida comn de las personas, no se aplica en sistemas


informticos ni en nada ajeno al da a da. Muchas de las decisiones que se toman desde que
uno se despierta por la maana pertenecen a este grupo.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

2.5. Algoritmos con estructuras secuenciales

Estructura Secuencial:
Es aqulla en la que una accin (instruccin) sigue a otra en secuencia. Las tareas se suceden
de tal modo que la salida de una es la entrada de la siguiente y as sucesivamente hasta el fin
del proceso. La estructura secuencial tiene una entrada y una salida. Su representacin grfica
es la siguiente:

2.6. Algoritmos con estructuras condicionales o alternativas y


estructuras repetitivas.

Algoritmo con estructuras condicionales o alternativas: Las estructuras condicionales se


utilizan para lograr que un algoritmo analice los datos y tome ciertas decisiones., con las
estructuras condicionales se regula el comportamiento de un algoritmo, para que interacte con
los datos ingresados por el usuario, o con datos que ha obtenido de procesos internos.

Algoritmo con estructuras repetitivas: Las estructuras repetitivas se utilizan cuando se quiere
que un conjunto de instrucciones se ejecuten un cierto nmero finito de veces, por ejemplo,
escribir algo en pantalla cierta cantidad de veces, mover un objeto de un punto a otro cierta
cantidad de pasos, o hacer una operacin matemtica cierta cantidad de veces. Se les llama
bucle o ciclo a todo proceso que se repite cierto nmero de veces dentro de un pseudocdigo o
un programa y las estructuras repetitivas nos permiten hacerlo de forma sencilla.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

UNIDAD 3: PROGRAMACIN ESTRUCTURADA


-Introduccin al lenguaje en C: EL lenguaje C es el resultado de un proceso de desarrollo
que inici con un lenguaje denominado BCPL. Este influenci a otro llamado B (inventado por
Ken Thompson). En los aos 70; ste lenguaje llev a la aparicin del C.
Con la popularidad de las microcomputadoras muchas compaas comenzaron a implementar
su propio C por lo cual surgieron discrepancias entre s.
Por esta razn ANSI (American National Standars Institute, por sus siglas en ingls), estableci
un comit en 1983 para crear una definicin no ambigua del lenguaje C e independiente de la
mquina que pudiera utilizarse en todos los tipos de C.
Algunos de las C existentes son:
-Quick C
-C++
-Turbo C
-Turbo C ++
-Borland C
-Borland C++
-Microsoft C
-etc.
Este manual se basa en el C estndar el cual puede utilizarse en todos los tipos de C.
C es un lenguaje de programacin de nivel medio ya que combina los elementos del lenguaje
de alto nivel con la funcionalidad del ensamblador.
Su caracterstica principal es ser portable, es decir, es posible adaptar los programas escritos
para un tipo de computadora en otra.
Otra de sus caractersticas principales es el ser estructurado, es decir, el programa se divide en
mdulos (funciones) independientes entre s.
El lenguaje C inicialmente fue creado para la programacin de
-Sistemas operativos
-Intrpretes

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

-Editores
-Ensambladores
-Compiladores
-Administradores de bases de datos.
Actualmente, debido a sus caractersticas, puede ser utilizado para todo tipo de programas.

-Importancia del lenguaje en C: la importancia del lenguaje C++ es que es uno de los
lenguajes ms potentes y dispone de una mejor forma de realizar tareas. Esto puede ser til
para los programadores que se acostumbraron a C, ya que les permite ir entrando y
familiarizndose de a pocos con el C++, combinando las instrucciones y cdigos de los dos
lenguajes, utilizando obviamente el compilador de C++.

-Estructura de un programa en C: Aunque cada uno de los programas son distintos, todos
tienen caractersticas comunes. Los elementos de un programa en C son los siguientes:
Comentarios
Inclusin de archivos
main()
{
variables locales
flujo de sentencias
}
Definicin de funciones creadas por el programador utilizadas en main()
Veamos en que consiste cada uno:
Comentarios: Se identifican porque van entre diagonales y asterisco. Nos sirve para escribir
informacin que nos referencie al programa pero que no forme parte de l. Por ejemplo
especificar que hace el programa, quien lo elabor, en qu fecha, que versin es, etc.
Inclusin de archivos: Consiste en mandar llamar a la o las bibliotecas donde se encuentran
definidas las funciones de C (instrucciones) que estamos utilizando en el programa.
En realidad, la inclusin de archivos no forma parte de la estructura propia de un programa
sino que pertenece al desarrollo integrado de C. Se incluye aqu para que el alumno no olvide
que debe mandar llamar a los archivos donde se encuentran definidas las funciones estndar
que va a utilizar.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

main(): En C, todo est constituido a base de funciones. El programa principal no es la


excepcin. main() indica el comienzo de la funcin principal del programa la cual se delimita
con llaves.
Variables locales: Antes de realizar alguna operacin en el programa, se deben declarar la(s)
variable(s) que se utilizarn en el programa.
Flujo de sentencias: Es la declaracin de todas las instrucciones que conforman el programa.
Definicin de funciones creadas por el programador utilizadas en main(): Finalmente, se
procede a definir el contenido de las funciones utilizadas dentro de main(). Estas contienen los
mismos elementos que la funcin principal.
Para ejecutarlo, realice los siguientes pasos:
* Oprima la tecla F10 y seleccione la opcin File. Posicinese en Open y pulse enter.
* Escriba el nombre del archivo donde va a guardar su programa, que no exceda de ocho letras.
Automticamente se le agregar la terminacin .c .Digite<ENTER>.
*Transcriba el programa.

LETRAS

VARIABLES

CARACTER
DE NUMEROS
SURAYADO

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

ENTERAS

CONSTANTES

REALES CARACTER

-Tipos de operadores: Uno de los puntos fuertes de C es su gran variedad de operadores y la


flexibilidad de estos. Esta caracterstica de C permite la construccin de expresiones muy
complejas de forma sencilla.
Existen cinco grandes grupos de operadores: aritmticos, relacionales, lgicos, operaciones a
nivel de bits, y asignaciones.
Por nmero de operando:
Un solo operando.
Dos operando.
Tres operando.

-Sentencias de entrada y salida de datos: Cuando nos referimos a entrada/salida estndar


(E/S estndar) queremos decir que los datos o bien se estn leyendo del teclado, bien se estn
escribiendo en el monitor de video. Como se utilizan muy frecuentemente se consideran como
los dispositivos de E/S por default y no necesitan ser nombrados en las instrucciones de E/S.
En el lenguaje c++ tenemos varias alternativas para ingresar y/o mostrar datos, dependiendo
de la librera que vamos a utilizar para desarrollar el programa, entre estas estn: iostream.h y
stdio.h.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

putchar
gotoxy
y getchar

puts y
scanf
gets

printf clrscr

-Lectura y escritura de datos: Para poder leer y escribir datos en el lenguaje de programacin
C existen una serie de funciones agrupadas en un conjunto de libreras de cdigo objeto, que
constituyen la llamada biblioteca estndar del lenguaje. En el caso concreto de las funciones
de entrada y salida (lectura y escritura), su archivo de cabecera es stdio.h.
Existen varias funciones que realizan la entrada y salida de datos en el lenguaje de
programacin C, pero nos vamos a centrar solamente en dos de ellas: printf() y scanf().
Funcion printf()
La funcin printf() sirve para escribir datos en la pantalla con un formato determinado.
El prototipo de esta funcin es la siguiente:
int printf(const char *formato, arg1, arg2, , argn)
Donde:
Formato: hace referencia a una cadena de caracteres que contiene informacin sobre el
formato de salida.
Arg1, arg2, , argn: argumentos que representan los datos de salida
La cadena de control puede constar de hasta tres tipos de informacin:
Texto: Que ser mostrado por pantalla tal cual este escrito.
Secuencias de escape: secuencias reservadas propias del lenguaje. Van precedidas por '\' y las
ms importantes son '\n' que introduce un salto de lnea, y '\t' que introduce un tabulador.
Especificadores de formato: son ciertos caracteres precedidos del carcter tanto por ciento '%'.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

-Decisiones y transferencias de control. Sentencia IF-ELSE: Es usada para ejecutar una


instruccin o bloque de instrucciones solo si una condicin es cumplida. Su forma es:
if
(condicin) { extracto; }
else if
(condicin) { extracto; }
else{ extracto; }
Donde la condicin es la expresin que ser evaluada. Si esta condicin es true (verdadera), el
extracto es ejecutado. Si esta es falsa (false), el extracto es ignorado (no ejecutado) y el
programa continua en la siguiente instruccin despus de la estructura condicional.
Ejemplo:
Se quiere escribir un programa que:
1) Pida por teclado la nota (dato real) de una asignatura.
2) Muestre por pantalla:
"APROBADO", en el caso de que la nota sea mayor o igual que 5.
"SUSPENDIDO", en el caso de que la nota sea menor que 5.
De modo que, por pantalla se ver, por ejemplo:
Introduzca nota (real): 7.5
APROBADO
Otra posibilidad es:
Introduzca nota (real): 3.5
SUSPENDIDO
Cuando un bloque de instrucciones slo contiene una instruccin, los caracteres abrir llave ({)
y cerrar llave (}) son opcionales. Por tanto, en lenguaje C, para resolver el problema del ejemplo
se puede escribir:
#include <stdio.h>
int main()
{
float nota;
printf( "\n Introduzca nota (real): " );
scanf( "%f", &nota );

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

if ( nota >= 5 )
printf( "\n APROBADO" );
else
printf( "\n SUSPENDIDO" );
return 0;
}
Cuando en el cdigo fuente de un programa existe una condicin de la cual depende que a
continuacin se ejecuten unas instrucciones u otras, se dice que existe una bifurcacin.

-Ciclos repetitivos: Como ya lo he mencionado en artculos anteriores, una estructura


repetitiva, estructura iterativa, ciclo repetitivo o bucle en programacin, se refiere a un tipo de
estructura de control la cual permite la repeticin de la ejecucin de una o varias sentencias
internas, de tal modo que no sea necesario escribir varias veces una misma instruccin o un
mismo procedimiento que se ejecutara en mltiples ocasiones, a diferencia de las estructuras
de control condicionales o de seleccin, donde el flujo de ejecucin del programa simplemente
se bifurca o desva en un sentido u otro segn el resultado que se obtenga de la evaluacin de
una interrogante o condicin, pero en ese caso las sentencias internas solo se ejecutan una vez.
-Sentencias WHILE: En este ciclo el cuerpo de instrucciones se ejecuta mientras una
condicin permanezca como verdadera en el momento en que la condicin se convierte en falsa
el ciclo termina.
Su formato general es:
cargar o inicializar variable de condicin;
while(condicin)
{
grupo cierto de instrucciones;
instruccin(es) para salir del ciclo;
};
Ejemplo:

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

-Sentencias DO-WHILE: Los ciclos do-while son una estructura de control cclica, los cuales
nos permiten ejecutar una o varias lneas de cdigo de forma repetitiva sin necesidad de tener
un valor inicial e incluso a veces sin siquiera conocer cundo se va a dar el valor final, hasta
aqu son similares a los ciclos while, sin embargo el ciclo do-while nos permite aadir cierta
ventaja adicional y esta consiste que nos da la posibilidad de ejecutar primero el bloque de
instrucciones antes de evaluar la condicin necesaria, de este modo los ciclos do-while, son
ms efectivos para algunas situaciones especficas. En resumen un ciclo do-while, es una
estructura de control cclica que permite ejecutar de manera repetitiva un bloque de
instrucciones sin evaluar de forma inmediata una condicin especfica, sino evalundola justo
despus de ejecutar por primera vez el bloque de instrucciones.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

-Sentencias FOR-NEXT: Los ciclos For/Next le permiten evaluar una secuencia de


enunciados varias veces. Esto es diferente a los enunciados If y Select, donde el programa pasa
por cada enunciado al menos una vez durante la evaluacin de la frmula.
Los ciclos For/Next funcionan mejor cuando conoce de antemano la cantidad de veces que es
necesario evaluar un enunciado.
Sintaxis del ciclo For
Suponga que desea invertir la cadena {Cliente. Nombre del cliente}. Por ejemplo, la compaa
"City Cyclists" pasa a ser "stsilcyC ytiC".

formula = ""
Dim strLen
strLen = Len ({Customer.Customer Name})
Dim i
For i = 1 To strLen
Dim charPos
charPos = strLen - i + 1
formula = formula & _
Mid({Customer.Customer Name}, charPos, 1)
Next i

-Arrays multidimensionales: Los arrays multidimensionales son un estructuras de datos que


almacenan los valores en ms de una dimensin. Los arrays que hemos visto hasta ahora
almacenan valores en una dimensin, por eso para acceder a las posiciones utilizamos tan solo
un ndice. Los arrays de 2 dimensiones guardan sus valores, por decirlo de alguna manera, en
filas y columnas y por ello necesitaremos dos ndices para acceder a cada una de sus posiciones.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Dicho de otro modo, un array multidimensional es como un contenedor que guardara ms


valores para cada posicin, es decir, como si los elementos del array fueran a su vez otros
arrays.

-Declaracin de arreglos unidimensionales: La sintaxis a emplear es la siguiente:


tipoDeElementosDelArray nombreDelArray [numeroElementos];
Ejemplo: int vectorEnteros [4];
Esto declara que se crea un vector de enteros que contendr 4 valores de tipo int. Fjate que el
nmero en la declaracin es 4, pero el elemento vectorEnteros[4] no existir. Por qu? Porque
en C, al igual que en otros lenguajes de programacin, la numeracin de elementos empieza en
cero y no en uno. De esta manera al indicar un 4, los ndices de elementos en el array sern 0,
1, 2, 3. Es decir, si indicamos 4 el array tendr 4 elementos (ndices 0 a 3). Si indicamos 10 el
array tendr 10 elementos (ndices 0 a 9) y as sucesivamente para cualquier nmero declarado.
Ejemplos de declaracin de arrays seran:
int vectorVez [9]; char vectorAmigo [1000]; double decimalNum [24];
int vectorInt [23]]; int vectorLong[8]; int personasPorHabitacion[300];
-Declaracin de arreglos bidimensionales: Es un arreglo de dos dimensiones. Son estructuras
de datos que agrupan muchos datos del mismo tipo, en donde cada elemento se puede trabajar
individualmente y se puede referenciar con un mismo nombre. Se usan para representar datos
que pueden verse como una tabla con filas y columnas.

Declaracin:
Tipo_dato nombre_matriz [ndice fila] [ndice columna]
Uso:
Nombre_matriz [subndice1] [subndice2]
int matriz [2][2]
char mapa [100][100]
int certamen [60][4]

Declara una matriz de 3 filas por 4 columnas:


int matriz [3][4];

Declaracin e iniciacin:
int matriz [2][2]={1,2,3,4}
1 2

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

Para referenciar un elemento de la matriz, debe darse un nombre de la matriz y el ndice de la


fila y de la columna que el elemento ocupa en dicha matriz. Es importante que los ndices de
las matrices tanto de las filas como de las columnas empiezan en 0 y terminan en tamao fila-
1 y tamao columna-1 respectivamente.
A las matrices se le asignan automticamente valores iniciales predeterminados a cada uno de
sus elementos, de acuerdo a los siguientes criterios:
Si el tipo del arreglo es numrico, a sus elementos se les asigna el valor cero.
Si el tipo del arreglo es char, a sus elementos se les asigna el valor \u0000.
Si el tipo del arreglo es bool, a sus elementos se les asigna el valor false.
Si el tipo del arreglo es una clase, a sus elementos se les asigna el valor null.
Ejemplo:
#include <stdio.h>
int main()
{
int fila, columna;
int matriz[2][2];
for(fila=0; fila<2; fila++)
for(columna=0; columna<2; columna++)
printf(%d, matriz[fila][columna]);
return 0;
}
-Declaracin de arreglos multidimensionales: Es una estructura de datos esttica y de un
mismo tipo de datos, y de longitud fija que almacena datos de forma matricial. De igual forma
que los arreglos unidimensionales, el almacenamiento de los datos en la memoria se realiza de
forma secuencial y son accedidos mediante ndices. Los arreglos multidimensionales son
tambin conocidos como matrices. Por lo tanto se llama matriz de orden "mn" a un conjunto
rectangular de elementos dispuestos en filas "m" y en columnas "n", siendo m y n nmeros
naturales. Las matrices se denotan con letras maysculas: A, B, C, ... y los elementos de las
mismas con letras minsculas y subndices que indican el lugar ocupado: a, b, c, ... Un elemento
genrico que ocupe la fila i y la columna j se escribe i,j. Si el elemento genrico aparece entre
parntesis tambin representa a toda la matriz: A (i,j)
La sintaxis para declarar un arreglo multidimensional es la siguiente:
<tipo> [ , ...] < identificador > ;
Donde:
tipo indica el tipo correspondiente a los elementos del arreglo ,

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ


UNIVERSIDAD DE LAS FUERZAS ARMADAS
UNIDAD ACADEMICA ESPECIAL SALINAS

identificador es el nombre del arreglo, y


el par de corchetes, la coma y las diresis, [ , ...], representan las dimensiones del arreglo. Los
corchetes encierran todas las comas necesarias para separar las dimensiones del arreglo.
Ejemplos:
double [ , ] bidim; // Dos dimensiones.
int [ , , ] tridim ; // Tres dimensiones.
char [ , , , ] enciclopedia; // Cuatro dimensiones.
Observe que, en la declaracin, el espacio entre los corchetes est vaco. Esto se debe a que,
durante dicha operacin, no se reserva espacio en la memoria.

GM 1/B LUIS ADRIAN MONTENEGRO VLEZ

You might also like