Tasker Para hablar de todo lo relacionado con la aplicación tasker

Respuesta
 
Herramientas
  #1  
Viejo 16/03/13, 07:29:13
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
Matemáticas en Tasker

Lo que sigue es una traducción de las funciones matemáticas de Tasker, texto que aparece en inglés (en la guía para hispanohablantes ) en http://tasker.dinglisch.net/userguide/es/maths.html

En mensajes siguientes, además de comentarios y dudas, podemos ir poniendo ejemplos de cómo usamos estas funciones matemáticas en nuestras tareas, para que todos podamos aprender de ello.

Hay dos funciones (expm1 y ulp) que no están bien explicadas en el texto original y que tal vez podáis ayudarme a entender. También agradeceré comentarios sobre cualquier otro error o traducción poco acertada.

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

¿Dónde se utilizan matemáticas?
  • En la acción Establecer Variable activando la casilla Calcular.
  • Con la acción Si (If), si se selecciona una comparación matemática como < o =
  • Con las condiciones individuales de acción cuando se selecciona la comparación matemática.

Operadores
  • + - * - los operadores básicos
  • % - módulo
  • ^ - Potencia

Constantes
  • E - la base de los logaritmos naturales
  • EUL - la constante de Euler
  • LN2 - log de ​​base 2 e
  • LN10 - log base 10 de e
  • LOG2E - log de ​​la base e 2
  • LOG10E - log de ​​la base e 10
  • PHI - la proporción áurea
  • PI - la relación de la circunferencia de un círculo y su diámetro

Funciones

Las funciones toman su argumento entre paréntesis, por ejemplo sin(90)
  • abs - valor absoluto
  • acos - arco coseno, el ángulo devuelto se encuentra en el rango de 0,0 y pi
  • asin - arco seno, el ángulo devuelto está en el rango de-pi / 2 a través de pi / 2
  • atan - arco tangente; el ángulo devuelto está en el rango de-pi / 2 a través de pi / 2
  • cbrt - raíz cúbica
  • ceil - redondeo al alza: valor más pequeño que es mayor o igual al argumento y es un número entero
  • cos - coseno trigonométrico
  • cosh - coseno hiperbólico
  • exp – constante de Euler elevada a la potencia del valor
  • expm1 - ex-1 (nota 1 al pie)
  • floor – redondeo a la baja: valor más grande que es menor o igual al argumento y es un número entero
  • getExp - exponente imparcial utilizado en la representación del valor
  • log - logaritmo natural (base e)
  • log10 - logaritmo en base 10
  • log1p - logaritmo natural de (val +1)
  • nextup - valor de punto flotante adyacente al valor, en la dirección de infinito positivo
  • round – entero de 64 bits más cercano al argumento
  • roundhe - doble valor que está más cerca en valor para el argumento y es igual a un entero matemático, utilizando el método de redondeo medio de equilibrio.
  • signum – función signum del argumento; cero si el argumento es cero; 1.0 si el argumento es mayor que cero; -1.0 si el argumento es menor que cero
  • sin - seno trigonométrico
  • senh - seno hiperbólico
  • sqrt - raíz cuadrada (de números positivos)
  • tan - trigonométrica tangente
  • tanh - tangente hiperbólica
  • todeg - convierte un ángulo medido en radianes a un ángulo aproximadamente equivalente medido en grados
  • torad - convierte un ángulo medido en grados a un ángulo aproximadamente equivalente medido en radianes
  • ulp - tamaño de un "ulp" del algumento (Nota 2 al pie)

-----------------------------------------
Notas al pie.

(1) expm1 - Devuelve exp(numero)-1, calculado de tal forma que no pierde precisión incluso cuando el valor del número se aproxima a cero. Así se explica en páginas como http://phpmanuals.net/es/function.expm1.html

(2) ulp - En otras páginas dedicadas a temas similares, ULP se puede referir a “Unit in Last Position”, “Units in Last Place”, unidades en el último lugar, el dígito menos significativo, la diferencia entre el valor y otro valor inmediatamente superior que tuviera el mismo número de dígitos.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Los siguientes 3 usuarios han agradecido a Caravantes su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]


  #2  
Viejo 16/03/13, 08:29:21
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
Ahí va un primer ejemplo del uso de matemáticas

Establecer variable, %segundos a %TIMES - (100*floor(%TIMES/100))

La variable %TIMES es un número que indica los segundos. Pero es un número muy lago (10 dígitos) que indica los segundos transcurridos desde 1970, creo, y yo solo necesitaba dos dígitos, los últimos de esa serie de 10 dígitos. La fórmula siguiente extrae esos dos últimos dígitos y desprecia el resto.

%TIMES - (100*floor(%TIMES/100))

Más detalles sobre este asunto en el perfil y la tarea correspondientes, en
http://www.htcmania.com/showpost.php?p=7966146
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Los siguientes 3 usuarios han agradecido a Caravantes su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]
  #3  
Viejo 20/03/13, 21:58:54
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Re: Matemáticas en Tasker

Caravantes me interesa mucho lo de convertir la variable times a dos dígitos para la app que algún día acabaré...
Pero no entiendo eso de que pone de floor en la fórmula... ¿?
Por cierto flipe cuando efectivamente leí que esta calculada desde el año 1970! En fin...


Enviado desde mi GT-N7000 usando Tapatalk 2
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #4  
Viejo 20/03/13, 23:41:03
Array

[xs_avatar]
Lukevalci Lukevalci no está en línea
Usuario muy activo
 
Fecha de registro: jul 2010
Localización: Madrid
Mensajes: 891
Modelo de smartphone: G2 / MiPad / Minix 8H-Plus
Tu operador: Orange
Buenas, mlesir.

Lo que hace la tarea es lo que sigue. Te pongo los pasos que hace Tasker con un ejemplo práctico para que lo veas mejor.

1) floor(%TIMES/100)) ---> redondea a la baja al mayor número entero // Ej. 99999/100= 999,99 ---> 999

2) (100*floor(%TIMES/100)) ---> Multiplicamos por 100 el resultado de 1) ---> 99900

3) %TIMES - (100*floor(%TIMES/100)) ---> Restamos %TIMES al resultado de 2) ---> 99999 - 99900 = 99

Saludos,

Última edición por Lukevalci Día 20/03/13 a las 23:46:37.
Responder Con Cita
  #5  
Viejo 21/03/13, 01:42:59
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por mlesir Ver Mensaje
no entiendo eso de que pone de floor en la fórmula... ¿?
Tasker tiene dos funciones para redondear al entero más cercano.
floor (significa "suelo") hace un redondeo a la baja.
floor(12.34567) da como resultado 12 que es el valor entero inferior más cercano
ceil (significa "techo") hace un redondeo al alza.
ceil (12.34567) da como resultado 13 que es el valor entero superior más cercano

El resto de las funciones matemáticas se utilizan igual. Por ejemplo, abs(%cifra) devuelve el valor absoluto, o sea que da como resultado la misma cifra pero sin tener en cuenta un posible signo negativo. Eso significa que si la cifra original era negativa la devuelve como positiva, y si ya en origen era positiva la función abs devuelve la misma cifra.

Te explicaré poco a poco cómo he construido ese algoritmo de los segundos.
Poco a poco fui creando una tarea en la que fui agregando varias notificaciones. Ponía una notificación y probaba la tarea, luego añadía otra notificación con otra formula más compleja y volvía a ejecutar la tarea para comprobar la notificación, y así sucesivamente. Es un buen método para ir verificando que los cálculos avanzan correctamente.

1 Notificación %TIMES
Así comprobé que la variable %TIMES contiene una cifra del estilo siguiente: 1362966168
Ejecutando repetidamente esa acción vi que la cifra se incrementa cada segundo, o sea que representa un número de segundos a partir de un momento inicial. Se me ocurrió calcular ese momento inicial dividiendo esa cifra entre 60 para obtener el mismo dato en minutos; el resultado lo divido otra vez entre 60 para obtener horas; vuelvo a dividir entre 24 y entre 365 para obtener años, y el resultado final son 43.21937366818874, o sea 43 años y pico. Hace 43 años y pico era cuando comenzaba el año 1970, que es cuando parece ese contador comenzó a funcionar. Sigamos con la tarea y los cálculos.

2 Notificación %TIMES/100 da una cifra del estilo 13629661.68

3 Notificación floor(%TIMES/100) da 13629661 eliminando los decimales por redondeo a la baja

4 Notificación 100*floor(%TIMES/100) da 1362966100 pues pone dos ceros en el lugar que ocupaban los dos últimos digitos de la cifra original

5 Notificación %TIMES - (100*floor(%TIMES/100)) da como resultado 68 que son los dos dígitos buscados (1362966168 - 1362966100 = 68)

Este algoritmo devuelve una cifra de dos dígitos que parecen ser segundos pero hay que considerar una salvedad: esa cifra va aumentando hasta llegar a 99, luego pasa a 00 y luego vuelve a aumentar. Si utilizas la variable %TIME (que devuelve horas y minutos), y le añades el algoritmo citado, así
Notificación %TIME : %TIMES - (100*floor(%TIMES/100))
obtienes algo como 23:59 : 99
lo cual puede parecer muy extraño porque en ese formato de presentación el número de segundos jamás debería ser superior a 59. Y además podrá ocurrir que ese contador de segundos pase de 99 a 00 en un momento en el que las horas y los minutos no han cambiado. Lo cual significa que un resultado del tipo 23:59 : 99 puede ser cronológicamente anterior a otro resultado del tipo 23:59 : 00

Aún teniendo en cuenta todas estas consideraciones, puede merecer la pena usarlo de esta forma por lo sencillo y lo directo que resulta. En el perfil que yo estaba construyendo, lo que me interesaba era crear dos nombres de archivo diferentes para dos llamadas que se produjeran en el mismo minuto, y este sistema resolvía el problema de forma suficiente.

Otra posibilidad sería calcular los segundos reales tal como aparecen en un reloj digital. Es un poco más complejo pero no creo que sea difícil, así que voy a intentarlo. Tengamos en cuenta que
Una hora tiene (60*60) 3600 segundos.
Un día tiene (60*60*24) 86400 segundos.
Primero vamos a calcular el tiempo transcurrido desde que se inició el contador %TIMES, en días completos + horas completas + minutos completos.

1 Establecer variable %Segundos a %TIMES
2 Establecer variable %dias a floor(%Segundos/86400)
3 Establecer %Segundos a %Segundos - (%dias * 86400)
4 Establecer variable %horas a floor(%Segundos/3600)
5 Establecer %Segundos a %Segundos - (%horas * 3600)
6 Establecer variable %minutos a floor(%Segundos/60)
7 Establecer %Segundos a %Segundos - (%minutos* 60)

La tarea va calculando el número de días completos, horas completas y minutos completos (transcurridos desde que ese contador comenzó a funcionar), y tras cada uno de esos cálculos, en la variable %Segundos va quedando el resto que queda descontando el tiempo (días/horas/minutos) ya procesados. O sea que al final, en %Segundos tenemos los segundos reales, una cifra cuyo valor está entre 00 y 59 y que debería coincidir con los segundos que marcase un reloj digital. Las cifras de horas y minutos también deben coincidir con un reloj digital normal. Esta tarea podría ser independiente y funcionar como una subrrutina o subtarea, para ser llamada o lanzada desde otras tareas más importantes en las que ya no hay que preocuparse de estos cálculos pesados y tediosos: tras la ejecución de esta tarea, la variable %Segundos queda disponible para ser consultada o utilizada en cualquier otra tarea que necesite ese dato.

Todo esto lo estoy escribiendo aquí a bote-pronto, no lo he probado: si descubrís algún error os agradeceré que lo digáis. Y si alguien quiere aportar mejoras u otro tipo de cálculos, pues bienvenido.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker

Última edición por Caravantes Día 21/03/13 a las 01:59:45.
Responder Con Cita
  #6  
Viejo 21/03/13, 15:31:15
Array

[xs_avatar]
Lukevalci Lukevalci no está en línea
Usuario muy activo
 
Fecha de registro: jul 2010
Localización: Madrid
Mensajes: 891
Modelo de smartphone: G2 / MiPad / Minix 8H-Plus
Tu operador: Orange
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Otra posibilidad sería calcular los segundos reales tal como aparecen en un reloj digital
Si lo que pretendemos es conocer los segundos aproximados, hay un procedimiento más sencillo:

1) Establecer variable %segundos a %TIMES - (100*floor(%TIMES/100))

2) Si %segundos = 60
2.1) Establecer variable %segundos a 00
3) Else Si %segundos > 60
3.1) Establecer variable %segundos a %segundos - 60
4) Else Si %segundos < 60
4.1) Detener
5) Fin si

Si ahora hacemos un Pop Up de %segundos nos mostrará el valor aproximado de los segundos en formato ''

Última edición por Lukevalci Día 21/03/13 a las 18:06:21.
Responder Con Cita
Gracias de parte de:
  #7  
Viejo 21/03/13, 18:20:51
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Otra posibilidad sería calcular los segundos reales tal como aparecen en un reloj digital.
Me he dado cuenta de que, si lo que pretendemos es conocer solo los segundos, hay un procedimiento mucho más sencillo:
1 Establecer variable %segundos a %TIMES - (60*floor(%TIMES/60)) , calcular

Eso es todo.
Asunto resuelto con la misma simplicidad que mi algoritmo inicial, solo ha habido que cambiar los cienes por sesentas.

Matemáticamente es correcto pero no siempre coincide con los segundos de un reloj digital. Puede que la cifra resultante sea menor de 10 y los segundos de un reloj digital siempre tienen dos dígitos; en ese caso hay que añadir un cero previo:
2 Establecer variable %segundos a 0%segundos si %segundos < 10
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker

Última edición por Caravantes Día 06/01/14 a las 00:49:08.
Responder Con Cita
Gracias de parte de:
  #8  
Viejo 21/03/13, 20:19:18
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Re: Matemáticas en Tasker

Pues gracias a los dos. Muy buena la aportación si señor. La verdad es que presentar en la app que estoy haciendo un a ristra de números no iba a ser comprensible.
Todavía no lo he probado pq estoy con otra parte pero de seguro que lo utilizaré.

