lunes, 25 de octubre de 2010

.: Instrucciones TCL :.

:: Instrucciones de TCL ::



Materia. Lenguajes de Programación

Hora. M1 -M3 (Martes)

Comenzaremos con lo más básico de TCL.

Declaracion de variables

A diferencia de Perl que con solo colocarle el simbolo $ antes de cada variable aun aunque duera nueva, era suficiente, en TCL cada vez que se vaya a utilizar una variable nueva, es necesaria la instrucción set. Ejemplo:

set A 0 //Se declara la variable A asignandole el valor de 0

set t [expr $A+$B+$C+$D] // Se declara t que es igual a la suma de A, B, C y D

Cada vez que se vaya a utilizar una variable antes declarada, se le antepone en simbolo $. Excepto cuando se incremente con la instrucción “incr”.

incr A //FUNCIONARÁ

incr $A // NO FUNCIONARÁ

Mostrar información en Pantalla

Para realizar esto, basta con la función puts y colocar el texto entre comillas dobles ( “ “ ). Ejemplo:

puts " \n \t \t REGISTRO DE VOTOS \n "

A diferencia de Python y Perl, TCL no se pone muy difícil para imprimir variables junto con texto, pues las variables se colocan dentro de las comillas dobles anteponiendole el simbolo $, de lo contarario marca error. Ejemplo:

puts "PRI:-------> $A" -------------------->> FUNCIONA BIEN

puts "PRI:------->” $A -------------------->> NO FUNCIONA

Para imprimir sólo variables, basta con:

puts $A

Leer datos

La instrucción usada para esto es un poco similar a la de Perl.

gets stdin variable

Ejemplo:

gets stdin op

SWITCH

switch $op {
   1 { incr A }
   2 { incr B }
   3 { incr C }
   4 { incr D }
   0 { puts "\nFin del Registro" }
   default { puts "Opcion Invalida" }
}

Como pueden ver, la sintaxis de SWITCH es muy similar a C, la diferencia es que la variable a analizar no se coloca entre parentesis, ya no se coloca “case”, sólo el número (o puede ser letra) un especio y entre llaves ( { } ) el proceso a realizar.

WHILE

while {$op != 0} {
   puts "Voto a favor de: "
   gets stdin op
}

El while mantiene la misma sintaxis de C, con la diferencia de que la condición no va entre parentesis, sino entre llaves.

IF – ELSE

Tiene las mismas simitudes que el while en cuestión de la condición, mientras que el resto de la sintaxis en similar a C

if { $A > $B && $A > $C} {
   puts "PRI"
} elseif { $B > $A && $B > $C} {
   puts "PAN"
}

NOTA. Los procesos del WHILE, SWITCH e IF – ELSE si se colocan dentro de llaves como en C. No se confundan con Python (el cual no se usa llaves).

OPERACIONES MATEMÁTICAS

Para esta acción podemos ver cierta similitud con Shell, donde también se usa la palabra “expr”. Ejemplo:

set A [expr $lado * $lado] //Donde A es variable nueva en este punto.

La diferencia radica en que todo en lugar de usar una especie de comillas fenómenas difíciles de colocar, se usan corchetes ( [ ] ) anteponiendole claro la variable seguida de un espacio en ves del signo de igual ( = ), como en Shell.

Cualquier aportación útil de TCL es bienvenida.

Saludos a todos.

1 comentario: