lunes, 20 de mayo de 2013

Funciones predefinidas

En el lenguaje Java se pueden calcular las funciones matemáticas típicas que vienen en una calculadora. Por ejemplo para calcular el lado de un cuadrado a partir de su área se puede usar la función que calcula la raíz cuadrada:
double lado= sqrt(area);En esta instrucción, sqrt(area) es una llamada a una función. Una llamada a función es una forma de expresión aritmética. Su sintaxis general es:
``función''( ``argumentos'')
En donde ``argumentos'' son una o más expresiones separadas por coma. Una llamada a una función se puede colocar en cualquier parte en donde sea válido colocar una expresión.
Una función puede ser por ejemplo:
(Obs. a los profesores: vean sólo algunas de estas funciones. La idea es mostrar la sintaxis.)
FunciónSignificadoEjemploValor
sqrt(x)raíz cuadradasqrt(4.0)2.0
abs(x)valor absolutoabs(-3.0)3.0
pow(x,y)x elevado a ypow(2.0, 3.0)8.0
exp(x)e a la xexp(1.0)2.71...
log(x)logaritmo naturallog(E)1.0
O puede ser una función trigonométrica:
FunciónSignificadoEjemploValor
sin(x)senosin(PI/2)1.0
cos(x)cosenosin(PI)-1.0
tan(x)tangentetan(PI/4)1.0
asin(x)arco senoasin(1.0)PI/2
acos(x)arco cosenoasin(-1.0)PI
atan(x)arco tangenteatan(1.0)PI/4
O puede ser una función de conversión:
FunciónSignificadoEjemploValor
round(x)redondearound(1.5)2.0
round(1.4)1.0
floor(x)pisofloor(3.9)3.0
floor(-5.2)-6.0
ceil(x)techoceil(3.9)4.0
ceil(-5.2)-5.0
O puede ser una función para calcular el máximo o mínimo:
FunciónSignificadoEjemploValor
max(x)máximomax(3.5, 5.2)5.2
min(x)mínimomin(3.5, 5.2)3.5
Todas las funciones anteriores operan con números reales (double). La siguiente función toma un número real y devuelve un entero:
FunciónSignificadoEjemploValor
trunc(x)conviertetrunc(3.9)3
a enterotrunc(-5.2)-5
Ejercicio: Calcular el máximo de 3 números.
Primer número ? 2.1 Segundo número ? 8.6 Tercer número ? -2.0 El máximo es : 8.6
Solución:
// Leer datos print("Primer número ? "); double a= readDouble(); print("Segundo número ? "); double b= readDouble(); print("Tercer número ? "); double c= readDouble(); // Calcular el máximo print("El máximo es : "); print(max(max(a,b),c);Los argumentos de una llamada a una función pueden ser el resultado de otra llamada a función.
x



Operadores aritmeticos


Estos son los símbolos aritméticos básicos: suma (+), resta (-), multiplicación (*), división (/) y potenciación (^).
Este es un ejemplo de cómo usar los operadores aritméticos en TurtleScript:
$sumar = 1 + 1
$restar = 20 - 5
$multiplicar = 15 * 2
$dividir = 30 / 30
$potencia = 2 ^ 2
Los valores resultantes de estas operaciones aritméticos son asignados a variables. Puedes ver los valores resultantes en el inspector.
Si lo que quieres es realizar un cálculo simple, puedes hacer algo como esto:
escribir 2010-12
Ahora veamos un ejemplo con paréntesis:
escribir ( ( 20 - 5 ) * 2 / 30 ) + 1
Primero se calculan las operaciones que están dentro de los paréntesis. En este ejemplo, primero se calcula 20 - 5; el resultado se multiplica por 2, luego se divide por 30 y, por último, se le suma 1. El resultado final es 2. Los paréntesis pueden también usarse en otros casos.
KTurtle también tiene otras funciones aritméticas en forma de órdenes. Echa un vistazo a las siguientes órdenes, eso sí, teniendo en cuenta que se trata de operaciones avanzadas: redondear, aleatorio, raíz, pi, sen, cos, tan, arcsen, arccos, arctan.

Operadores de relacion

Se utilizan para buscar en campos específicos del documento, previamente definidos. Funcionan como un filtro, ya que seleccionan aquellos documentos que contienen un valor específico en algún campo. Los campos definidos actualmente son: título y URL. Los operadores de relación en este buscador son los siguientes:
Nombre del operadorDescripción
CONTAINSSelecciona los documentos que contienen la palabra especificada en un campo específico del documento.
ENDSSelecciona los documentos que acaban en la cadena de caracteres especificada en un campo específico del documento.
STARTSSelecciona los documentos que contienen palabras que empiezan por la cadena de caracteres especificada en un campo específico del documento.
SUBSTRINGSelecciona los documentos que contienen palabras que contienen la cadena de caracteres especificada en un campo específico del documento.

lunes, 13 de mayo de 2013

Programa informatico


Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.
En informática, se los denomina comúnmente binarios, (propio en sistemas Unix, donde debido a la estructura de este último, los ficheros no necesitan hacer uso de extensiones; posteriormente, los presentaron como ficheros ejecutables, con extensión .exe, en los sistemas operativos de la familia Windows) debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un determinado lenguaje de programación, han sido traducidas al único idioma que la máquina comprende, combinaciones de ceros y unos llamado código máquina. El mismo término, puede referirse tanto a un programa ejecutable, como a su código fuente, el cual es transformado en un binario una vez que es compilado.
Generalmente el código fuente lo escriben profesionales conocidos como programadores. Este código se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo, y que posteriormente puede ser convertido en una imagen ejecutable a través de un programa-compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta instrucción por instrucción.
De acuerdo a sus funciones, los programas informáticos se clasifican en software de sistema y software de aplicación. En los computadores actuales, al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea.

Compilador


Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.
Un compilador es un programa que permite traducir el código fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (típica mente lenguaje de máquina). De esta manera un programador puede diseñar un programa en un lenguaje mucho más cercano a como piensa un ser humano, para luego compilarlo a un programa más manejable por una computadora.

Código fuente


El código fuente de un programa informático (o software) es un conjunto de líneas de texto que son las instrucciones que debe seguir la computadora para ejecutar dicho programa. Por tanto, en el código fuente de un programa está descrito por completo su funcionamiento.
El código fuente de un programa está escrito por un programador en algún lenguaje de programación, pero en este primer estado no es directamente ejecutable por la computadora, sino que debe ser traducido a otro lenguaje (el lenguaje máquina o código objeto) que sí pueda ser ejecutado por el hardware de la computadora. Para esta traducción se usan los llamados compiladores, ensambladores,intérpretes y otros sistemas de traducción.
El término código fuente también se usa para hacer referencia al código fuente de otros elementos del software, como por ejemplo el código fuente de una página web que está escrito en el lenguaje de marcado HTML o en Javascript u otros lenguajes de programación web y que es posteriormente ejecutado por el navegador web para visualizar dicha página cuando es visitada.
El área de la informática que se dedica a la creación de programas y, por tanto a la creación de su código fuente, es la programación.

Diagrama de flujo


El diagrama de flujo o diagrama de actividades es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como programación, economía, procesos industriales y psicología cognitiva.
En Lenguaje Unificado de Modelado (UML), un diagrama de actividades representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema. Un diagrama de actividades muestra el flujo de control general.
En SysML el diagrama de actividades ha sido extendido para indicar flujos entre pasos que mueven elementos físicos (e.g., gasolina) o energía (e.g., presión). Los cambios adicionales permiten al diagrama soportar mejor flujos de comportamiento y datos continuos.
Estos diagramas utilizan símbolos con significados definidos que representan los pasos del algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y de fin de proceso.

miércoles, 8 de mayo de 2013

Lógica de programacion

Lógica de Programación. Base sobre la cual se sustenta la programación en si.
Todo persona que pretenda construir un programa que de solución a determinada problemática, se enfrenta a dos grandes tareas:
  1. El QUÉ: acciones a realizar para poder resolver el problema. Esta tarea forma parte del trabajo de mesa previo a toda actividad de programación.
  2. El CÓMO: instrucciones de las que se va a valer para escribir el código que realice las acciones determinadas en el QUÉ, las cuales están determinadas por el lenguaje de programación seleccionado.
Muchas personas confunden la Programación con la Lógica de Programación, la primera involucra el conocimiento de técnicas e instrucciones de un determinado Lenguaje a través de los cuales se hace sencillo lograr que la Computadora obtenga unos resultados mucho mas rápidos que una persona. La segunda involucra, de una manera técnica y organizada, los conceptos que permiten diseñar en términos generales, la solución a problemas que pueden llegar a ser implementados a través de una computadora.

Lenguaje de programacion


Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevados a cabo por máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.
Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.
También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:
  • El desarrollo lógico del programa para resolver un problema en particular.
  • Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  • Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
  • Prueba y depuración del programa.
  • Desarrollo de la documentación.
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten diseñar el contenido de los documentos).
Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural. Una característica relevante de los lenguajes de programación es precisamente que más de un programador pueda usar un conjunto común de instrucciones que sean comprendidas entre ellos para realizar la construcción de un programa de forma colaborativa.

Algoritmo


En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-Juarismi) es un conjunto pre-escrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.2 Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.
Métodos de expresión de algoritmo
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.
La descripción de un algoritmo usualmente se hace en tres niveles:
  1. Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
  2. Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución.
  3. Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones.
También es posible incluir un teorema que demuestre que el algoritmo es correcto, un análisis de complejidad o ambos.