Enviado desde mi GT-N7000 usando Tapatalk 2
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #9  
Viejo 10/04/13, 19:42:58
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Pues ya lo he probado y he de decir que si no hubierais escrito esto los dos me hubiera costado sangre.
Lo he probado porque tengo una escena con seis casillas. En estas se van metiendo los valores de un array, se van metiendo de seis en seis. El problema venia cuando quería saber que casilla ocupa un elemento del array que he creado. Por ejemplo si creo una nueva entrada que se mete como %Var26 que casilla ocuparía de las seis?
Pues con esto consigo que tasker lo sepa:
Accion: (calcular marcado)
Set variable %Ndecasilla a %Wct(#<)-((floor((%Wct(#<)-1)/6))*6)
El - 1 es porque si no los múltiplos de 6, 6,12,18...,me los calcula como 0.
Así que gracias Caravantes y Lukevalci.


Enviado desde mi GT-N7000 usando Tapatalk 2
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #10  
Viejo 10/04/13, 22:35:32
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por mlesir Ver Mensaje
...tengo una escena con seis casillas. En estas se van metiendo los valores de un array, se van metiendo de seis en seis. El problema venia cuando quería saber que casilla ocupa un elemento del array que he creado. Por ejemplo si creo una nueva entrada que se mete como %Var26 que casilla ocuparía de las seis?
Vale, creo que el problema está entendido, y la forma de solucionarlo también pero... Porfa, explicanos qué contiene la variable %Wct y concretamente el significado de las partes "(#<)" que incluyes en esa fórmula:

Set variable %Ndecasilla a %Wct(#<)-((floor((%Wct(#<)-1)/6))*6)

Sospecho que estás manejando una tabla pero no entiendo cómo funciona.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #11  
Viejo 11/04/13, 16:51:35
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Sospechas bien mi querido Caravantes jeje. Efectivamente es para una especie de base de datos. La variable contiene nombres.
Esto: %Var(#<) lo que hace es decirte el valor del ultimo elemento de un array, pero no el contenido. Si %Var26 contiene Carlos no te da Carlos si no 26.
Dejame que haga otro post y te explico como estoy haciendo yo las bases de datos en Tasker.

EDITO: He creado un nuevo post "Como manejar y crear bases de datos en Tasker". Ahí explico cómo lo estoy haciendo yo.

Enviado desde mi GT-N7000 usando Tapatalk 2
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969

Última edición por mlesir Día 12/04/13 a las 17:14:45.
Responder Con Cita
  #12  
Viejo 13/05/13, 05:45:26
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
En el siguiente post hay un perfil que también utiliza bastante las matemáticas. Se trata de una tarea que -entre otras cosas- calcula la distancia entre dos ubicaciones GPS: valor absoluto, conversión de grados a metros, redondeos, raiz cuadrada al estilo pitagórico...
http://www.htcmania.com/showthread.php?p=8699477
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker

Última edición por Caravantes Día 28/06/13 a las 00:09:40.
Responder Con Cita
  #13  
Viejo 22/07/13, 12:26:12
Array

[xs_avatar]
soymicmic soymicmic no está en línea
Usuario muy activo
 
Fecha de registro: oct 2009
Localización: Madrid
Mensajes: 1,063
Modelo de smartphone: P8Pro / P6 / OP6T / OP3T / Mi4C / Nexus4 / Desire
Tu operador: Pepephone
Variables logicas y flip-flop

Bueno pues una pequeña aportación para variables tipo lógicas

Tenemos un caso como este para darle la "vuelta" a una variable:
A1: Si (if) [ %SEGURO ~ NO ]
A2: Establecer variable [ Nombre:%SEGURO A:SI Calcular:Apagado Añadir:Apagado ]
A3: Else
A4: Establecer variable [ Nombre:%SEGURO A:NO Calcular:Apagado Añadir:Apagado ]
A5: Fin si (End if)

Son 5 acciones para hacer un cambio de variable (que solo puede tomar 2 valores: Si / No)

Podemos optimizarlo a una sola accion si usamos los valores 0 y 1:
A1: Establecer variable %SEGURO a 1 - %SEGURO con Calcular Activado

De esta forma Si Seguro es 1 al pasar por la operacion pasará a ser 0 y viceversa.

Última edición por soymicmic Día 23/07/13 a las 08:06:19. Razón: Edito: añadir la opción Calcular a la hora de establecer la variable
Responder Con Cita
Los siguientes 5 usuarios han agradecido a soymicmic su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]
  #14  
Viejo 22/07/13, 12:59:19
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Soymicmic... Genial! Elegante y sencillo... Muy buen aporte.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
Gracias de parte de:
  #15  
Viejo 22/07/13, 23:18:06
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por soymicmic Ver Mensaje
A1: Establecer variable %SEGURO a 1 - %SEGURO
Creo que si no se activa la opción de CALCULAR, la variable acabará conteniendo lo siguiente: "1 - %SEGURO".
Para que funcione según lo previsto, hay que indicar que se trata de un cálculo matemático, así:

Establecer variable [ Nombre:%SEGURO A:1-%SEGURO Calcular:Encendido Añadir:Apagado ]
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Gracias de parte de:
  #16  
Viejo 23/07/13, 01:03:24
Array

[xs_avatar]
mlesir mlesir no está en línea
Usuario muy activo
 
Fecha de registro: abr 2012
Mensajes: 2,263
Modelo de smartphone: OnePlus One,BQ Edison1, GoogleChrome,
Tu operador: Pepephone
Bien observado Caravantes. Efectivamente levas razón hay que marcarlo.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Responder Con Cita
  #17  
Viejo 21/11/13, 17:48:42
Array

[xs_avatar]
darkopro darkopro no está en línea
Usuario muy activo
 
Fecha de registro: mar 2010
Mensajes: 3,249
Modelo de smartphone: Galaxy S3
Tu operador: Vodafone
Yo tengo una duda a ver si la podéis solucionar. Quiero que cuando ejecuto una tarea, si lo durante un periodo de tiempo me haga otra cosa. Se que puedo usar perfiles de tiempo que establezcan una variable y en función de esa variable ejecute las tareas de una forma u otra. El problema es que tendría que usar bastantes perfiles de tiempo y no quiero llenar tasker de perfiles de tiempo.

El ejemplo de lo que busco sería:
Si cuando realizo la tarea la variable %TIMES tiene un valor entre 3760 y 4587 (por ejemplo) efectúe una cosa
Responder Con Cita
  #18  
Viejo 22/11/13, 00:34:15
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
Darko, vuelve a leer lo que has escrito ("si lo durante") porque creo que se te ha olvidado incluir alguna palabra y no se entiende bien.

 Cita: Originalmente Escrito por darkopro Ver Mensaje
El ejemplo de lo que busco sería: Si cuando realizo la tarea la variable %TIMES tiene un valor entre 3760 y 4587 (por ejemplo) efectúe una cosa
Lo que (parece que) estás preguntando tiene una respuesta sencilla y creo que tú sabes hacerlo de sobra:

- Si(if) %TIMES > 3760
- Si(if) %TIMES < 4587
... acción o acciones a ejecutar cuando se cumplan las dos condiciones
- FinSi(Endif)
- FinSi(Endif)
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
  #19  
Viejo 22/11/13, 12:19:49
Array

[xs_avatar]
darkopro darkopro no está en línea
Usuario muy activo
 
Fecha de registro: mar 2010
Mensajes: 3,249
Modelo de smartphone: Galaxy S3
Tu operador: Vodafone
 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Darko, vuelve a leer lo que has escrito ("si lo durante") porque creo que se te ha olvidado incluir alguna palabra y no se entiende bien.



Lo que (parece que) estás preguntando tiene una respuesta sencilla y creo que tú sabes hacerlo de sobra:

- Si(if) %TIMES > 3760
- Si(if) %TIMES < 4587
... acción o acciones a ejecutar cuando se cumplan las dos condiciones
- FinSi(Endif)
- FinSi(Endif)
Cierto caravantes, me había calentado la cabeza pensando en hacerlo sólo con un solo comando cuando lo puedo hacer así perfectamente...
Responder Con Cita


  #20  
Viejo 19/12/13, 02:21:36
Array

[xs_avatar]
Caravantes Caravantes no está en línea
Usuario muy activo
· Votos compra/venta: (1)
 
Fecha de registro: feb 2011
Mensajes: 2,200
Modelo de smartphone: Samsung Galaxy S9
Tu operador: Lowi
 Cita: Originalmente Escrito por kalippo Ver Mensaje
el % ademas de servir como identificador de variables tambien es el mod matematico lo que nos regresa el residuo de una division
Traigo aquí algo que el compañero Kalippo ha aportado en otro hilo porque descubre un detalle muy interesante desde el punto de vista matemático. Podemos utilizar el operador MÓDULO que nos devuelve el resto de una división en la que solo se usan números enteros. Por ejemplo, al dividir 100 entre 22 nos da como cociente entero 4 y como resto queda 12. En tasker , para obtener el resto hay que poner un carácter de porcentaje entre dividendo y divisor. así, el resto del ejemplo se puede obtener directamente mediante la operación siguiente:

- Establecer variable %resto a 100%22, calcular encendido.

Este operador MÓDULO está referenciado en el primer post de este hilo, pero no nos habíamos percatado de ello, o no sabíamos usarlo. De hecho, varios mensajes del hilo tratan de buscar un método sencillo para obtener cuántos segundos sueltos (fragmento menor de un minuto) hay en la variable %TIMES. Hasta ahora, la mejor propuesta era la siguiente:

 Cita: Originalmente Escrito por Caravantes Ver Mensaje
Me he dado cuenta de que, si lo que pretendemos es conocer solo los segundos, hay un procedimiento mucho más sencillo:
1 Establecer variable %segundos a %TIMES - (60*floor(%TIMES/60))
Eso es todo.
Pues ahora Kalippo viene a decirnos que el MÓDULO nos permite una ecuación más simple:

- Establecer variable %segundos a %TIMES%60, calcular encendido.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
Responder Con Cita
Gracias de parte de:
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Otro software para Android > Tasker



Hora actual: 21:12:44 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /