Comunidad de diseño web y desarrollo en internet online

Sumas, restas, multiplicaciones, divisiones, potencias...etc

Citar            
MensajeEscrito el 03 Ago 2005 11:57 pm
Hola, estoy viendo que en esto del actionscript aparte de otros problemas que pueda tener por haber empezado hace bastante poco, el que mas me incordia es el que tiene que ver casi con cualquier operacion matematica, es decir por ejemplo despues de duplicar una instancia y usar por ejemplo una resta, o usar el _xmouse o _ymouse tambien con una resta.. en fin cosas asi, por eso me preguntaba si no hay un estandar (aunque no sea siempre asi) que te "obligue" para un cierto ejercicio a usar una determinada operacion matematica.
Por ejemplo:
Para mover un movieclip con xmouse hace falta restarle a la instancia, xmouse o al reves(que no lo tengo muy claro).
No se si se me entiende lo que quiero decir.
Si por casualidad es como yo creo que es( es decir que cierta operacion matematica este destinada a hacer un tipo de ejercicio) me gustaria que pusieseis el para que se usa mas frecuentemente esa determinada operacion.
Pues eso
Nada mas
Saludos y gracias

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Ago 2005 01:04 am
no entiendo que quieres hacer :?

este codigo hace lo que quieres? :?

Código :

onEnterFrame = function (){
mc._y= _root._ymouse;
mc._x= _root._xmouse;
}

pruebalo en un nuevo documento, pon el codigo en el primer frame de la pelicula principal y me cuentas :)

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 04 Ago 2005 01:19 am
o algo asi

function redimensionar(x,y,ancho,alto, aceleracion) {
fondo.onEnterFrame = function() {
this._x += (x-this._x)/aceleracion;
this._y += (y-this._y)/aceleracion;
this._width += (ancho-this._width)/aceleracion;
this._height+= (alto-this._height)/aceleracion;
if (Math.abs(x-this._x)<0.5 && Math.abs(y-this._y)<0.5 && Math.abs(ancho-this._width)<0.5 && Math.abs(alto-this._height)<0.5) {
this._x = x;
this._y = y;
this._width = ancho;
this._height = alto;
delete this.onEnterFrame;
}
};
};

:?

Por FeNtO

BOFH

5091 de clabLevel

18 tutoriales

1 ejemplo

  Bastard Operators From Hell

FeNtO DataCenter

clabbrowser
Citar            
MensajeEscrito el 04 Ago 2005 02:44 am
No, no va por ahi el asunto, creo que me explique mal, intentare hacerlo mejor.
A ver yo tengo bastantes problemas con todo ese tipo de codigo que empieza a restar variables a sumarlas, dividirlas etc. pues mi pregunta es la siguiente
supongamos una resta (me voy a basar en el ejercicio de Fento para explicarlo)

Código :

ancho-this._width

bueno pues segun esto restamos el ancho de algo - el ancho de otra cosa que si no me equivoco esto daria 0 por que creo que las variables restadas son exactamenet iguales. Bien pues independientemente del resultado que de esa operacion mi pregunta va encaminada hacia que hace exactamente esta operacion.
Como no lo se voy a poner un ejemplo inventado de lo que haria para que os hagais una idea de lo que quiero.
Pues esta operacion por ejemplo lo que hace es determinar el punto medio del escenario y la resta vale para determinar ese punto, fijandonos en un punto a de referencia a y restandolo de la instancia B.


Esto es algo parecido a lo que quiero, saber si por ejemplo una resta suele valer siempre para el mismo fin o una division o una multiplicacion.

Lo cierto es que no se si lo estoy aclarando o lo estoy empeorando, espero que me haya explicado algo mejor que antes
En sintesis es lo que he dicho una explicacion(si es posible y los ejercicios de operaciones matematicas mantienen una estructura) de lo que hace una operacion matematica entre funciones, variables e instancias.
Esto es lo que quiero.
Saludos

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Ago 2005 02:51 am
:? :shock:

(FeNtO corre por el rifle SWAT lo introduce en la boca y jala de el gatillo)

Por FeNtO

BOFH

5091 de clabLevel

18 tutoriales

1 ejemplo

  Bastard Operators From Hell

FeNtO DataCenter

clabbrowser
Citar            
MensajeEscrito el 04 Ago 2005 03:13 am
te estas enredando demas, las operaciones matematicas son exactas en su totalidad ya sea en un examen de matematica o en un lenguaje de programacion, 100-50 siempre va a ser igual a 50 donde lo hagas, cuando tu usas las propiedades ancho, altura, etc en actionscript son de acuerdo a tu necesidad, no hay un estandar, solo debes aplicar la logica al asunto y definir bien lo que quieres hacer y usar funciones matematicas reducen considerablemente un codigo, por ejemplo si queremos colocar varios botones uno al lado del otro, vamor a colocar un ejemplo con cinco botones:

Código :

x=10;
for (i=0;i<=5;i++){
    _root["boton"+i]._x=x;
   x=_root["boton"+i]._x+_root["boton"+i]._width;
//ese for hace en 3 lineas lo mismo que las 5 lineas proximas
_root.boton0._x=10;
_root.boton1._x=30;
_root.boton2._x=60;
_root.boton3._x=100;
_root.boton4._x=150;
}

pero muy bien tu podrias decir que tu no lo quieres asi, sino que lo quieres con margen entre cada boton y no quedaran pegados entonces nuestra formula cambiaria

Código :

_root["boton"+i]._x+_root["boton"+i]._width+5;

El asunto de las formulas es saberla aplicar a tus necesidades, utilizando todas herramientas que se te dan, ya sea los valores de las propiedades de los objetos(_x,_y,_width,_height,_xmouse,etc.), las operaciones que se te provee(suma, resta, modulo, division, etc.)

tu como programador debes conocer todos los posibles valores que puedan arrojar tus funciones con las variables que la afectan, cuando hablo de variables me refiero a las propiedades de los objetos si lo estas usando en ella u otras variables que tu hayas definido, bueno las operaciones matematicas tu las aplicas segun tu necesidad NO son un estandar, porque una funcion matematica que te sirva a ti en tu pelicula quizas no me sirva a mi en una pelicula mia porque no emitiria los resultados esperado por mi.

Bueno espero que eso te ayude, sino tiene nada que ver con tu duda, :shock: RAYOS entonces explicate mejor porque NO entiendo nada :crap: , si estas intentando entender una funcion que aplican en un codigo y no la entiendes postea el codigo :crap:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 04 Ago 2005 03:17 am
please no digas que me equivoque, porque sino agarro mi :punal: y me corto las venas :crap:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 04 Ago 2005 03:38 am
:? despues de mucho rebuscar, creo saber que te refieres :?
Que si el mas siempre hara una suma, que si el menos siempre hará una resta, y etc. Cierto o no?

En caso de que no pues ni modo, explicare lo que entendi de tu pregunta :lol:

Pues mira los simbolos "Operadores" tiene varias funciones, aunque no son la misma, pero si son similares

Código :

if(a==3){
  a = 3+(b*a)+(b/a)
  c++
}


En este ejemplo, el operador "parentesis" tiene dos funciones al igual que el signo "=" y el "+".

Al principio el == checa el valor de "a" y despues le da un valor a la variable "a".
en if, los parentesis encierran lo que se va a comparar, que en este caso es el valor de una variable y despues hacen que la b*a operacion se haga por separado
El signo + actua sumando el valor de los resultados que debe hacer, despues el doble + hace que se le añada 1 a la variable c

Espero que si sea lo que pides :)

Por bryanisimo

664 de clabLevel



Genero:Masculino  

Geek

firefox
Citar            
MensajeEscrito el 04 Ago 2005 09:44 am
Creo que necesitas un curso de mates. Apúntate en la academia más cercana y urgente!

Por Sisco

BOFH

3700 de clabLevel

12 tutoriales
4 articulos

Genero:Masculino   Bastard Operators From Hell

Catalunya

firefox
Citar            
MensajeEscrito el 04 Ago 2005 03:15 pm
o ve plaza sésamo!

Por fael

BOFH

2443 de clabLevel

3 tutoriales
2 articulos

 

