lunes, 1 de diciembre de 2008

PALNTEAMIENTO DEL PROYECTO.

INTRODUCCIÓN A LA PROGRAMACIÓN
PROYECTO DE PROGRAMACIÓN BÁSICA



INTRODUCCIÓN A LA PROGRAMACIÓN
JOYCE LIZETH BOHORQUEZ RENGIFO
COD. 2007270285

PRESENTADO A:
EL LICENCIADO. JORGE MARIÑO
UNIVERSIDAD SURCOLOMBIANA
INGENIERÍA DE PETRÓLEOS
NEIVA
2008

1. INTRODUCCIÓN

Este proyecto cumple con el propósito de aplicar los conceptos adquiridos durante todo el curso de introducción básica a la programación, de la misma manera resaltar la importancia de seguir con detalle los pasos para la solución de problemas, como lo son; el ANALISIS lógico de la solución del problema para determinar los datos de entrada (las variables o datos necesarios para obtener una salida que corresponda a la salida esperada) y los datos constantes, datos de salida y proceso que se debe llevar acabo (instrucciones a realizar; operaciones matemáticas, contadores, acumuladores y estructuras para el control; (terminal, Asignación, condicional, proceso, dirección y conexión)), lo anterior con respecto al aparte de DISEÑO mediante diagrama de flujo con el programa (DFD); con el propósito de dar al programador una buena percepción visual, ya que como dicen; “una imagen dice mas que mil palabras”, luego La CODIFICACIÓN que es la operación de escribir la solución del problema (de acuerdo a la lógica del diagrama de flujo o pseudocódigo), en una serie de instrucciones detalladas, en un código reconocible por la computadora, la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel. A continuación la PRUEBA Y DEPURACIÓN, que consiste en la documentación interna y externa y el manual del usuario. Para finalizar el MANTENIMIENTO pero al parecer esta parte no será de nuestra incumbencia.













2. PLANTEAMIENTO DEL PROBLEMA


En una empresa dedicada a la explotación de hidrocarburos desean conocer la distancia recorrida por un taladro de perforación, sin necesidad de visualizar por medio de cámaras subterráneas, de esta manera minimizar costos de extracción, (aclaro; este proceso no posee datos reales sino hipotéticos, además para la solución al problema planteado no se tiene la certeza de su efectividad) también determinar el rendimiento de el taladro en toda la zona.
Teniendo en cuenta que la velocidad de la broca varía dependiendo la capa a perforar; ya que a mayor dureza mayor oposición al procedimiento. Por lo tanto la velocidad disminuirá y el rendimiento de la maquina será menor, usaremos unos estándares de velocidades dependiendo la dureza del material, que a su vez tendrán determinadas velocidades la actividad se llevara a cabo para un numero especifico de capas. La reacción del mismo taladro nos indicara el momento del cambio de capa.


3. ANÁLISIS DE DATOS


ENTRADAS REQUERIDAS;
· Primero determinaremos los valores constantes:
a. Si la dureza de la capa está entre 0-5, la velocidad será de 2.5m/min., si la dureza es de 6-11 la velocidad será de 1.0m/min. y si la dureza es mayor que 11 el taladro tiene un mínimo rendimiento de 0.25m/min.
b. Para determinar el rendimiento total del taladro usaremos un factor convenido de la siguiente manera; si alcanza la meta de 400m/min., o más obtendrá un 100% de rendimiento si no se le calculará. Si obtiene menos de un 50% no alcanza la meta deseada.
· Para dar solución al problema anteriormente planteado debemos determinar las entradas necesarias, que son las siguientes VARIABLES:
Tiempo tardado por cada capa, este valor se obtendrá con respecto a la señal que el taladro mostrará con la variación de la dureza.
El proceso se llevara a cabo para x capas conocidas, pues con anterioridad por medio de exploración con ultrasonido se estipulo esta cantidad.
Dureza del material perforado.

