Hacred Sall
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.



 
InícioProcurarÚltimas imagensRegistarEntrar

Compartilhe | 
 

 Math: Funções Avançadas de Matemática

Ver o tópico anterior Ver o tópico seguinte Ir para baixo 
AutorMensagem
Bnezinho
Soldado
Soldado
Bnezinho

Peixes Ocupação : Programador

Math: Funções Avançadas de Matemática Empty
MensagemAssunto: Math: Funções Avançadas de Matemática   Math: Funções Avançadas de Matemática Icon_minitimeDom Jul 12, 2009 12:46 am

Módulo Math

A documentação do Ruby é cheio de módulos, alguns bastante interessantes, outros cruciais como o Kernel. Hoje iremos falar um pouquinho sobre especificamente o módulo Math, trigonometria, raiz quadrada, indo bem mais além dos simples métodos da classe Integer.
Antes de mais nada...

Como invocar um método de um módulo?
Sabemos claramente que, para invocar um método de uma classe, chamamo-as em forma de mensagem:
Código:
Class.metodo
Para os módulos, não é diferente (lembre-se que apenas muda para se acessar o valor de uma variável :: )

Raiz quadrada:
Óh, raiz quadrada! A raiz quadrada de em um número que, multiplicado por ele mesmo, chega-se ao original.
Do inglês square root. Sua syntaxe é:
Código:
Math.sqrt(numero)

Seno:
Todo mundo que sabe um pouco de trigonometria sabe o que é seno. Ele é razão entre o Cateto Oposto e a Hipotenusa.
Sua syntax é:
Código:
Math.sin(angulo)

Coseno:
É a razão entre o cateto adjacente e a hipotenusa. Sua syntax é:
Código:
Math.cos(angulo)

Tangente:
É o coeficiente de um ângulo. Sua syntax é:
Código:
Math.tan(angulo)

Logaritimo:
É uma forma de calcular um expoente através de sua base. Sua syntax é:
Código:
Math.log(numero)

Logaritimo de Base 10:
Código:
Math.log10(numero)

Hipotenusa:
Calcula a hipotenusa de um triângulo-retângulo:
Código:
Math.hypot(catetoa, catetob)
O seu cálculo é feito da seguinte forma:
Código:
module Math
 def hypot(x, y)
    return sqrt(x ** 2 + y ** 2)
 end
end
Lembrando que o sinal de ** é potênciação. Agora, porque colocamos apenas sqrt ao invés de Math.sqrt?
Lembre-se: Quando estamos dentro da estrutura, não se predece o nome, pois é self.

Métodos comuns compartilhados entre Integer e Float:
+, -, *, / (integer = módulo), **, abs (converte o número em seu valor absoluto), % (resto), next (sucessor)...

Quanto ao sinal de /, coloquei integer = módulo pois, quando está relacionada a classe Integer, ela retorna um quociente inteiro, e é por isso que existe o %, para retornar o valor do resto da divisão.



Bom pessoal. Por enquanto é isso. Espero que os matemáticos tenham gostado da aula, agora podem trabalhar tranquilamente com o maker sem precisar de abrir a calculadora cientifica toda hora! XD~~
Até a próxima... o/
Ir para o topo Ir para baixo
 

Math: Funções Avançadas de Matemática

Ver o tópico anterior Ver o tópico seguinte Ir para o topo 
Página 1 de 1

Permissões neste sub-fórumNão podes responder a tópicos
Hacred Sall :: Centro de Operações :: Armazém :: Scripts :: Ajuda e tutoriais-
Ir para: