viernes, 9 de octubre de 2009

ALGORITMOS CON CICLOS

POTENCIA DE UN NUMERO:

var
numero=0
i=1
resultado=0
inicio
imprimir("\n digite numero")
leer(numero)
desde i=1 hasta 5{
resultado=numero^i
imprimir("\n el resultado es:", resultado)}
fin

MULTIPLICACION:

var
numero=0
tabla=0
i=0
multiplicacion=0
inicio
imprimir("\n digite el numero")
leer(numero)
si(numero>5){
desde i=1 hasta 10{
multiplicacion=numero*i
imprimir("\n la multiplicacion es:",numero,"*",i,"=",multiplicacion)}
sino
desde i=1 hasta 10{
multiplicacion=2*i
imprimir("\nla multiplicacion es:",2,"*",i,"=",multiplicacion)}}
fin

TABLA DE MULTIPLICAR:

var
multiplicacion=0
numero=0
i=1
inicio
imprimir("\n digite la tabla")
leer(numero)
desde i=1 hasta 10{
multiplicacion=numero*i
imprimir("\n la multiplicacion es:", numero, "*", i, "=", multiplicacion)}
fin

lunes, 28 de septiembre de 2009

Ciclo o Bucle

WHILE:
El Bucle while o bucle mientras es una estructura de la mayoría de los lenguajes de programación estructurados cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera.
(Mientras). Una de las estructuras de repetición empleada en la programación de algoritmos. While permite al programador especificar las veces que se repita una acción (una o más sentencias de programación) mientras una condición se mantenga verdadera. La forma del while en lenguaje C es:

while (condición)
{
bloque de instrucciones
};

Mientras la condición se mantenga verdadera, el bloque de instrucciones dentro de las llaves se ejecutará "x" cantidad de veces. Es necesario que alguna vez la condición se haga falsa, pues de lo contrario se entraría en un ciclo infinito de repeticiones (bucle infinito) y el programa se consideraría bloqueado. Por lo tanto es necesario que en el bloque de instrucciones dentro de la estructura while, se ejecute alguna acción que en algún momento haga que la condición sea falsa.

Un ejemplo del funcionamiento de la estructura de repetición while:

int num;

num = 0;
while (num<=10)
{
printf (“Repetición numero %d
”, num);
num = num + 1;
};


DO WHILE: Es el último de los bucles que hay en Javascript. Se utiliza generalmente cuando no sabemos cuantas veces se habrá de ejecutar el bucle, igual que el bucle WHILE, con la diferencia de que sabemos seguro que el bucle por lo menos se ejecutará una vez.

Este tipo de bucle se introdujo en Javascript 1.2, por lo que no todos los navegadores los soportan, sólo los de versión 4 o superior. En cualquier caso, cualquier código que quieras escribir con DO...WHILE se puede escribir también utilizando un bucle WHILE, con lo que en navegadores antiguos deberás traducir tu bucle DO...WHILE por un bucle WHILE.

La sintaxis es la siguiente.

do {
sentencias del bucle
} while (condición)

El bucle se ejecuta siempre una vez y al final se evalúa la condición para decir si se ejecuta otra vez el bucle o se termina su ejecución.

Veamos el ejemplo que escribimos para un bucle WHILE en este otro tipo de bucle.

var color
do {
color = dame un color
} while (color != "rojo")

Este ejemplo funciona exactamente igual que el anterior, excepto que no tuvimos que inicializar la variable color antes de introducirnos en el bucle. Pide un color mientras que el color introducido es distinto que "rojo".

Ejemplo

Vamos a ver a continuación un ejemplo más práctico sobre cómo trabajar con un bucle WHILE. Como resulta muy difícil hacer ejemplos prácticos con lo poco que sabemos sobre Javascript, vamos a adelantar una instrucción que aun no conocemos.

En este ejemplo vamos a declarar una variable e inicializarla a 0. Luego iremos sumando a esa variable un número aleatorio del 1 al 100 hasta que sumemos 1.000 o más, imprimiendo el valor de la variable suma después de cada operación. Será necesario utilizar el bucle WHILE porque no sabemos exactamente el número de iteraciones que tendremos que realizar.

