COMUNICADO ACTUALIZADO

Posteado en comunicado sobre Julio 23, 2008 por crizur
Hola a todos les comunico, que por algunos días dejare de escribir en el blog, debido a que estaré sin computador, sigan visitando y recomendando el blog, un saludo a todos desde Chile les escribe su amigo Crizur.
Además me gustaría empezar a escribir otro blog, me gustaría sus sugerencias respecto a que otro lenguaje les gustaría aprender.
Algunas alternativas podrían ser RUBY, PERL, SQL, PROLOG.
PROLOG este ultimo me gustaría ya que es un lenguaje lógico, que se usa en la inteligencia artificial.
Lenguajes como C, JAVA, C#, Visual Basic, creo que no seria útil realizar otro web sobre estos lenguajes, ya que hay muchas paginas referentes a estos lenguajes es cosa de buscar en el Google.
Ya dejen sus alternativas en los comentarios, nos vemos, al final ustedes van a decidir!!!
——————-
Hola a todos, bueno aun estoy sin pc, pero esta semana comienzo el segundo semestre en la universidad, asi que desde ese lugar empezare a escribir, en la semana empiezan los nuevos post, respecto al nuevo blog siguen comentan que lenguaje les gustaria, en mi particular opinion me inclino por SQL, ya entonces nos vemos.
PD : RESPECTO A LOS ACENTOS JAJA ESTE TECLADO DE ESTE CIBER DONDE ESCRIBE NO LOS TIENE CONFIGURADOS, NOS VEMOS :
PD2: BUENO RECONOSCO QUE ESTAR SIN PC , ME A PERMITIDO CARRETEAR MUCHO JOJO, PARA LOS QUE NO SEPAN QUE ES CARRETEAR SIGNIFICA ESTAR EN FIESTA, EN FIESTA, PERO RECUERDEN QUE TAMBIEN TRABAJO, SOY UN CHICO BUENO JAJ :P

Día 16 “Identificadores y Palabras Reservadas en Python”

Posteado en Python Básico con etiquetas, , , , , sobre Julio 22, 2008 por crizur
Recuerda que un identificador es un nombre dado a un elemento de un programa, en el post anterior vimos las variables.
Un identificador esta formado por cualquier sucesión de letras, dígitos y caracteres de subrayado que no comience por digito, distingue entre mayúsculas y minúsculas, pueden tener cualquier longitud, no puede coincidir con el nombre de una palabra reservada, se deben escoger identificadores significativos, es decir que poseen mayor legibilidad.
Ejemplo de identificadores validos
Radio
RaDio
ContAlumnos
Cont_Alumnos
Num1
 
Ejemplo de identificadores no validos
2E2
Miércoles
Cont-Alumnos
Conjunto Primero
 print (palabras reservadas).
1_cantidad
Recuerda que Python distingue las mayúsculas de las minúsculas, entonces por ejemplo area, Area, AREA, aRea , son 4 identificadores distintos, el ultimo ejemplo aRea no es recomendado, dado su poco legibilidad.
Dado que eres libre de llamar a una variable con el identificador que quieras, hazlo con clase, es decir escoge siempre nombres que guarden relación con los datos del problema, si por ejemplo vas a utilizar una variable para almacenar una distancia, llama a la variable distancia y evita nombres que no signifiquen nada, de este modo, los programas serán más legibles
En todo lenguaje de programación existen palabras reservadas, es decir no se pueden utilizar estas palabras como identificador de una variable, función, método, etc
Aquí la lista de las palabras reservadas hasta este momento, pueden agregarse más palabras reservadas en el futuro dependiendo de las diferentes actualizaciones que puede sufrir el interprete.
and, del, fo, is, raise, asser, elif, from, lambda, return, break, else, global, not, try, class, except, if, or while, continue, exec, import, pass, yield, def, finally, in, print.

Día 15 “Variables y Asignaciones en Python”

Posteado en Python Básico con etiquetas, , , sobre Julio 22, 2008 por crizur
En ocasiones deseamos que nuestro programa recuerde ciertos valores para usarlos más adelantes, por ejemplo necesitamos realizar un programa que calcule el perímetro de un circulo, en este programa necesitaremos una variable llamada pi.
Una variable es una estructura que contiene datos y recibe un nombre único dado por el programador, mantiene los datos asignados a ella hasta que un nuevo valor se le asigne o hasta que el programa termine.
El acto de dar un valor a una variable se le denomina asignación, al asignar un valor a una variable que no existía, python reserva un espacio en la memoria, almacena el valor en él y crea una asociación entre el nombre de la variable y la dirección de memoria de dicho espacio.
  

