lunes, 13 de diciembre de 2010

Cómo instalar programas con extencion .bin en Ubuntu

How to:
Cómo instalar programas .bin
Hola, yo uso Ubuntu (GNU/Linux), en el proceso de instalarle las aplicaciones que normal mente uso, me he encontrado con programas que vienen solo en Binario, y esto lleva una serie de pasos muy sencillos pero útiles que a continuación describo:

1.- Descarga el archivo (si lo tienes no hace falta) y cópialo o muévelo al Escritorio. Para que quede en la ruta que abre la Terminal de comandos.


2.- Abre el Terminal y teclea "cd Escritorio" (sin las comillas).
ej: wilmer@wilmer-desktop:~$ cd Escritorio


3.- A continuación te aparecerá esto:
wilmer@wilmer -desktop:~/Escritorio$


4.- Escribe " ls" (sin comillas) y te aparecerá una lista de las carpetas y los archivos que se encuentran en el Escritorio.


5.- A continuación escribe "chmod +x El-nombre-del-archivo.bin"
ej: wilmer@wilmer -desktop:~/Escritorio$ chmod +x GoogleEarthLinux.bin


6.- Por último teclea "./Nombre-del-archivo.bin" (sin comillas)
ej: wilmer@wilmer -desktop:~/Escritorio$ ./GoogleEarthLinux.bin


7.- La instalación del programa se iniciará y solo tendrás que seguir los pasos

Cómo licenciar un programa bajo GPL

Cómo licenciar un programa bajo GPL

1. Insertar nuestro Copyright: se debe poner en cada archivo (clases) de nuestro código fuente de esta forma “Copyright 2007 Lucas Muñoz”, se debe usar la palabra “Copyright” no son válidas las traducciones al estilo “Derechos de autor” o parecidos, también podemos utilizar el símbolo “©” o bien (c).

2. Debemos especificar cada año: el año que especificaremos será aquel en el que lanzamos la versión de nuestro programa, si cada año lanzamos una nueva nuestro Copyright quedaría así: “Copyright 2007 2008 2009 Lucas Muñoz”.

3. En todos los archivos de nuestro código fuente deberemos insertar el preámbulo de la licencia GPL, este es el texto: “This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.“.

4. Junto a nuestro código fuente deberemos incluir una archivo con el texto completo de la licencia, generalmente este archivo se llama “LICENSE” o “COPYING”, podemos bajar la licencia completa desde el sitio oficial de GNU.

Fuente:
http://www.tuxi.com.ar/2007/11/27/howto-como-licenciar-un-programa-bajo-gpl/

miércoles, 8 de diciembre de 2010

PL/SQL

Ejercicios en PL/SQL

1. Mostrar para cada uno de los instructores su identificación, nombre completo, y sueldo a pagar en un mes X de un año Z si se sabe que corresponde al producto de la cantidad de lecciones dictadas en el mes por 0.05% del valor total de de los pagos realizados en el mes.

DECLARE

v_mes VARCHAR(2);
v_año VARCHAR(4);

CUROR c_pago IS
SELECT identificacion,nombre,apellido,COUNT(fecha) lecciones
FROM INSTRUCTORES,LECCIONES
WHERE TO_CHAR(fecha,'mm')=v_mes
AND identificacion=id_instructor
AND TO_CHAR(fecha,'yyyy')=v_año;

BEGIN

v_mes:='&mes';
v_año:='&año';

SELECT (SUM(valor) *0.05) parcial
FROM PAGOS
WHERE TO_CHAR(fecha,'mm')=v_mes
AND TO_CHAR(fecha,'yyyy')=v_año;

DBMS_OUTPUT.PUT_LINE('Pagos a instructores');
FOR r_pago IN c_pago LOOP
DBMS_OUTPUT.PUT_LINE('Identificacion: '||r_pago.identificacion||'Nombre:'||r_ipago.nombre||'
'||r_pago.apellido||' El sueldo es: '||parcial*r_pago.lecciones);
END LOOP;
END;
/

-----------------------------------------------------------------------------------------------------------------------------------

2. Capturar la identificación de un cliente y mostrar un informe que conste de las siguientes partes: una primera parte sus datos básicos (nombre completo, dirección de residencia y valor total de los pagos realizados en el año 2009), una segunda parte el detalle de sus pagos realizados en el año 2009 (fecha y valor).

DECLARE

v_id_cliente CLIENTES.identificacion%TYPE;

CURSOR c_cliente IS
SELECT nombre,apellido,direccion_res,SUM(valor) valor
FROM CLIENTES,PAGOS
WHERE identificacion=id_cliente
AND identificacion=v_id_cliente
AND TO_CHAR(fecha,'yyyy')='2009';

CUROSR c_detalle IS
SELECT fecha,valor
FROM PAGOS
WHERE id_cliente=v_id_cliente
AND TO_CHAR(fecha,'yyyy')='2009';

BEGIN

v_id_cliente:='&ident';

FOR r_cliente IN c_cliente LOOP
DBMS_OUTPUT.PUT_LINE('Nombre: '||r_cliente.nombre||' '||r_cliente.apellido||
'direccion: '||r_cliente.direccion_res||'total'||r_cliente.valor);
FOR r_pago IN c_detalle LOOP
DBMS_OUTPUT.PUT_LINE('Fecha: 'r_pago.fecha||' valor'||r_pago.valor);
END LOOP;
END LOOP;
END;
/


----------------------------------------------------------------------------------------------------------------------------------

3. Escribir una función que reciba la identificación de un cliente y un año X y devuelva el valor total de los pagos realizados en el año X.

CREATE OR REPLACE FUNCTION f_pago (ide_clien CLIENTES.identificacion%TYPE,
v_año VARCHAR2) RETURN NUMBER IS

v_valor PAGOS.valor%TYPE;

BEGIN

SELECT SUM(valor) valor
INTO v_valor
FROM PAGOS
WHERE id_cliente=ide_clien
AND TO_CHAR(fecha,'YYYY')=v_año;

RETURN v_valor;

END f_cita;
/



----------------------------------------------------------------------------------------------------------------------------------

4. Escribir una función que reciba la identificación de un cliente y devuelve la información completa del cliente.

CREATE OR REPLACE FUNCTION f_cliente (ide_clien CLIENTES.identificacion%TYPE)
RETURN CLIENTES%ROWTYPE IS

v_info CLIENTES%ROWTYPE;

BEGIN

SELECT *
INTO v_info
FROM CLIENTES
WHERE identificacion=ide_clien

RETURN v_info;

END f_cliente;
/


----------------------------------------------------------------------------------------------------------------------------------

5. Escribir un procedimiento almacenado que reciba la identificación de un cliente y el valor de un año X, y muestre un informe que conste de las siguientes elementos: sus datos básicos (invocar la función del numeral 2), valor total de los pagos realizados en el año X. (invocar la función del numeral 1).

CREATE OR REPLACE PROCEDURE p_informe (ide_clien CLIENTES.identificacion%TYPE, v_año VARCHAR2) AS

v_cliente CLIENTES%ROWTYPE;
v_pago PAGOS.valor%TYPE;

BEGIN

v_cliente:=f_cliente(ide_cliente);

v_pago:=f_pago(ide_cliente,v_año);

IF v_pago > 100 THEN

DBMS_OUTPUT.PUT_LINE('nombre completo: '||v_cliente.nombre||' '||v_cliente.apellido||'direccion residencia: '||
v_cliente.direccion_res||' telefono res: '||v_cliente.telefono_res||' direcion oficina: '|| v_cliente.direccion_of||' telefono of: '||v_cliente.telefono_of||' celular: '||
v_cliente.celular);

DBMS_OUTPUT.PUT_LINE('el valor total de los pagos es: '||v_pago);
ELSE
DBMS_OUTPUT.PUT_LINE('El valor no es el adecuado');
END IF;
END;
/



----------------------------------------------------------------------------------------------------------------------------------
Ejercicio en C++


1 El maestro de la clase de Matemáticas quiere determinar cual es la calificación más alta de su grupo, forma grupos de tres calificaciones y las captura. Desarrollar un programa en C++, el cual determine el mayor de las tres calificaciones, el programa debe mostrar en pantalla la calificación mayor.

using namespace std;
#include

int mayor(float a, float b, float c);

int main()
{
float nota1, nota2, nota3;
cout << "Nota mas alta \n Ingrese 3 notas: \n";

cin >>nota1>>nota2>>nota3;
cout <<"\nLa nota mas alta es: "<<>
}

int mayor(float a, float b, float c)
{
if(a>b & a>c)
{
return a;
}
if(b>a & b>c)
{
return b;
}
if(c>b & c>a)
{
return c;
}
}
XNA es una API desarrollada por Microsoft para el desarrollo de videojuegos para las plataformas Xbox 360 , Windows, Zune y ahora con la versión 4.0 Windows Phone 7.
Técnicamente es un Marco de Trabajo (Framework), basado en .NET Framework 2.0 y al igual el .NET Framework 2.0, éste corre sobre el CLR, aunque en una implementación que provee un manejo optimizado para la ejecución de videojuegos.
En otras palabras, XNA es una plataforma de desarrollo de videojuegos sobre DirectX, en la cual disponemos de cierta funcionalidad ya integrada lo que nos permite centrarnos en la parte de qué queremos hacer en nuestro juego y no en el cómo hacerlo.
bajar documentacion aquí