SALIDAS ESPERADAS;
· En el caso de este ejercicio la salida esperada será la distancia total recorrida por el taladro de perforación en metros.
· Además se desea obtener la eficiencia porcentual del rendimiento del taladro en la perforación.
PROCESO A SEGUIR;


El proceso a seguir será;
· Primero se ingresa una lectura para que nos permita introducir una de las variables más importantes como lo es el NÚMERO DE CAPAS que deseamos analizar, del mismo modo plantear inicializando en cero el contador y acumulador que mas adelante usaremos, con un sentido secuencial→→→→.

· en seguida involucramos un ciclo PARA que repetirá el proceso las veces que sea necesario, (número de capas ingresado con anterioridad).


· Posteriormente encontramos dos elementos de lectura con sus respectivos mensajes de salida los cuales solicitan el ingreso de; el factor de dureza de la capa escogida y el tiempo en minutos usado perforando una capa.

· Seguidamente dos condicionales que determinará, según la dureza de la capa el factor velocidad por el que se debe operar.


· Como el proceso que llevamos acabo es repeticional, usamos un acumulador y su respectivo contador (que con anticipación inicializamos en cero) para establecer las distancias perforadas en cada caso de dureza. →→→→.

· Cerramos el ciclo PARA y sumamos todos los valores de las distancias acumuladas para instaurar la distancia total taladrada.


· A la postre fijamos la eficiencia porcentual del taladro, con base un valor constante. Y el valor de la distancia total taladrada. luego un condicional dependiendo la eficiencia obtenida con un mensaje de salida nos dirá si la eficiencia del taladro fue mínima, normal o máxima.









4. ALGORITMO EN LENGUAJE NATURAL Y FORMATO DE SALIDA DE INFORMACIÓN



El siguiente programa pretende generar la eficiencia del trabajo de un taladro de perforación dependiendo del valor que el mismo arroje como distancia total taladrada; aunque el diseño de diagrama de flujo en DFD es útil visualmente, este no es claro para el usuario, por el código de simbolización que se usa, por lo tanto es preciso exponer cada uno de los pasos a seguir en un lenguaje común y natural con términos conocidos;

§ Para empezar identificamos el número de capas que deseamos analizar con la letra C.

§ Inicializamos el contador y acumulador que luego emplearemos para determinar la distancia total perforada; CONTADOR DIST1 (distancia operada con un factor de velocidad de 2.5, pues la dureza de la capa es inferior a 5), DIST2 (distancia operada con un factor de velocidad de 1, pues la dureza de la capa es superior a 5 pero inferior a 12), DIST3 (distancia operada con un factor de velocidad de 0.25, pues la dureza de la capa es superior a 11). ACUMULADOR; DISTT1 de la distancia DIST1, DISTT2 de la distancia DIST2, DISTT3 de la distancia DIST3.


§ Ahora incluimos un ciclo PARA llamado NC numero de capas que empieza el ciclo desde uno y lo termina en C (número de capas a analizar) con un intervalo de 1 entre proceso y proceso.

§ Seguido, Dos lecturas de entrada DC dureza de la capa y t tiempo empleado en perforar la capa a analizar (variables).


§ Un condicional DC>=5 que selecciona los valore de DC que sean inferiores a 5, para operar por un factor de velocidad, DC<=11 que selecciona los valore de DC que sean superiores a 5 pero inferiores a 12, para operar por un factor de velocidad.




§ Llamamos P.Q.S a las distancias totales acumuladas para cada caso, al instante se ubica el contador de las distancias normales para cada factor (DIST1, DIST2, DIST3), nombramos así mismo el producto entre el factor (velocidad de taladrado) determinado para cada DC y el tiempo t, así hallamos la distancia.

§ Por ultimo para esta sección secuencial, DISTT1, DISTT2, DISTT3 respectivos acumulados, igual a la variable acumulada (P, Q, S) mas la distancias parcial: (DIST1, DIST2, DIST3).

§ El ciclo PARA llega a su final y calculamos la distancia total perforada DISTTP; esto lo hacemos sumando todos los acumulados totales, (DISTT1+DISTT2+DISTT3).


§ Calculamos la eficiencia del taladro EFTA con un factor previsto. Dividiendo DISTTP la distancia total perforada, entre 400 y multiplicando luego el resultado entre 100, para obtener un porcentaje.

§ Con un condicional EFTA>=50 vemos si la eficiencia fue mayor o igual al 50% para que un mensaje de salida nos indique que la eficiencia fue baja y no se alcanzo la meta en el lado izquierdo del rombo, por el contrario en el lado derecho se continua con EFTA=50 con este condicional observamos si la eficiencia fue mayor o igual al 50% para que un mensaje de salida nos diga que se alcanzo y supero la meta propuesta, que la eficiencia fue máxima o normal.

















DOCUMENTACIÓN DE UN PROGRAMA DE COMPUTACIÓN


¿Qué HACE el programa, para qué sirve?

Como este último proyecto de programación básica debe tener relación con el programa a el cual pertenecemos mi proyecto se enfoco en la solución de un problema de el área de perforación, este se encarga de calcular con tan solo la entrada de tres diferentes datos la distancia total perforada por un taladro y la eficiencia porcentual de este , con el propósito de disminuir costos (aclaro, el programa es solo una idea no uso datos reales, por mi escaso conocimiento del tema, ni doy fe en la efectividad del proceso usado).
Mi programa se formó más por el sentido común que por los conocimientos técnicos del tema, como requiero calcular la distancia perforada por un taladro y se que la capa terrestre esta conformada por diferentes capas de diferentes características como la DUREZA; entonces propongo un factor de velocidad alcanzado por el taladro a partir de diferentes intervalos de dureza. Para conseguir la eficiencia porcentual, uso un dato ya calculado como lo es la distancia total que perforo el taladro, de esta manera y mediante dos diferentes condiciones que me arrojaran tres mensajes de salida que dirán si el rendimiento fue bajo, normal o máximo.


¿Qué ES el programa?

El programa esta escrito en lenguaje java script de programación; Java Script que es un lenguaje de programación creado por Netscape con el Objetivo de Integrarse en HTML y facilitar la creación de páginas interactivas. El código Java Script no necesita ser compilado, es el propio navegador el que se encarga de interpretarlo. Características; No es tipado, Basado en objetos, Java Script NO ES Java. En la actualidad, pocos navegadores no disponen de soporte de Java Script. La información relevante de mi programa se puede conseguir en textos relacionados con métodos de cuantificar y medir zonas perforadas, o textos de perforación en general. Este proyecto pretende ahorrar costos a los perforadores petroleros del futuro.


¿Cómo funciona el programa?

Con anterioridad se explico con lenguaje natural la forma de operar el programa en cuestión, su finalidad y los conocimientos necesarios para su manejo. Por lo sencillo del programa creo no es tan necesario el profundizar en esta parte




CONCLUSIONES Y AUTOEVALUACIÓN


El proceso fue desarrollado paso a paso de un modo claro y a conciencia, practicando la lógica y todos los conceptos aprendidos durante todo el curso de programación básica para la solución de problemas.


El curso cumplió la finalidad de demostrar la importancia del mismo para la solución práctica e inteligente de cualquier proceso de la cotidianidad, empleando adecuadamente los elementos que nos brinda la programación.

La importancia del planteamiento previo a el uso de las herramientas de los programas que podemos emplear, pues lo mas importante es la lógica que nos indica que hacer y como hacerlo. “Cualquiera puede codificar, pocos analizar con lógica”.

Autoevaluación; Durante todo el curso siento me esforcé, fui activa y participativa, cumplida con los talleres y ejercicios propuestos en clase, esto gracias lo practico del curso como tal.

DISEÑO EN DFD DE MI PROYECTO FINAL.




viernes, 31 de octubre de 2008

Ejercicio 2

Modificar el primer script del capítulo anterior para que:

1. El mensaje que se muestra al usuario se almacene en una variable llamada mensaje y el funcionamiento del script sea el mismo.

2. El mensaje mostrado sea el de la siguiente imagen:

Ejercicio 3

Crear un array llamado meses y que almacene el nombre de los doce meses del año. Mostrar por pantalla los doce nombres utilizando la función alert().

Ejercicio 4

A partir del siguiente array que se proporciona: var valores = [true, 5, false, "hola", "adios", 2];

1. Determinar cual de los dos elementos de texto es mayor

2. Utilizando exclusivamente los dos valores booleanos del array, determinar los operadores necesarios para obtener un resultado true y otro resultado false

3. Determinar el resultado de las cinco operaciones matemáticas realizadas con los dos elementos numéricos

Ejercicio 5

Completar las condiciones de los if del siguiente script para que los mensajes de los alert() se muestren siempre de forma correcta

Ejercicio 6

El cálculo de la letra del Documento Nacional de Identidad (DNI) es un proceso matemático sencillo que se basa en obtener el resto de la división entera del número de DNI y el número 23. A partir del resto de la división, se obtiene la letra seleccionándola dentro de un array de letras.

El array de letras es:

var letras = ['T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E', 'T'];

Por tanto si el resto de la división es 0, la letra del DNI es la T y si el resto es 3 la letra es la A. Con estos datos, elaborar un pequeño script que:

1. Almacene en una variable el número de DNI indicado por el usuario y en otra variable la letra del DNI que se ha indicado. (Pista: si se quiere pedir directamente al usuario que indique su número y su letra, se puede utilizar la función prompt())

2. En primer lugar (y en una sola instrucción) se debe comprobar si el número es menor que 0 o mayor que 99999999. Si ese es el caso, se muestra un mensaje al usuario indicando que el número proporcionado no es válido y el programa no muestra más mensajes.

3. Si el número es válido, se calcula la letra que le corresponde según el método explicado anteriormente.

4. Una vez calculada la letra, se debe comparar con la letra indicada por el usuario. Si no coinciden, se muestra un mensaje al usuario diciéndole que la letra que ha indicado no es correcta. En otro caso, se muestra un mensaje indicando que el número y la letra de DNI son correctos.

Ejercicio 7

El factorial de un número entero n es una operación matemática que consiste en multiplicar todos los factores n x (n-1) x (n-2) x ... x 1. Así, el factorial de 5 (escrito como 5!) es igual a: 5! = 5 x 4 x 3 x 2 x 1 = 120

Utilizando la estructura for, crear un script que calcule el factorial de un número entero.

JOYCE LIZETH BOHORQUEZ RENGIFO

COD. 2007270285


PRESENTADO A:

LICENCIADO. JORGE MARIÑO


UNIVERSIDAD SURCOLOMBIANA

INGENIERIA DE PETROLEOS

NEIVA

2008

EJERCICIOS DE (PARA)

1. Se desea conocer la relación de barriles de petróleo y agua producidos en determinado tiempo en un poso de una producción normal.

2. una petrolera desea conocer la cantidad de diferentes arboles por especie nativa necesarios para reforestar una zona, como compensación a la comunidad por la tala que se debió efectuar para la explotación del pozo descubierto.

3. se analizan muestras de crudo, para determinar su calidad dependiendo del valor de su densidad. Del mismo modo se debe conocer la relación de barriles de buena, mala y mediana calidad.

4. un companyman, estudia las hojas de vida de diferentes ingenieros amateur, para de esta manera realizar una contratación, que dependerá del promedio de notas que hallan realizado en sus carreras.

EXPLICACIÓN

1. Creación de algoritmo del primer ejercicio.

OBJETIVO

El propósito de este algoritmo es conocer la relación de barriles de agua y crudo producidos en pozo en 4 días de explotación.

DESCRIPCION DEL PROBLEMA

Para calcular la cantidad de barriles producidos en pozo durante 4 días, se ingresan los datos necesarios como la producción total de barriles, usando acumuladores y un “para” que efectuar la repetición necesaria.

IDENTIFICACION DE DATOS

Los datos de entrada a conocer serán; la producción total de crudo y agua en barriles, y los días de análisis. Y los datos de salida serán el porcentaje de barriles de crudo y agua producidos en los días de análisis.

PROCESO

El proceso a seguir será; primero se debe ingresar el número total de barriles producidos, mediante contadores se cuantifica el número total de barriles tanto de crudo como de agua, usando acumuladores, previo usamos unas estructuras de control que nos permiten ver el estado de los barriles. Por último sacamos la relación porcentual de barriles tanto de crudo como de agua.

ALGORITMO

Ver figura. 1

2. Creación de algoritmo del segundo ejercicio.

OBJETIVO

El motivo de este algoritmo es la necesidad conocer la cantidad de árboles necesarios para reforestar una zona.

DESCRIPCION DEL PROBLEMA

Para calcular la cantidad de árboles de diferente especie de ocupación por árbol, se hace preciso una estructura para que nos permita repetir esta operación cuantas veces sea necesario.

IDENTIFICACION DE DATOS

· Los datos de entrada a conocer serán; área a reforestar y extensión ocupada por árbol sembrado.

· El dato de salida esperado es; el numero de arboles sembrados.

PROCESO

El proceso a seguir será ingresar la extensión a reforestar y el área que ocupa un árbol, de esta manera calculamos el numero de árboles necesarios e incluimos una estructura “para” que nos repetirá el proceso las veces que sea necesario.

ALGORITMO

Ver figura. 2

3. Creación de algoritmo del tercer ejercicio.

OBJETIVO

Una empresa de explotación petrolera desea conocer la cantidad de barriles de buena y mala calidad producido por un pozo.

DESCRIPCION DEL PROBLEMA

Para calcular la cantidad de barriles de buena y mala calidad producidos en pozo, se ingresan los datos necesarios como la producción diaria, usando acumuladores y un “para” que efectuar la repetición necesaria.

IDENTIFICACION DE DATOS

Los datos de entrada a conocer serán; número total de barriles producidos, y la densidad de cada barril para determinar de esta manera su calidad.

Datos de salida: el dato de salida será la relación en porcentaje de la cantidad de barriles de buena mala y mediana calidad.

PROCESO

El proceso a seguir será: primero se debe ingresar el número total de los barriles, creo los contadores, adiciono una estructura de control “para” y de esta manera determinar las repeticiones necesarias del proceso, luego un condicional que me ayude a determinar la calidad de los barriles y así poder efectuar las operaciones necesarias para poder obtener la relación porcentual de la calidad de los barriles de crudo.

ALGORITMO

Ver figura. 3

4. Creación de algoritmo del cuarto ejercicio.

OBJETIVO

El propósito de este algoritmo es conocer la cantidad de barriles producidos en pozo en 4 días de explotación.

DESCRIPCION DEL PROBLEMA

Para calcular la cantidad de barriles producidos en pozo durante 4 días, se ingresan los datos necesarios como la producción diaria, usando acumuladores y un “para” que efectuar la repetición necesaria.

IDENTIFICACION DE DATOS

Los datos de entrada a conocer serán; cantidad de crudo de producción diaria, y los días de análisis.

PROCESO

El proceso a seguir será

ALGORITMO

Ver figura. 4

TRABAJO FINAL

 

NUMERO DE CAPAS TOTAL
DISTANCIA PARCIAL DE LA ULTIMA CAPA
DISTANCIA ACUMULADA PERFORADA
DISTANCIA TOTAL PERFORADA
EFICIENCIA PORCENTUAL DEL TALADRO