Tcl - Funciones integradas

Tcl proporciona una serie de funciones integradas (procedimientos) para diversas operaciones. Esto incluye:

Cada uno de los anteriores, excepto las funciones matemáticas y del sistema, se tratan en capítulos anteriores. Las funciones matemáticas y integradas del sistema se explican a continuación.

Funciones matemáticas

Las funciones matemáticas disponibles en Tcl se enumeran en la siguiente tabla:

No Señor. Método y descripción
1

abs arg

Calcula el valor absoluto de arg.

2

acos arg

Calcula el arcocoseno de arg.

3

asin arg

Calcula el arcoseno de arg.

4

atan arg

Calcula el arcotangente de arg.

5

atan2 yx

Calcula el arcotangente del cociente de sus argumentos (y / x).

6

ceil arg

Calcula el número entero más pequeño mayor o igual que un número.

7

cos arg

Calcula el coseno de arg.

8

cosh arg

Calcula el coseno hiperbólico de arg.

9

double arg

Calcula si arg es un valor de punto flotante, devuelve arg; de lo contrario, convierte arg en punto flotante y devuelve el valor convertido.

10

exp arg

Calcula una función exponencial (e elevado a la potencia de arg).

11

floor arg

Calcula el entero más grande menor o igual que arg.

12

fmod xy

Calcula el resto de punto flotante de la división de x por y. Si y es 0, se devuelve un error.

13

hypot xy

Calcula la longitud de la hipotenusa de un triángulo rectángulo sqrt (x * x + y * y).

14

int arg

Calcula si arg es un valor entero del mismo ancho que la palabra de la máquina, devuelve arg; de lo contrario, convierte arg en un número entero.

15

log arg

Calcula el logaritmo natural de arg.

dieciséis

log10 arg

Calcula el logaritmo en base 10 de arg.

17

pow xy

Calcula el valor de x elevado a la potencia y. Si x es negativo, y debe ser un valor entero.

18

rand

Calcula un número pseudoaleatorio entre 0 y 1.

19

round arg

Calcula el valor de arg redondeado al entero más cercano.

20

sin arg

Calcula el seno de arg.

21

sinh arg

Calcula el seno hiperbólico de arg.

22

sqrt arg

Calcula la raíz cuadrada de arg. arg debe ser positivo.

23

srand arg

Calcula un número pseudoaleatorio entre 0 y 1. El argumento, que debe ser un número entero, se usa para restablecer la semilla para el generador de números aleatorios de rand.

24

tan arg

Calcula la tangente de arg.

25

tanh arg

Calcula la tangente hiperbólica de arg.

26

wide arg

Calcula un valor entero de al menos 64 bits de ancho (por extensión de signo si arg es un número de 32 bits) para arg si aún no lo es.

A continuación se dan algunos ejemplos que utilizan funciones matemáticas:

#!/usr/bin/tclsh

namespace import ::tcl::mathfunc::*
puts [tan 10]
puts [pow 10 2]
puts [ceil 10.34]
puts [hypot 10 20]
puts [srand 45]
puts [log 10]
puts [srand 45]

Cuando se ejecuta el código anterior, produce el siguiente resultado:

0.6483608274590866
100.0
11.0
22.360679774997898
0.0003521866166741525
2.302585092994046
0.0003521866166741525

Funciones del sistema

Las funciones importantes del sistema en Tcl incluyen,

  • clock - función de segundos, que devuelve la hora actual en segundos.

  • clock - función de formato, que formatea los segundos en fecha y hora.

  • clock - función de escaneo, que escanea la cadena de entrada y la convierte en segundos.

  • open - función, que se utiliza para abrir un archivo.

  • exec - función, que se utiliza para ejecutar un comando del sistema.

  • close - función, que se utiliza para cerrar un archivo.

Algunos ejemplos de las funciones anteriores se enumeran a continuación:

#!/usr/bin/tclsh

#get seconds
set currentTime [clock seconds]
puts $currentTime
#get format 
puts "The time is: [clock format $currentTime -format %H:%M:%S]"
puts "The date is: [clock format $currentTime -format %D]"

set date "Jun 15, 2014"
puts [clock scan $date -format {%b %d, %Y}]

puts [exec ls]
puts [exec dir]

set a  [open input.txt]
puts [read $a];
puts $a
close $a

Cuando se ejecuta el código anterior, produce el siguiente resultado:

1402819756
The time is: 03:09:16
The date is: 06/15/2014
1402808400
input.txt
main.tcl
input.txt  main.tcl
This is the file you can use to provide input to your program and later on open
   it inside your program to process the input.

file3

La siguiente tabla proporciona las cadenas de lista que se pueden utilizar para formatear la fecha y la hora.

No Señor. Formato y descripción
1

%a

Día en forma abreviada, por ejemplo: Sol.

2

%A

Día en forma completa, por ejemplo: domingo.

3

%b

Mes en forma abreviada.

4

%B

Mes en forma completa.

5

%d

Dia del mes.

6

%j

Día juliano del año.

7

%m

Mes en número.

8

%y

Año en dos dígitos.

9

%Y

Año en cuatro dígitos.

10

%H

Hora en formato de 24 horas.

11

%I

Hora en reloj de 12 horas.

12

%M

Minutos.

13

%S

Segundos.

14

%p

Am o PM.

15

%D

Fecha en número, mm / dd / aa.

dieciséis

%r

Hora en reloj de 12 horas.

17

%R

Hora en reloj de 24 horas sin segundos.

18

%T

Hora en reloj de 24 horas con segundos.

19

%Z

Nombre de la zona horaria, como GMT, IST, EST, etc.