>>> pi = 3.14
>>> r = 1.2
>>> perimetro =2*pi*r

 

Debes tener en cuenta que las asignaciones son mudas, es decir, no provocan salida por pantalla, si deseamos ver cuánto vale una variable, podemos evaluar una expresión que sólo contiene a dicha variable.
  

>>> perimetro
7.5359999999999996

 

Así pues, para asignar valor a una variable basta ejecutar una sentencia como ésta:
variable = expresión
Ten cuidado, el orden es importante, hacer expresión = variable, no es equivalente.
Una asignación no es una ecuación matemática, sino consiste en evaluar la expresión a la derecha del símbolo igual (=), y guardar el valor resultante en la variable indicada a la izquierda del símbolo igual.
Se puede asignar valor a una misma variable cuantas veces se quiera, el efecto es que la variable, en cada instante, sólo recuerda el ultimo valor asignado, hasta que se le asigne otro valor.
  

>>> a=1
>>> 2*a
2
>>> a+1
2
>>> a=3
>>> a+a
6

Post realizado gracias al libro “Introducci

Día 14 “Enteros largos y Operadores Binarios en Python”

Posteado en Python Básico con etiquetas, , , , sobre Julio 19, 2008 por crizur

Hola hoy voy a ser dos post en uno, ya que realmente son breves Python posee un rico conjunto de tipos de datos, en el post anterior hablamos de los números complejos, ahora vamos a ver brevemente los enteros largos. El rango de los números flotantes puede resultar insuficiente para ciertas aplicaciones. Python ofrece la posibilidad de trabajar con números de cifras arbitrariamente largos. Un entero largo siempre finaliza con la letra L.  Aquí un ejemplo Fíjate números enteros cambian automáticamente a enteros largos cuando es necesario.

Observa la “L” que aparece, aunque 2 y 31 son números enteros normales, el resultado de evaluar 2**31 es un entero largo. Esto es así porque los enteros normales se codifican en complemento a 2 de 32 bits, y 2**31 no puede representarse en complemento a 2 de 32 bits

Si bien los enteros largos resultan cómodos por no producir nunca errores de desbordamiento, debes tener presente que son muy ineficientes: ocupan mucha más memoria que los enteros normales y operar con ellos resulta mucho más lento.
Bueno también hablaremos de otros operadores, recuerdas que hemos visto los operadores suma, resta, multiplicación, división, modulo, elevación, etc, además de los operadores lógicos o booleanos, hoy te voy a presentar otros ya que en Python existe una variedad elevada, que en el transcurso de este blog se irán presentando.
Hay operadores que están dirigidos a manejar la secuencia de bits que codifican los números enteros.
El operador binario & calcula la operación “y” bit a bit.
El operador binario  |  calcula la operación “o” bit a bit
El operador binario  ^ calcula la operación “o exclusiva”, la diferencia con la anterior es que la “o exclusiva” devuelve True si y sólo si los dos operandos son falsos.
El operador unario ~ invierte los bits de su operando.
Tienes además, los operandos binarios <<, >> , que desplazan los bits a izquierda o derecha tantas posiciones como se las indiques. Aquí una serie de ejemplos que ayudaran a entender estos operadores
Aun no te queda claro porque esos resultados, aquí una breve explicación
Para el primer ejemplo 5&12, nos da 4, porque??
En binario tenemos la expresión 5 que equivale (00000101) y la expresión 4 que equivale (00001100) si tenemos 5&12 entonces tenemos 00000101 & 00001100, que nos da como resultado 00000100, que equivale a 4.
La expresión nosotros la damos en números naturales pero se ejecuta como si fueran números binarios, el resultado también se muestra como en numero natural.
Bien será entendiste el ejemplo, pero no sabes aun como se pasa un numero binario a decimal o viceversa.
Extraje un ejemplo del portal wikipedia en su sección números binarios, espero te quede claro.
Decimal a binario 
Se divide el número decimal entre 2 cuyo resultado entero se vuelve a dividir entre 2 y así sucesivamente. Una vez llegados al 1 indivisible se cuentan el último cociente, es decir el uno final (todo número binario excepto el 0 empieza por uno), seguido de los residuos de las divisiones subsiguientes. Del más reciente hasta el primero que resultó. Este número será el binario que buscamos. A continuación se puede ver un ejemplo con el número decimal 100 pasado a binario.
100 |_2
 0   50 |_2
      0  25 |_2         –> 100   1100100
          1  12 |_2
              0  6 |_2
                 0  3 |_2
                      1 1
Otra forma de conversión consiste en un método parecido a la factorización en números primos. Es relativamente fácil dividir cualquier número entre 2. Este método consiste también en divisiones sucesivas. Dependiendo de si el número es par o impar, colocaremos un cero o un uno en la columna de la derecha. Si es impar, le restaremos uno y seguiremos dividiendo por dos, hasta llegar a 1. Después sólo nos queda tomar el último resultado de la columna izquierda (que siempre será 1) y todos los de la columna de la derecha y ordenar los dígitos de abajo a arriba. Y luego se haría un cuadro con las potencias con el resultado.
Ejemplo:
100|0
 50|0
 25|1   –> 1, 25-1=24 y seguimos dividiendo por 2
 12|0
  6|0
  3|1
  1|1   –> 100   1100100
Existe un último método denominado de distribución. Consiste en distribuir los unos necesarios entre las potencias sucesivas de 2 de modo que su suma resulte ser el número decimal a convertir. Sea por ejemplo el número 151, para el que se necesitarán las 8 primeras potencias de 2, ya que la siguiente, 28=256, es superior al número a convertir. Se comienza poniendo un 1 en 128, por lo que aún faltarán 23, 151-128=23, para llegar al 151. Este valor se conseguirá distribuyendo unos entre las potencias cuya suma den el resultado buscado y poniendo ceros en el resto. En el ejemplo resultan ser las potencias 4, 2, 1 y 0, esto es, 16, 4, 2 y 1, respectivamente.
Ejemplo:
  20=   1|1
  21=   2|1
  22=   4|1
  23=   8|0
  24=  16|1
  25=  32|0
  26=  64|0
  27= 128|1           128+16+4+2+1=151   10010111
Espero halla quedado claro, cualquier duda en comentarios, lo que iba a ser un post breve se convirtió en un gran post, nos vemos, saludos y gracias por sus comentarios.
Nota: Extracto del libro Introducci 

Día 13 “Números Complejos en Python”

Posteado en Python Básico con etiquetas, , sobre Julio 16, 2008 por crizur

Python también ofrece la posibilidad de trabajar con números complejos.
Los números complejos son una extensión de los números reales, estos representan todas las raíces de los polinomios, a diferencia de los reales.

Entonces los números complejos son aquellos que tienen parte imaginaria.
Una de las características de Python es que podemos trabajar con números complejos, ya que la gran mayoría de los lenguajes de programación carecen de esta.

Un número complejo puro(número imaginario) finaliza siempre con la letra j, que representa el valor de la raíz cuadrada negativa.
Un número complejo con parte real se expresa sumando la parte real a un complejo puro.
Algunos ejemplos de números complejos
4j
1+2j
2.0+3j
Ahora en el interprete de Python

En Python los números complejos con una parte real distinta de cero se puede crear con la función complex(real, imag), como en el ejemplo.

Los números complejos siempre son representados como dos números de punto flotante, la parte real y la imaginaria, para extraer éstas partes de un número complejo z utilice z.real y z.imag

Las funciones de conversión a punto flotante y entero (flota, int, long) no funcionan para los números complejos, no hay una forma correcta para convertir un número complejo en un número real, podemos utilizar abs para obtener su magnitud (como flotante) o z.real para obtener su parte real.


Día 12 “Operadores Booleanos o Lógicos en Python” Actualizado!

Posteado en Python Básico con etiquetas, sobre Julio 9, 2008 por crizur

 

Estimados, hoy vamos a hablar de los operadores lógicos y de comparación.
Existen en Python tres operadores lógicos “and “ ( y ), “or “( o ), “not”( no ).
El operador and da como resultado el valor True si y sólo si son ciertos sus dos operandos.

El operador or proporciona True si cualquiera de sus operandos es True, y False sólo cuando ambos operandos son False.

El operador not es unario, y proporciona el valor Trae si su operando es False y viceversa.

Tenemos que saber también la prioridad al usar los operadores lógicos.

En primer lugar tenemos al operador de Negación (not), luego al de Conjunción (and) y por ultimo el de Disyunción(or).

Además tenemos que saber la asociatividad que presentan estos operadores, el not no tiene asociatividad por ser unario, el and y or son asociativos por la izquierda ya que son binarios.

Aquí están algunos ejemplos

Te comento que existe una familia de operadores que devuelven valores booleanos, en esta tabla algunos operadores.

 

Aquí están algunos ejemplos

Espero que este claro cualquier duda en los comentarios, nos vemos.