var suma = 0
while (suma < 1000){
suma += parseInt(Math.random() * 100)
document.write (suma + "
")
}

Suponemos que por lo que respecta al bucle WHILE no habrá problemas, pero donde si que puede haberlos es en la sentencia utilizada para tomar un número aleatorio. Sin embargo, no es necesario explicar aquí la sentencia porque lo tenemos planeado hacer más adelante.

FOR: El bucle for o ciclo for es una estructura de control en la que se puede indicar el número máximo de iteraciones. Está disponible en casi todos los lenguajes de programación imperativos.

jueves, 3 de septiembre de 2009

analisis de algoritmos en SLE y DFD y definiciones

1. HIPOTENUSA DE UN TRIANGULO EN SLE:

var
a=0
b=0
h=0
inicio
imprimir("digite a");
leer (a);
imprimir("digite b");
leer (b);
/*proceso*/
h=a^2+b^2
imprimir("la hipotenusa es",h)
fin

EN DFD:




3. DEFINICIONES:

LA COMPILACION Y SUS FASES:
La compilación es el proceso de traducción de programas fuente a programas objeto. El programa objeto obtenido de la compilación ha sido traducido normalmente al código común del lenguaje de máquina.
Para conseguir el programa máquina real se debe utilizar un programa llamado montador o enlazador (Linker). El proceso de montaje conduce a un programa en lenguaje máquina directamente ejecutable.
Existen diversas fases de compilación o también llamadas etapas de la compilación que se ilustrarán en la siguiente imagen:

CONSTANTE: una constante es un valor de tipo permanente, que no puede modificarse, al menos no dentro del contexto o situación para el cual está previsto. Suele relacionarse y usarse en combinación con las variables, que si admiten modificación en sus valores.
VARIABLE: Una variable es un elemento de una fórmula, proposición o algoritmo que puede adquirir o ser sustituido por un valor cualquiera (siempre dentro de su universo). Los valores que una variable es capaz de recibir, pueden estar definidos dentro de un rango, y/o estar limitados por criterios o condiciones de pertenencia, al universo que les corresponde (en estos casos, el universo de la variable pasa a ser un subconjunto de un universo mayor, el que tendría sin las restricciones).
DATOS: Es un conjunto de información almacenada en memoria auxiliar que permite acceso directo y un conjunto de programas que manipulan esos datos. La base de datos es un conjunto exhaustivo no redundante de datos estructurados organizados independientemente de su utilización y su implementación en máquina accesibles en tiempo real y compatibles con usuarios concurrentes con necesidad de información diferente y no predicable en tiempo.


TIPOS DE DATOS:
En lenguajes de programación un tipo de dato es un atributo de una parte de los datos que indica al ordenador (y/o el programador) algo sobre la clase de datos sobre los que se va a procesar. Esto incluye imponer restricciones en los datos, como qué valores pueden tomar y qué operaciones se pueden realizar.
Tipos de datos comunes son:
Enteros, números de coma flotante (decimales), cadenas alfanuméricas, fechas, horas, colores, coches o cualquier cosa que se nos ocurra.
Por ejemplo, en Java, el tipo "int" representa un conjunto de enteros de 32 bits cuyo rango va desde el -2.147.483.648 al 2.147.483.647, así como las operaciones que se pueden realizar con los enteros, como la suma, resta y multiplicación. Los colores, por otra parte, se representan como tres bytes denotando la cantidad de rojo, verde y azul, y una cadena de caracteres representando el nombre del color; las operaciones permitidas incluyen la adición y sustracción, pero no la multiplicación.
CARÁCTER: Un caracter es una unidad de información que corresponde aproximadamente con un grafema o con una unidad o símbolo parecido, como los de un alfabeto o silabario de la forma escrita de un lenguaje natural.
Un ejemplo de caracter es una letra, un número o un signo de puntuación. El concepto también abarca a los caracteres de control, que no se corresponden con símbolos del lenguaje natural sino con otros fragmentos de información usados para procesar textos, tales como el retorno de carro y el tabulador, así como instrucciones para impresoras y otros dispositivos que muestran dichos textos (como el avance de página).
CADENA: Una cadena (string) de carateres es una sucesión de caracteres que se encuentran delimitados por unas comillas (apóstrofes) o doble comillas, según sea el tipo de lenguaje que utilicemos en el programa.

EXPRESIONES ARITMETICAS: Las expresiones aritméticas son expresiones simples construidas con operadores aritméticos y constantes o referencias a las celdas. Los operandos son los valores sobre los que actúa el operador. Existen dos tipos de operadores aritméticos:
• Unarios: operadores que actúan sólo sobre un elemento y utilizan un solo operando ubicado a la derecha del operador. Por ejemplo:
=-A6
• Binarios: operadores que actúan sobre dos elementos y utilizan dos operadores, uno ubicado a cualquiera de los dos lados del operador. Por ejemplo:
=B4 + A6

PRIORIDAD DE OPERADORES: Los operadores tienen prioridades. Los que tienen una prioridad más alta se ejecutan antes que los adyacentes, incluso aunque aparezcan más tarde en la expresión.

En a+b*c b*c se realiza antes y luego se añade a. La prioridad influye en la necesidad de los paréntesis para agrupar sub-expresiones. Los paréntesis pueden hacer el orden de la ejecución más visible, y modificar el orden natural de ejecución según las prioridades de los operadores.

Por ejemplo, a+(b*c) opera como vimios en el ejemplo anterior, mientras que (a+b)*c hace que a+b se realice primero y luego se multiplique el resultado por c.

PRESENTACION GRAFICA DE LOS ALGORITMOS: Diagramas de Flujo. Son la representación gráfica de la solución algorítmica de un problema. Para diseñarlos se utilizan determinados símbolos o figuras que representan una acción dentro del procedimiento. Utilizan unos símbolos normalizados, con los pasos del algoritmo escritos en el símbolo adecuado y los símbolos unidos con flechas, denominadas líneas de flujo, que indican el orden en que los pasos deben ser ejecutados.
Para su elaboración se siguen ciertas reglas: Se escribe de arriba hacia abajo y de izquierda a derecha. Siempre se usan flechas verticales u horizontales, jamás curvas. Evitar cruce de flujos. En cada paso expresar una acción concreta.
Secuencia de flujo normal en una solución de problema: Tiene un inicio. Una lectura o entrada de datos. El proceso de datos. Una salida de información. Un final

miércoles, 2 de septiembre de 2009

CONTINUACION DE LOS ALGORITMOS EN DFD

MAYOR ENTRE TRES NUMEROS:



MAYOR ENTRE DOS NUMEROS:



CONCATENAR (NOMBRE Y APELLIDO):

domingo, 30 de agosto de 2009

mayor entre tres numeros en SLE

8.
var
n1=0
n2=0
n3=0
inicio
imprimir("Digite n1");
leer(n1)
imprimir("Digite n2");
leer(n2)
imprimir("Digite n3");
leer(n3)
si(n1>n2)
si(n1>n3)
imprimir("El mayor es:",n1);
sino
si(n2>n1)
si(n2>n3)
imprimir("El mayor es:",n2);
sino
imprimir("El mayor es:",n3);
fin

concatenar en SLE

var
nombre =""
apellido =""
concatenado=""
inicio
imprimir ("Ingrese su nombre completo:")
leer (nombre)
imprimir ("Ingrese su apellido:")
leer (apellido)
concatenado=nombre+apellido
imprimir ("Su nombre y su apellido:", nombre+apellido)
fin

martes, 25 de agosto de 2009

ALGORITMOS EN DFD

GRADOS CENTIGRADOS:






CONVERCION DE DOLAR:




PEDIDOS:




VOLUMEN DEL CILINDRO:



SUMA DE DOS NUMEROS:

1. suma de dos numeros:

ALGORITMOS EN DFD

1. SUMA DE DOS NUMEROS:

lunes, 24 de agosto de 2009

continuacion del los algoritmos en sle

6. MAYOR ENTRE DOS NUMEROS:

var
n1=0
n2=0
inicio
imprimir("\nDigite n1");
leer(n1)
imprimir("\nDigite n2");
leer(n2)
si(n1>n2)
{imprimir("El mayor es:",n1);
sino
imprimir("El mayor es:",n2);}
fin

ALGORITMOS EN SLE

1. SUMA DE DOS NUMEROS:

var
n1=0
n2=0
suma=0
inicio
imprimir("ingrese el primer valor numerico:");
leer (n1);
imprimir("ingrese el segundo valor numerrico:");
leer(n2);
/*proceso*/
suma =n1 + n2
imprimir("la suma es ", suma)
fin

2. VOLUMEN DEL CILINDRO:

var
r=0
h=0
v=0
inicio
imprimir("digite radio ");
leer (r);
imprimir("digite altura");
leer(h);
/*proceso*/
v=3.1416*(r*r)*h;
imprimir("el volumen es",v);
fin

3. PEDIDOS:

P1=0
precio=0
inicio
imprimir("digite P1");
leer(P1)
imprimir("digite precio");
leer(precio)
/*proceso*/
si(P1>500)
{precio= precio-(precio*0.7)
sino
precio= precio+(precio*0.2)
};
imprimir("El precio es:", precio)
fin

4. GRADOS CENTIGRADOS:

var
C=0
F=0
inicio
imprimir("digite la cantidad de ºC:");
leer(C)
/*proceso*/
F=(C*9)/5+32
imprimir("la cantidad de ºC en ºF es:",F);
fin

5. CONVERSIÓN DE DÓLAR:

var
dolar=2120
peso=0
dolares=0
inicio
imprimir ("digite la cantidad de dolares");
leer (dolares)
/*proceso*/
peso = dolar*dolares;
imprimir("la cantidad de dolares en pesos colombianos es:",peso);
fin

viernes, 14 de agosto de 2009

ALGORITMOS EN LENGUAJES C++

1. SUMA DE DOS NUMEROS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int a=0;
int b=0;
int c=0;
/*Entrada*/
printf ("Digite primer numero\n");
scanf ("%d",&a);
/*Lea(a)*/
printf ("Digite segundo numero\n");
scanf ("%d",&b);
/*Lea(b)*/
/*Proceso*/
c=a+b;
/*Salida*/
printf("La suma es:%d",c);
/*Fin*/
}

2. PEDIDOS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int P1=0;
int precio=0;
/*Entrada*/
printf ("Digite P1\n");
scanf ("%d",&P1);
/*Lea(P1)*/
printf ("Digite precio\n");
scanf ("%d",&precio);
/*Lea(precio)*/
/*Proceso*/
if (P1>500)
precio= precio-(precio*0.7);
if (P1<500)
precio= precio+(precio*1.02);
/*Salida*/
printf("El precio es:%d",precio);
/*Fin*/
}

3. GRADOS CENTIGRADOS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int C=0;
int F=0;
/*Entrada*/
printf ("Digite la cantidad de ºC\n");
scanf ("%d",&C);
/*Lea(C)*/
/*Proceso*/
F=(C*9)/5+32;
/*Salida*/
printf("La cantidad de ºC en ºF es:%d",F);
/*Fin*/
}

4. VOLUMEN DEL CILINDRO:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int r=0;
int h=0;
int v=0;
/*Entrada*/
printf ("Digite radio\n");
scanf ("%d",&r);
/*Lea(r)*/
printf ("Digite altura\n");
scanf ("%d",&h);
/*Lea(h)*/
/*Proceso*/
v=3.1416*(r*r)*h;
/*Salida*/
printf("El volumen es:%d",v);
/*Fin*/
}

5. CONVERSION DEL DOLAR:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int dolar=2120,dolares, peso=0;
/*Entrada*/
printf ("Digite la cantidad de dolares\n");
scanf ("%d",&dolares);
/*Lea(dolar)*/
/*Proceso*/
peso= dolar*dolares;
/*Salida*/
printf("La cantidad de dolares en pesos colombianos es:%d",peso);
/*Fin*/
}

6. EL MAYOR ENTRE DOS NUMEROS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int n1=0;
int n2=0;
/*Entrada*/
printf ("Digite n1\n");
scanf ("%d",&n1);
/*Lea(n1)*/
printf ("Digite n2\n");
scanf ("%d",&n2);
/*Lea(n2)*/
/*Proceso*/
if (n1>n2)
printf("El numero mayor es n1:%d",n1);
else
printf("El numero mayor es n2:%d",n2);
/*Fin*/
}

7. MAYOR ENTRE TRES NUMEROS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int n1=0;
int n2=0;
int n3=0;
/*Entrada*/
printf ("Digite primer numero\n");
scanf ("%d",&n1);
/*Lea(n1)*/
printf ("Digite segundo numero\n");
scanf ("%d",&n2);
/*Lea(n2)*/
printf ("Digite tercer numero\n");
scanf ("%d",&n3);
/*Lea(n3)*/
/*Proceso*/
if (n1>n2)
if (n1>n3)
printf ("El mayor es n1:%d",n1);
if(n2>n1)
if(n2>n3)
printf ("El mayor es n2:%d",n2);
else
printf ("El mayor es n3:%d",n3);
/*Fin*/
}

domingo, 2 de agosto de 2009

SOLUCION SOBRE ALGORITOMOSY DIAGRAMAS DE FLUJO

SOLUCION
1. –ALGORITMO: Es el conjunto de operaciones y procedimientos que deben seguirse para resolver un problema. Es una lista bien definida, ordenada y finita de operaciones que permite hallar la solución a un problema y es una serie de pasos lógicos.

–CARACTERISTICAS: Las características fundamentales que debe cumplir todo algoritmo son:
*Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.
*Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.
*Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algún momento; o sea, debe tener un numero finito de pasos.

–LENGUAJES DE PROGRAMACION: Es un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Es utilizado para controlar el comportamiento físico y lógico de una máquina.

–LENGUAJE DE MAQUINA: El lenguaje máquina es el único lenguaje que puede ejecutar una computadora. El lenguaje de máquina es un código que es interpretado directamente por el microprocesador. El lenguaje está compuesto por un conjunto de instrucciones ejecutadas en secuencia (con eventuales cambios de flujo causados por el propio programa o eventos externos) que representan acciones que la máquina podrá tomar.

–LENGUAJE DE BAJO NIVEL: Es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador. Consecuentemente es fácilmente trasladado a lenguaje de máquina.

–LENGUAJE DE MEDIO NIVEL: Es un lenguaje de programación informática como el lenguaje C, que se encuentran entre los lenguajes de alto nivel y los lenguajes de bajo nivel.

–LENGUAJE DE ALTO NIVEL: Es aquel que se aproxima mas al lenguaje natural humano que al lenguaje binario de las computadoras, el que se conoce como lenguaje de bajo nivel. Su función principal radica en que a partir de su desarrollo, existe la posibilidad de que se pueda utilizar el mismo programa en distintas máquinas, es decir que es independiente de un hardware determinado.

–TRADUCTORES DE LENGUAJE (INTÉRPRETES Y COMPILADORES):
*INTÉRPRETES: Es un programa informático capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intérpretes se diferencian de los compiladores en que mientras estos traducen un programa desde su descripción en un lenguaje de programación al código máquina del sistema destino, los primeros (los interpretes) sólo realizan la traducción a medida que sea necesario, típicamente, instrucción por instrucción, y normalmente no guardan el resultado de dicha traducción.
*COMPILADORES: 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.

–LA COMPILACION Y SUS FASES: La compilación es el proceso de traducción de programas fuente a programas objeto. El programa objeto obtenido de la compilación ha sido traducido normalmente al código común del lenguaje de máquina.
Existen diversas fases de compilación o también llamadas etapas de la compilación:
1. Programa Fuente: Programa escrito en un lenguaje de alto nivel que necesita ser traducido a código máquina para poder ser ejecutado.
2. Compilador: Programa encargado de traducir los programas fuentes escritos en un lenguaje de alto nivel a lenguaje máquina y de comprobar que las llamadas a las funciones de librería se realizan correctamente.
3. Programa Objeto: Es el programa fuente traducido (por el compilador) a código máquina. Aún no es directamente Ejecutable.
4. Linker: Es el programa encargado de insertar al programa objeto el código máquina de las funciones de las librerías (archivos de biblioteca) usadas en el programa y realizar el proceso de montaje, que producirá un programa ejecutable
5. Ejecutable en Lenguaje Máquina: Traducción completa a código máquina, realizada por el enlazador, del programa fuente y que ya es directamente ejecutable.

–DATOS: Es un conjunto de información almacenada en memoria auxiliar que permite acceso directo y un conjunto de programas que manipulan esos datos.

–TIPOS DE DATOS: Un tipo de datos define un conjunto de valores y operaciones primitivas aplicables a los mismos. El lenguaje proporciona tipos predefinidos junto con mecanismos para que el usuario pueda definir nuevos tipos y subtipos. Los tipos se agrupan en clases formando una jerarquía.
Existen dos clases de tipos de datos:
- Simples (sin estructura), estos son los siguientes:
* Numéricos (integer, real)
* Lógicos (boolean)
* Carácter (char, string)
- Compuestas (con estructura), estos son conjuntos de partidas de datos simples con
Relaciones definidas entre ellos.

–OPERACIONES PRIMITIVAS: NUMERICOS, LOGICOS, CARÁCTER, CADENA:
*NUMERICOS: El tipo numérico es el conjunto de los valores numéricos. Estos pueden representarse en dos formas distintas.
- Tipos numéricos enteros (integer), es un subconjunto finito de los números enteros.
Los enteros son números completos, no tiene componentes fraccionarios o decimales
y pueden ser negativos o positivos.
Ejemplo: 5 -15 20 -1320 6 4 17 26 etc.
- Tipos numéricos reales (real), el tipo real consiste en un subconjunto de los números reales.
Los números reales siempre tienen un punto decimal y pueden ser positivos o negativos. Un número real consta de un entero y una parte decimal.
Ejemplo: 0.08 3.7452 -8.12 3739.41 -52.321 etc.
*LOGICOS: El tipo lógico, también denominado booleano, es aquel dato que sólo puede tomar uno de los
Valores:
Cierto o verdadero (TRUE) y falso (FALSE)
Este tipo de dato se utiliza para representar las alternativas de (SI/NO), a determinadas
Condiciones.
Ejemplo: cuando se pide si un valor entero es par, la respuesta será verdadera o falsa, según
Sea el caso (par o impar).
*CARÁCTER Y CADENA: El tipo carácter es el conjunto finito y ordenado de caracteres que la computadora reconoce.
Un dato tipo carácter contiene un solo carácter. La mayoría de la computadoras reconocen los
Siguientes caracteres alfabéticos y numéricos:
Caracteres alfabéticos: (A, B, C, ….., Z) (a, b, c, ….., z)
Caracteres numéricos (1, 2, 3, 4, …, 9, …….)
Caracteres especiales ( + , - , * , / , ^ , . , ; , < , > , etc.)
Una cadena (string) de caracteres es una sucesión de caracteres que se encuentran delimitados
Por una comillas (apóstrofes) o doble comillas, según sea el tipo de lenguaje que utilicemos al programar.

–CONSTANTES: Es un dato cuyo valor no puede cambiar durante la ejecución del programa, recibe un valor en el momento de la compilación y este permanece inalterado durante todo el programa.

–VARIABLES: Es un espacio de memoria reservado para almacenar un valor que corresponde a un tipo de dato soportado por el lenguaje de programación, es representada y usada a través de una etiqueta (un hombre) que le asigna un programador o que ya viene predefinida.


2. DIAGRAMA DE FLUJO: es una forma de representar gráficamente los detalles algorítmicos de un proceso multifactorial. Se utiliza principalmente en programación, economía y procesos industriales, pasando también a partir de estas disciplinas a formar parte fundamental de otras, como la psicología cognitiva. Estos diagramas utilizan una serie de símbolos con significados especiales y son la representación gráfica de los pasos de un proceso. En computación, son modelos tecnológicos utilizados para comprender los rudimentos de la programación lineal.
Nombre Símbolo Función
Terminal Representa el inicio y fin de un programa. También puede representar una parada o interrupción programada que sea necesaria realizar en un programa.
Entrada / salida Cualquier tipo de introducción de datos en la memoria desde los periféricos o registro de información procesada en un periférico.
Proceso Cualquier tipo de operación que pueda originar cambio de valor, formato o posición de la información almacenada en memoria, operaciones aritméticas, de transformaciones, etc.
Decisión Indica operaciones lógicas o de comparación entre datos (normalmente dos) y en función del resultado de la misma determina (normalmente si y no) cual de los distintos caminos alternativos del programa se debe seguir
Conector Misma Página Sirve para enlazar dos partes cualesquiera de un diagrama a través de un conector en la salida y otro conector en la entrada. Se refiere a la conexión en la misma pagina del diagrama
Indicador de dirección o línea de flujo Indica el sentido de la ejecución de las operaciones
Salida Se utiliza en ocasiones en lugar del símbolo de salida. El dibujo representa un pedazo de hoja. Es usado para mostrar datos o resultados.

miércoles, 29 de julio de 2009

ALGORITMOS DE LENGUAJE DE C++

1. SUMA DE DOS NUMEROS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int a=0;
int b=0;
int c=0;
/*Entrada*/
printf ("Digite primer numero\n");
scanf ("%d",&a);
/*Lea(a)*/
printf ("Digite segundo numero\n");
scanf ("%d",&b);
/*Lea(b)*/
/*Proceso*/
c=a+b;
/*Salida*/
printf("La suma es:%d",c);
/*Fin*/
}

2. CONDICIONAL PEDIDOS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int P1=0;
int precio=0;
/*Entrada*/
printf ("Digite P1\n");
scanf ("%d",&P1);
/*Lea(P1)*/
printf ("Digite precio\n");
scanf ("%d",&precio);
/*Lea(precio)*/
/*Proceso*/
if (P1>500)
precio= precio-(precio*0.7);
if (P1<500)
precio= precio+(precio*1.02);
/*Salida*/
printf("El precio es:%d",precio);
/*Fin*/
}

3. GRADOS CENTIGRADOS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int C=0;
int F=0;
/*Entrada*/
printf ("Digite la cantidad de ºC\n");
scanf ("%d",&C);
/*Lea(C)*/
/*Proceso*/
F=(C*9)/5+32;
/*Salida*/
printf("La cantidad de ºC en ºF es:%d",F);
/*Fin*/
}

4. VOLUMEN DEL CILINDRO:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int C=0;
int F=0;
/*Entrada*/
printf ("Digite la cantidad de ºC\n");
scanf ("%d",&C);
/*Lea(C)*/
/*Proceso*/
F=(C*9)/5+32;
/*Salida*/
printf("La cantidad de ºC en ºF es:%d",F);
/*Fin*/
}

5. TRE NUMEROS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int n1=0;
int n2=0;
int n3=0;
/*Entrada*/
printf ("Digite primer numero\n");
scanf ("%d",&n1);
/*Lea(n1)*/
printf ("Digite segundo numero\n");
scanf ("%d",&n2);
/*Lea(n2)*/
printf ("Digite tercer numero\n");
scanf ("%d",&n3);
/*Lea(n3)*/
/*Proceso*/
if (n1>n2)
if (n1>n3)
printf ("El mayor es n1:%d",n1);
if(n2>n1)
if(n2>n3)
printf ("El mayor es n2:%d",n2);
else
printf ("El mayor es n3:%d",n3);
/*Fin*/
}


6. CONVERSION DE DOLAR:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int dolar=2120,dolares, peso=0;
/*Entrada*/
printf ("Digite la cantidad de dolares\n");
scanf ("%d",&dolares);
/*Lea(dolar)*/
/*Proceso*/
peso= dolar*dolares;
/*Salida*/
printf("La cantidad de dolares en pesos colombianos es:%d",peso);
/*Fin*/
}


7. EL MAYOR ENTRE DOS NUMEROS:
#include
#include
void main (void)
{
/*Inicio
Variables*/
int n1=0;
int n2=0;
/*Entrada*/
printf ("Digite n1\n");
scanf ("%d",&n1);
/*Lea(n1)*/
printf ("Digite n2\n");
scanf ("%d",&n2);
/*Lea(n2)*/
/*Proceso*/
if (n1>n2)
printf("El numero mayor es n1:%d",n1);
else
printf("El numero mayor es n2:%d",n2);
/*Fin*/
}

martes, 19 de mayo de 2009

REDES SOCIALES
Según la naturaleza de las relaciones, se pueden clasificar en dos tipos:

a) diádicas (sólo indican ausencia o existencia de la relación) o valoradas (en la que la cantidad de la relación pueda medirse en términos de orden o de peso como, por ejemplo, número de encuentros sexuales entre dos personas), o bien

b) simétricas (la relación en realidad es una unión entre actores que siempre es recíproca. Ejemplo: leemos el mismo blog habitualmente) o dirigidas (que el individuo A tenga relación con el individuo B no implica que B tenga esa misma relación con A, como, por ejemplo, prestar dinero).

El análisis de redes sociales ha irrumpido en muchas ciencias sociales en los últimos veinte años como una nueva herramienta de análisis de realidad social. Al centrarse en las relaciones de los individuos (o grupos de individuos) y no en las características de los mismos (raza, edad, ingresos, educación,...) ha sido capaz de abordar algunos temas con un éxito insospechado. La difusión de información o el contagio de enfermedades son dos ejemplos de asuntos en los que la estructura de las relaciones pueden llegar a ser más relevantes que las características de los individuos, o por lo menos, información clave para conocer los procesos.
El
Análisis de redes sociales se basa en la Teoría de Redes Sociales, la cual se ha desarrollado en el mundo de una manera más intensiva a partir de los años 60 del Siglo XX.
SOFTWARE PARA EL ANALISIS DE REDES SOCIALES
El uso de las ideas y herramientas de la rama de las matemáticas conocida como "teoría de grafos" ha ayudado a desarrollar una gran cantidad de herramientas y software de análisis. A diferencia de estas herramientas de análisis, muchas compañías han desarrollado también software dirigido a promover relaciones entre internautas, ya sea con fines laborales, lúdicos o de cualquier tipo.
LAS REDES SOCIALES MEJORAN SU PRODUCTIVIDAD
Según un estudio de ‘think tank’, las redes sociales mejoran las relaciones laborales y a su vez aumenta la productividad.
Los resultados de Demos, un instituto de investigación de Reino Unido, revelan que los trabajadores que utilizan redes sociales como Facebook, Bebo y MySpace aportan más beneficios que perjuicios para la empresa.
El autor del estudio, Peter Bradwell, explica cómo resulta casi imposible para las compañías el control del uso de Facebook o YouTube, motivo por el cual recomienda a las empresas establecer un "límite en el tiempo de utilización de estas redes".
"Ante el actual escenario de negocios, la reacción instintiva sería volver a seguir más de cerca la actividad de los trabajadores", reconoce Bradwell. Sin embargo, el autor del estudio recomienda "dar a los empleados más libertad y flexibilidad", ya que los resultados muestran que estas licencias dotan a los trabajadores de una mayor habilidad y aumenta la productividad.
El análisis asegura que evitar el uso de redes como Facebook, que alberga más de 100 millones de usuarios por todo el mundo, podría incluso perjudicar a las firmas. Así que mejor agregué a su jefe y sea el mejor empleado de su empresa.
REDES SOCIALES EN INTERNET
El software germinal de las redes sociales parte de la teoría de los Seis grados de separación, según la cual toda la gente del planeta está conectada a través de no más de seis personas. De hecho, existe una patente en EEUU conocida como six degrees patent por la que ya han pagado Tribe y LinkedIn. Hay otras muchas patentes que protegen la tecnología para automatizar la creación de redes y las aplicaciones relacionadas con éstas.
En The social software weblog han agrupado 120 sitios web en 10 categorías y QuickBase también ha elaborado un completo cuadro sobre redes sociales en Internet.
El origen de las redes sociales se remonta, al menos, a 1995, cuando Randy Conrads crea el sitio web classmates.com. Con esta red social se pretende que la gente pueda recuperar o mantener el contacto con antiguos compañeros del colegio, instituto, universidad, etcétera.
En
2002 comienzan a aparecer sitios web promocionando las redes de círculos de amigos en línea cuando el término se empleaba para describir las relaciones en las comunidades virtuales, y se hizo popular en 2003 con la llegada de sitios tales como MySpace o Xing. Hay más de 200 sitios de redes sociales, aunque Friendster ha sido uno de los que mejor ha sabido emplear la técnica del círculo de amigos. La popularidad de estos sitios creció rápidamente y grandes compañías han entrado en el espacio de las redes sociales en Internet. Por ejemplo, Google lanzó Orkut el 22 de enero de 2004. Otros buscadores como KaZaZZ! y Yahoo crearon redes sociales en 2005.
En estas comunidades, un número inicial de participantes envían mensajes a miembros de su propia red social invitándoles a unirse al sitio. Los nuevos participantes repiten el proceso, creciendo el número total de miembros y los enlaces de la red. Los sitios ofrecen características como actualización automática de la libreta de direcciones, perfiles visibles, la capacidad de crear nuevos enlaces mediante servicios de presentación y otras maneras de conexión social en línea. Las redes sociales también pueden crearse en torno a las relaciones comerciales.

Las herramientas informáticas para potenciar la eficacia de las redes sociales online (‘software social’), operan en tres ámbitos, “las 3Cs”, de forma cruzada:
  • Comunicación (nos ayudan a poner en común conocimientos).
  • Comunidad (nos ayudan a encontrar e integrar comunidades).
  • Cooperación (nos ayudan a hacer cosas juntos).


El establecimiento combinado de contactos (blended networking) es una aproximación a la red social que combina elementos en línea y del mundo real para crear una mezcla. Una red social de personas es combinada si se establece mediante eventos cara a cara y una comunidad en línea. Los dos elementos de la mezcla se complementan el uno al otro. Vea también computación social.
Las redes sociales continúan avanzando en Internet a pasos agigantados, especialmente dentro de lo que se ha denominado
Web 2.0 y Web 3.0, y dentro de ellas, cabe destacar un nuevo fenómeno que pretende ayudar al usuario en sus compras en Internet: las redes sociales de compras. Las redes sociales de compras tratan de convertirse en un lugar de consulta y compra. Un espacio en el que los usuarios pueden consultar todas las dudas que tienen sobre los productos en los que están interesados, leer opiniones y escribirlas, votar a sus productos favoritos, conocer gente con sus mismas aficiones y, por supuesto, comprar ese producto en las tiendas más importantes con un solo clic. Esta tendencia tiene nombre, se llama Shopping 2.0 .

jueves, 7 de mayo de 2009

BÚSQUEDAS AVANZADAS

Las Búsquedas Avanzadas permiten hacer combinaciones de tal forma que uno o más términos sean buscados en diferentes índices o partes del registro simultáneamente. También permiten excluir un término específico de la búsqueda o recuperar uno u otro de los términos ingresados. Cada índice representa un área del registro o ficha de título, aunque también puede buscar palabras generales en cualquier parte del registro. En todos los casos, los términos por los que se desea hacer la búsqueda avanzada se ingresarán en las áreas para buscar de cada índice.

La búsqueda General de palabras recuperará el o los términos que se encuentren en cualquier parte del registro o título:
.
La búsqueda de Título recuperará el o los términos que se encuentren en el área de título del registro.
La búsqueda de Autor recuperará el o los términos que se encuentren en las áreas de autores del registro.
La búsqueda de Tema recuperará el o los términos que se encuentren en las áreas de temas del registro.
La búsqueda de Editorial recuperará el o los términos que se encuentren en el área de editorial del registro.
La búsqueda de Serie recuperará el o los términos que se encuentren en el área de serie del registro.
Ya sea que se haga una búsqueda en un índice o en varios a la vez, se pueden utilizar los operadores booleanos AND, OR y NOT. Puede hacer más específica la búsqueda si se utilizan estos operadores.
DEFINICION: Tipo de búsqueda que posee características adicionales soportadas por motor de búsqueda. Suele ser una opción de elección libre en los buscadores, programas, herramientas, servicios online, etc. En algunos servicios online, la búsqueda avanzada sólo está permitida cuando el usuario paga.Una búsqueda simple generalmente consta de un cuadro de texto para una simple cadena de caracteres, en cambio, las búsquedas avanzadas suelen contar con múltiples cuadros de texto, casilleros de verificación y otros elementos de formularios. Por lo general, estos elementos permiten aplicar filtros a la búsqueda básica, para obtener resultados más exactos.Por ejemplo, una búsqueda avanzada en un buscador de internet podría contener la elección de filtros por documento (imagen, texto, video, etc.), por el idioma del documento, por los derechos de uso, etc.Otro ejemplo son las búsquedas en los servicios online para conocer parejas, la búsqueda básica suele ser el sexo, edad y ubicación de la persona que se busca. En cambio, la búsqueda avanzada suele tener otras características para hacer más exacta la búsqueda, como por ejemplo, signo del zodíaco, preferencias, apariencias físicas, etc.Las búsquedas más avanzadas y especializadas pueden lograrse en los buscadores verticales, pues este tipo de buscadores se concentran en áreas, campos o nichos específicos.

miércoles, 22 de abril de 2009

Ensayo Sobre Las TIC

ENSAYOS SOBRE LAS TIC


Las TIC son las tecnologías de información y comunicación, son un conjunto de servicios, redes, software y dispositivos q tienen como fin de mejorar la calidad de vida de las personas dentro de un entorno, y que se integran a un sistema de información interconectado y complementario.

Las TIC se encargan del diseño, desarrollo, mantenimiento y administración de la información por medios de sistemas informáticos, para información o comunicación. Las Tic son herramientas teórica conceptuales, soportes y canales que procesan, almacenan, sintetizan, recuperan y presentan información de la forma mas variada.
El uso de las TIC representa una variación notable en la sociedad y a la larga un cambio en la educación, en las relaciones interpersonales y en la forma de difundir y generar conocimientos.


NECESIDAD DE LAS TIC


La instrumentación tecnológica es una prioridad en la comunicación de hoy en día. Las tecnologías de la comunicación son una importante diferencia entre una civilización desarrollada y otra en vías de desarrollo. Estas poseen las características de ayudar a comunicarnos ya que, a efectos prácticos, en lo que a captación y transmisión de información se refiere, desaparece las distancias geográficas.


EDUCACION DE LAS TIC


Medios o recursos que pueden propiciar el aprendizaje y desarrollo de las personas. El tipo de aprendizaje desarrollado dependerá del sentido y supuestos epistemológicos en que se base el modelo de enseñanza.
La incorporación de las tecnologías de información y comunicación (TIC) al proceso Educacional de los niños y niñas con Discapacidad o Necesidades Educativas Especiales (NEE), nos facilita su integración Educativa y favorece su inclusión escolar, mejorando sus condiciones de trabajo retribuyendo a una mejor calidad de vida. Una persona incomunicada, mal conectada al mundo por una alteración física, sensorial u orgánica con una simple señal es suficiente para poner en marcha infinidad de habilidades como dibujar, conectar, comunicar, grabar, conocer letras, números, ciudades, leer textos.


APORTACIONES DE LA TIC


* Fácil acceso a una inmensa fuente de información.
* Proceso rápido y fiable de todo tipo de datos.
* Canales de comunicación inmediata (on/off).
* Capacidad de almacenamiento.
* Automatización de trabajos.
* Interactividad.
* Digitalización de toda la información.


TECNOLOGIAS DE LA INFORMACION Y LA COMUNICACION (TIC)

Cuando estas tres palabras se unen hacemos referencia al conjunto de avances tecnológicos que nos proporcionan la informática, las telecomunicaciones y las tecnologías audiovisuales, que comprenden los desarrollos relacionados con los ordenadores, Internet, la telefonía, los "mas media", las aplicaciones multimedia y la realidad virtual. Estas tecnologías básicamente nos proporcionan información, herramientas para su proceso y canales de comunicación.











miércoles, 15 de abril de 2009

MOTORES DE BUSQUEDA

MOTORES DE BUSQUEDA

Un motor de búsqueda es un software que indexa archivos almacenados en los servidores web, un ejemplo son los buscadores de internet (algunos buscan sólo en la Web pero otros buscan además en News, Gopher, FTP, etc.) cuando les pedimos información sobre algún tema. Las búsquedas se hacen con palabras clave o con árboles jerárquicos por temas; el resultado de la búsqueda es un listado de direcciones Web en los que se mencionan temas relacionados con las palabras clave buscadas. Se pueden clasificar en dos: Índices temáticos: Son sistemas de búsqueda por temas o categorías jerarquizados (aunque también suelen incluir sistemas de búsqueda por palabras clave). Se trata de bases de datos de direcciones Web elaboradas "manualmente", es decir, hay personas que se encargan de asignar cada página web a una categoría o tema determinado. Motores de búsqueda: Son sistemas de búsqueda por palabras clave. Son bases de datos que incorporan automáticamente páginas web mediante "robots" de búsqueda por la red. Como operan en forma automática, los motores de búsqueda contienen generalmente más información que los directorios. Sin embargo, estos últimos también han de construirse a partir de búsquedas (no automatizadas) o bien a partir de avisos dados por los creadores de páginas (lo cual puede ser muy limitativo). Los buenos directorios combinan ambos sistemas.
1. Los Spiders: La mayoría de grandes buscadores internacionales que todos usamos y conocemos son de este tipo. Requieren muchos recursos para su funcionamiento. No están al alcance de cualquiera.
Recorren las páginas recopilando información sobre los contenidos de las páginas. Principalmente el texto que en ellas aparece. Cuando buscamos una información en los motores, ellos consultan su base de datos, con la información que han recogido de las páginas, y nos la presentan clasificados por su relevancia. De las webs, los buscadores pueden almacenar desde la página de entrada, a todas las páginas de la web. Depende de los gustos del buscador, y la consideración de importancia que tenga la web para ellos.
Si buscamos una palabra, por ejemplo [ordenadores]. En los resultados que nos ofrecerá el motor de búsqueda, aparecerán páginas que contengan esta palabra en alguna parte de su texto.
Si consideran que una web es importante para el usuario, tienden a registrarlas todas. Si no la consideran importante, solo almacenan una o mas páginas. Aunque no necesariamente registran todas las webs que lo soliciten.
Cada cierto tiempo, los motores revisan las webs, para actualizar los contenidos de su base de datos, por lo que no es infrecuente, que los resultados de la búsqueda no estén actualizados, de forma que la información o la página no exista.
Los spiders, tienen una colección de programas simples y potentes con diferentes cometidos. Se suelen dividir en tres partes. Los programas que exploran la red -spiders-. Los que construyen la base de datos. Y los que utiliza el usuario, el programa que explora la base de datos.
La relevancia ó orden de presentación de los resultados de la consulta, viene determinada por diversos factores que dependen de cada buscador. Sería demasiado prolijo tratar lo que consideran los motores por relevancia, pero vamos a enumerar unas pocas. El tráfico, puede ser un factor de relevancia. El tipo de web, y la información que contienen son otros factor importantes, debido al análisis que realizan del contexto.
Otro factor para la relevancia, común a muchos buscadores y sitios de internet, es: si pagamos para tener una mayor visibilidad en los resultados de la búsqueda. Es decir si les pagamos nos dan un bonus que nos permitirá aparecer en las primeras páginas de resultados. Esta forma de publicidad, ahora mismo, es indicada de alguna forma. Los spiders se han visto obligados a este tipo de publicidad para poder seguir ofreciendo a los usuarios el servicio de forma gratuita.
  • Ejemplos de Spiders: Google, Altavista, Hotbot, Lycos

2.Los Directorios: Una barata tecnología, que es ampliamente utilizada por la cantidad de programas scripts en el mercado. No se requieren muchos recursos de informática. Están muy extendidos en la red por estos motivos. En cambio, se requiere mas soporte humano y mantenimiento.
Son motores buscadores completamente distintos a los spiders. En estos, los algoritmos son mucho mas sencillos, presentando la información sobre las webs registradas como una colección de directorios. No recorren las webs ni almacenan sus contenidos. Solo registran algunos de los datos de nuestra página. Como el título y la descripción de la web que se introduzcan a la hora de registrar las webs.
Los resultados de la búsqueda, estarán determinados por la información que se haya suministrado al directorio cuando se registra la web. En cambio, a diferencia de los motores, son revisadas por operadores humanos, y clasificadas según categorías, de forma que es mas fácil encontrar webs de el tema de nuestro interés.
Mas que buscar información sobre contenidos de la página, los resultados serán presentados haciendo referencia a los contenidos y temática de la web. Es decir, si buscamos "ordenadores", aparecerán webs que de una forma u otra estén relacionados con la temática de ordenadores. Sus posibilidades de búsqueda de contenidos, en la mayoría de los casos, son inexistentes.
Su tecnología, es muy barata y sencilla. Imagínese que es una base de datos como la que usted utiliza, sobre la que se realizan búsquedas. Tiene un coste de operación relativamente alto, pues tiene que ser operado por humanos práctica y exclusivamente.
Son apropiados para buscar categorías, mas que informaciones específicas. Para visitar sitios de temática común. Es la tecnología que utilizan portales y buscadores de sectores especializados como economía, derecho, naturaleza, deportes, famosos, humanidades, .. ..

  • Ejemplos de directorios: Antigus directorios, Yahoo, Terra (Antíguo Olé). Ahora, ambos utilizan tecnología spider, y Yahoo, conserva su directorio. Buscar Portal, es un directorio, y la mayoría de motores hispanos son directorios.

3. LOS SISTEMAS MIXTOS BUSCADOR - DIRECTORIO: Son una mezcla entre buscadores y directorio. Además de tener características de buscadores, presentan las webs registradas en catálogos sobre contenidos. Informática, cultura, sociedad. Que a su vez se dividen en subsecciones.

  • Ejemplo de sistema mixto buscador - directorio: Excite, Voila, Infoseek. Los motores en la actualidad, suelen tender hacia sistemas mixtos como ha ocurrido con Altavista.
    MetabuscadoresMetabuscadores.

4. METABUSCADORES: En realidad, no son buscadores. Lo que hacen, es realizar búsquedas en auténticos buscadores, analizan los resultados de la página, y presentan sus propios resultados. No suelen ser bien venidos por los buscadores. Para utilizar los servicios gratuitos de un buscador de esta forma, es necesario pedir permiso. El motivo es el siguiente:El Buscador, pone el dinero para opera el servicio, los contenidos que utilizará el metabuscador, y no percibe nada a cambio. Al eliminar la publicidad, no se obtienen ingresos. Solo gasto y pérdida de visitantes que utilicen este servicio de búsqueda.

  • Ejemplo: Search.com, www.copernic
5. MULTIBUSCADORES: Una categoría que oficialmente, no existe. Digamos que no está muy extendida, y que he puesto aquí, porque nosotros lo utilizamos. Permite lanzar varias búsquedas en motores seleccionados respetando el formato original de los buscadores. Hemos desarrollado nuestra propia tecnología de multibuscadores.

6. FFA ENLACES GRATUITOS PARA TODOS: FFA, página de enlaces gratuitos para todos. Cualquiera puede inscribir su página durante un tiempo limitado en estos pequeños directorios. Los enlaces, no son permanentes.

7. BUSCADORES DE PORTAL: Bajo este título, englobamos los buscadores específicos de sitio. Aquellos que buscan información solo en su portal o sitio web. Podríamos considerarlos como un directorio. No obstante, como están basados en expresiones regulares y consultas SQL, vamos a intentar ayudarles a manejar mejor estas herramientas.Si trabaja en temas de administración, sabrá por experiencia la necesidad de conocer bien estos buscadores, a los que no se da la importancia que requieren.