firefox
Citar            
MensajeEscrito el 04 Ago 2005 04:43 pm
Parece que no me acabe de explicar del todo bien, pero Maikel y Swat no useis las armas aun que creo que no sera necesario ^^ . De todos modos Maikel el asunto que comentas es el resultado de una operacion matematica, obviamente 3+4 siempre sera 7 y 4+3 tambien sera 7, eso lo se,(hasta ahi llego), pero yo voy al objetivo de esa suma, el porque se hace, en una caso de matematicas generales el objetivo pues seria acabar el ejercicio, pero en actionscript el objetivo puede ser otra cosa.
Un ejercicio que me ha salido bastante es el de restar a _xmouse una instancia o variable, obviamente eso dara un unico resultado numerico, y si lo metemos en un enterframe pues dara un resultado detras de otros a mucha velocidad, eso es entendible puesto que aunque hablamos de variables pues a fin de cuentas es matematicas, pero el objetivo de esa resta es otra historia, creo que en este caso concreto lo que hace la resta es simplemente coger es que la instancia persiga a el raton(corregidme si me equivoco), este es el quiz de la cuestion no es el resultado si no el objetivo de esa resta.
Digamos que tu quieres hacer que cuando tu muevas el raton o cuando suceda cierto evento, por ejemplo un reloj empieza a rotar sobre su eje en la direccion de las agujas del reloj a una determinada velocidad, pues para hacer esto tu sabes que tienes que usar una determinada operacion matematica que creo que es una suma con este operador "+=", a eso es a lo que voy al por que se usan, para que se usan normalmente, todos sabemos que saldra un resultado pero eso no es algo que nos interese.
Por poneros un ejemplo de algo que no entiendo muy bien para que sirve es esta linea que ha puesto fento

Código :

if (Math.abs(x-this._x)<0.5 && Math.abs(y-this._y)<0.5 && Math.abs(ancho-this._width)<0.5 && Math.abs(alto-this._height)<0.5)

El resultado es lo de menos lo que quiero saber es el por que se usan las restas y para que se hace.
Y necropixel, como habras podido deducir de todo el proceso anterior a lo que te referias tu no me referia yo, obviamente como he puesto antes una suma es una suma, una resta es una resta y un operador de asignacion siempre sera un operador de asignacion, la historia es el por que de usarlos conjuntamente con otros operadores matematicos.
No se si sera un buen ejemplo pero supongamos un coche, no es mas que un conjunto de herramientas y dispositivos que conjuntamente estan hechos para un fin, y que si quitamos cualquiera de ellos pues no funcionaria al cien por cien, por ejemplo si quitamos las ruedas a un coche todo lo demas funcionara pero cuando llegue al punto en que tenga que dar una orden a las ruedas para que funcionen no obtendra respuesta puesto que no estan.

Bueno y con esto espero haberme explicado mejor si no yo tambien tendre que recurrir a la escopeta y al cuchillo :crap:
Gracias de todos modos y saludos

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Ago 2005 05:17 pm
Math.abs(x); retorna el valor absoluto de x
el += se usa como abreviacion es decir
x+=20 es igual x=x+20;

igual con -=, y otros :wink:

la linea de fento solo es un condicional, que el te explique mejor para que hace eso, aunque me imaginos que sabes cual es la razon de ser de los condicionales

rayos, no me diga que era solo pleaseee :roll:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 04 Ago 2005 05:28 pm
Maikel, creo que no logro transmitir lo que quiero. El codigo que me has definido
es decir

Código :

Math.abs(x); retorna el valor absoluto de x
el += se usa como abreviacion es decir
x+=20 es igual x=x+20;

igual con -=, y otros Guiño 

ya sabia lo que hacia, lo que no entiendo es lo que puede hacer todo el codigo en un ejercicio. Ahi me has definido que hace cada variable y cada function pero en conjunto y ya que flash es un programa basado en una interfaz grafica, todo el actionscript tiene que notarse en algun punto o hacer algo determinado. Pongamos el mismo ejemplo

Código :

if (Math.abs(x-this._x)<0.5 && Math.abs(y-this._y)<0.5 && Math.abs(ancho-this._width)<0.5 && Math.abs(alto-this._height)<0.5)

Por ejemplo ¿para que queremos saber el valor absoluto resultante del valor de y- el valor de la de la coordenada y de una determinada instancia

Código :

Math.abs(y-this._y)

¿como afecta esto graficamente al proyecto actionscript?

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Ago 2005 05:48 pm
a ver asi podriamos saber la distancia absoluta que hay entre "y" y la coordenada "y" del fondo igual que las demas, ademas del ancho y demas

creo que el lo usa es solamente para que el mc no se desaparezca del todo es decir que el ancho y altura sea mayor >0.5 y no se salga el escenario :D

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 04 Ago 2005 06:06 pm
:lol: :lol: :lol: :lol: :lol: Ves, eso es exactamente lo que queria el saber para que se usan esas operaciones, no solo la que he puesto si no todas las que conlleven un conjunto de operaciones matematicas, supongo que si quereis conseguir un determinado efecto ya sabeis cual debeis usar, eso es lo que queria, asi que si no es mucha molestia y ahora que por fin he conseguido explicarme como es debido me pusieras codigos en que se emplen esas operaciones y para que.
Y bueno tambien gracias por aclararme la formula.
Saludos ^^ ^^

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Ago 2005 06:44 pm
AL FIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIN ^^ ^^ ^^ :P :P :P :D :D :) :)

mmm para la proxima explicate mejor, por favor :roll:

con respecto a:

neoarcangel escribió:

me pusieras codigos en que se emplen esas operaciones y para que.

yo escribi esto :wink: :

cuando tu usas las propiedades ancho, altura, etc en actionscript son de acuerdo a tu necesidad, no hay un estandar, solo debes aplicar la logica al asunto y definir bien lo que quieres hacer y usar funciones matematicas reducen considerablemente un codigo,

El asunto de las formulas es saberla aplicar a tus necesidades, utilizando todas herramientas que se te dan, ya sea los valores de las propiedades de los objetos(_x,_y,_width,_height,_xmouse,etc.), las operaciones que se te provee(suma, resta, modulo, division, etc.)

tu como programador debes conocer todos los posibles valores que puedan arrojar tus funciones con las variables que la afectan, cuando hablo de variables me refiero a las propiedades de los objetos si lo estas usando en ella u otras variables que tu hayas definido, bueno las operaciones matematicas tu las aplicas segun tu necesidad NO son un estandar, porque una funcion matematica que te sirva a ti en tu pelicula quizas no me sirva a mi en una pelicula mia porque no emitiria los resultados esperado por mi.

:P , podrias decirme que formulas quieres antes de que :punal: me corte las venas :crap: , pero como te dije alli es de acuerdo a tu necesidad

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 04 Ago 2005 06:49 pm
Permiteme sugerirte amplia y urgentemente estos tutoriales:

http://www.cristalab.com/tutoriales/93/tutorial_basico_de_programacion_en_flash_mx

http://www.cristalab.com/tutoriales/101/fundamentos_de_la_programacion

Mira, las operaciones matemáticas que usasmos no son producto de una receta magica, alguien por ahí te lo dijo se adaptan a tus necesidades, según lo que tu necesitas que haga tu aplicación, el poder tú lógica y la práctica te iran diciendo como aplicarlas y cuando. No hay receta magica, siempre lo he dicho.

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox
Citar            
MensajeEscrito el 04 Ago 2005 08:12 pm
Maikel, no creas que no intento explicarme bien, pero cuando uno es programador bien sabe lo que quiere y lo que busca, pero cuando otro como es mi caso esta aprendiendo a veces con los conocimientos que tiene no consigue explicar realmente lo que quiere, y bueno supongo que todos los que sabeis un poco mas antes o despues pasariais por la epoca en que todo os sonaba a chino y para intentar pedir ayuda sobre una cosa con los conocimientos que poseiais igual la pediais sobre otra.
Y bueno perdona, igual no lei bien tu respuesta de que todas las formulas no siguen un estandar.
Bueno en cuanto a formulas lo cierto es que ahora solo se me ocurren tres que son:
una que controle la gravedad de un objeto,
otra que controle la rotacion y
otra que controle la velocidad.
si conoceis alguna mas que controle algun aspecto fisico del objeto bienvenida sea.
Y bueno sephirot lo de los tutoriales, te puedo asegurar que no es la primera vez que me leo los que has puesto, ni la segunda, de todos modos el de fundamentos de la programacion tiene que ver mas bien poco con el problema que aqui estaba planteando, y el otro aunque tiene algunas cosillas que se puedan asemejar tampoco se ajusta del todo al problema planteado.
No obstante sigo pensando que aunque no todo este estandarizado, que tiene que haber parte de codigo que se pueda usar mas de una vez en un ejercicio y que siempre sea igual.
Comprendo que al hacer un sitio web el codigo como bien decis debe seguir las reglas que tu le pones, pero dentro de ese codigo debe de haber algunas lineas que sean comunes en la mayoria de los ejercicios, de lo contrario si todo fuese diferente y por lo menos algun ejercicio no se pareciese a otro seria un kaos, ya que casi habria que crear codigo distinto para cada ejercicio.
Saludos

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Ago 2005 03:36 pm
:? :? :? pero es que la idea del asunto ya se dio, uno hace los codigos, les pone operaciones y los adapta dependiendo de las necesidades, y lo de reutilizar los codigos es igual, por ejemplo en un boton generalmente se usa el on(release) para que determine algun evento ya sea una animacion o simplemente que envie a una url, y ese mismo codigo se lo puedes poner a los botones que se te antojen, tu eres el que define que quieres hacer y dependiendo de eso usas el codigo. Un consejo, si ves un codigo y no sabes que hace pues simplemente modificalo y ejecutalo para que veas como se comporta y con algo de logica pues defines que hace cada parte del codigo, a mi me ha funcionado algunas veces...suerte

Por Finvara

807 de clabLevel



 

EL reino de los duendes...

firefox
Citar            
MensajeEscrito el 05 Ago 2005 04:22 pm
Operadores simbolicos matematicos especiales

++(incremento) te permitirá que un valor aumente de 1 en 1 su valor
Ejemplo:

pos = 0;
pos++;

En este caso pos se convierte en 1



--(decremento) te permitirá que un valor baje su valor de 1 en 1 su valor
Ejemplo:

pos = 10;
pos--;

En este caso pos se convierte en 9



-= te permite restarle "n" numeros a un valor
Ejemplo:

pos = 10;
pos-=3;

Es como si se pusieras

pos = pos - 3;

En este caso pos se convierte en 7



+= te permite sumarle "n" numeros a un valor
Ejemplo:

pos = 10;
pos+=5;

Es como si se pusieras

pos = pos + 5;

En este caso pos se convierte en 15



*= te permite multiplicarle "n" numeros a un valor
Ejemplo:

pos = 10;
pos*=3;

Es como si se pusieras

pos = pos * 3;

En este caso se convierte en 30



/= te permite dividirle "n" numeros a un valor
Ejemplo:

pos = 9;
pos/=3;

Es como si se pusieras

pos = pos / 3;

En este caso pos se convierte en 3


:? :? :? :? :?

Por Jorgelig

Claber

3035 de clabLevel

12 tutoriales

 

Monterrey, Nuevo Leon, MX

firefox
Citar            
MensajeEscrito el 05 Ago 2005 05:42 pm
Ok gracias finvara y jorgelib por estos ultimos consejos.
:)

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Ago 2005 06:08 pm

neoarcangel escribió:

Ok gracias finvara y jorgelib por estos ultimos consejos.
:)


jorgelig, sorry pero detras del "lig" hay toda una Historia.

Por Jorgelig

Claber

3035 de clabLevel

12 tutoriales

 

Monterrey, Nuevo Leon, MX

firefox
Citar            
MensajeEscrito el 05 Ago 2005 06:15 pm
DIOX,me equivoque lo siento en el alma jorgeliG. Ahora me leo la historia ^^

Por neoarcangel

39 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Ago 2005 02:34 pm
ok, me alegro que hayas salido de tu duda, pero en realidad lo unico que hice fue repetir asi quelas gracias son para todos lo que colaboraron en este post, tuvieron una gran paciaencia y voluntad :wink:

Por Finvara

807 de clabLevel



 

EL reino de los duendes...

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.