segunda-feira, 7 de outubro de 2013

O poder do VBA no EXCEL: Divisão e Radiciação Binárias

Não me delongarei muito tempo nesta postagem mas deixo abaixo os códigos fontes das funções de Divisão e Radiciação Binárias que desenvolvi.

Quem quiser entender o algoritmo basta copiá-los, colá-los num módulo VBA no Excel e testá-los.

Public Function Divisao(ByVal Dividendo As Double, ByVal Divisor As Double) As Double
   Dim inicio As Long, final As Long, tamanhoQuociente As Long, tamanhoDivisor As Long, potencia As Double, vezes As Long, _
       produto As Double
   Dividendo = Int(Dividendo)
   Divisor = Int(Divisor)
   If Divisor = 0 Then
      Divisao = -1
   ElseIf Divisor = 1 Then
      Divisao = Dividendo
   ElseIf Dividendo = Divisor Then
      Divisao = 1
   ElseIf Dividendo < Dividendo Then
      Divisao = 0
   Else
      vezes = 0
      inicio = 0
      tamanhoQuociente = Len(CStr(Dividendo))
      tamanhoDivisor = Len(CStr(Divisor))
      final = Val(String(tamanhoQuociente - tamanhoDivisor + 1, "9"))
      Do
         vezes = vezes + 1
         Divisao = Int((final + inicio) / 2)
         produto = Divisao * Divisor
         If inicio > final Then
            If produto > Dividendo Then
               Divisao = Divisao - 1
            End If
            Exit Do
         ElseIf produto = Dividendo Then
            Exit Do
         ElseIf produto < Dividendo Then
            inicio = Divisao + 1
         ElseIf produto > Dividendo Then
            final = Divisao - 1
         End If
      Loop
      MsgBox vezes
   End If
End Function
Public Function Radiciacao(ByVal Radicando As Double, ByVal Indice As Long) As Double
   Dim inicio As Long, final As Long, tamanhoRaiz As Long, potencia As Double, vezes As Long
   If Indice = 1 Then
      Radiciacao = Radicando
   ElseIf Radicando = 0 Or Radicando = 1 Then
      Radiciacao = Radicando
   Else
      vezes = 0
      inicio = 0
      Radicando = Int(Radicando)
      tamanhoRaiz = Len(CStr(Radicando))
      final = Val(String(Int(tamanhoRaiz / Indice) + IIf(tamanhoRaiz Mod Indice = 0, 0, 1), "9"))
      Do
         vezes = vezes + 1
         Radiciacao = Int((final + inicio) / 2)
         potencia = Radiciacao ^ Indice
         If inicio > final Then
            If potencia > Radicando Then
               Radiciacao = Radiciacao - 1
            End If
            Exit Do
         ElseIf potencia = Radicando Then
            Exit Do
         ElseIf potencia < Radicando Then
            inicio = Radiciacao + 1
         ElseIf potencia > Radicando Then
            final = Radiciacao - 1
         End If
      Loop
      MsgBox vezes
   End If
End Function

sábado, 21 de setembro de 2013

Confira se sua calculadora não está te enganando: calcule funções trigonométricas no lápis e papel

Existe uma sequência de Taylor que nos permite calcular o seno de um ângulo dado em radianos.

Implementei esse algoritmo em VBA no Excel, somente para conferir os valores da função SENO dada pelo Excel e, felizmente, o grande Bill Gates não nos enganou: o Excel funciona mesmo.

Eis o código em VBA abaixo que você poderá usar em suas planilhas Excel:

Public Function Seno(ByVal Angulo As Double, Optional Precisao As Long = 50) As Double
    'A = A - (A^3/3!) + (A^5/5!) - (A^7/7!)
    Dim i As Long, fat As Double, sinal As Long, rad As Double
    fat = 1
    sinal = 1
    Seno = 0
    rad = Angulo * WorksheetFunction.Pi / 180
    For i = 1 To Precisao Step 2
        fat = fat * i * IIf(i = 1, 1, i - 1)
        Seno = Seno + (sinal * rad ^ i) / fat
        sinal = -sinal
    Next
End Function

Os parâmetros passados são apenas dois: ângulo em graus e, opcionalmente, a precisão que, por padrão, é 50, se bem que nos meus testes bastou uma precisão de 15.

Observe que a função converte a medida em graus do ângulo para radianos, deixando o valor na variável fat.

Oras, e quem não entende bulhufas de programação ou VB?

Para estes eu deixarei um algoritmo em PORTUGOL para calcularem seus senos na unha mas antes eu terei que explicar as instruções.

São poucas mas pode dar confusão.

Instrução                                         Significado
-----------                                          ------------------------------------------------------------------
Definir <nome>                              Numa folha de papel desenho um quadrinho com o nome <nome>.
                                                        Exemplo: Definir NomeFuncionario, Definir Salario.
Mover <valor> para <nome>         Apagar o que está escrito no quadradinho de nome <nome> e
                                                        escrever dentro dele o valor <valor>.
                                                        Exemplo: Mover "João" para NomeFuncionario, Mover 10.000
                                                       para Salario.
Mover <nome1> para <nome2>   Apagar o que está escrito no quadradinho de nome <nome2> e
                                                       escrever nele o que está escrito no quadradinho de <nome2>.
                                                       O que está escrito no quadradinho de <nome1> não será apagado.
 Somar <valor> em <nome>          Somar o valor <valor> ao valor escrito no quadradinho de
                                                       nome <nome>, apagando o seu conteúdo e escrevendo nele
                                                       o resultado da soma.
                                                       Exemplo: no quadradinho Salario tem o valor 10.000. A     
                                                       instrução Somar 5.000 a Salario resultará em 15.000 e este valor
                                                       deverá  escrito no quadradinho Salario, depois de apagado o valor
                                                      10.000 anterior.
Subtrair <valor> de <nome> em <nome>
Multiplicar <nome> por <valor> em <nome>
Dividir <nome> por <valor>  em <nome>
Etc...

Como vê é simples. Vamos à prática tentar resolver o cálculo do seno em PORTUGOL.


1) INICIO
2) Definir i, fat, sinal, rad, seno, angulo, precisao, tmp
3) Entre com angulo (significa escrever qualquer valor no quadradinho chamado angulo)
4) Entre com precisao (significa escrever qualquer valor no quadradinho chamado precisao)
3) Mover 1 para fat, sinal, i
4) Mover 0 para seno
5) Mover angulo para rad
6) Multiplicar 3,141 em rad (o resultado fica no quadradinho rad)
7) Dividir rad por 180 em rad
8) Se i maior que precisão então vá para instrução 21
9) Multiplicar i por fat em fat
10) Se i diferente de 1 então vá para linha 11, senão vá para a linha14
11) Mover i para tmp
12) Subtrair 1 de tmp em tmp
13) Multiplicar tmp por fat em fat
14) Potenciar rad elevado a i em tmp
15) Multiplicar tmp por sinal em tmp
16) Dividir tmp por fat em tmp
17) Somar tmp a seno
18) Multiplicar i por -1 em i
19) Somar 2 em i.
 20) Ir para instrução 8
21) FIM

Como você pode notar, essa série de instruções, seguidas à risca, produzirão os mesmo resultados que o programinha em VBA que postei acima, com menos precisão, é claro pois o número PI eu usei apenas as 3 primeiras casas decimais do mesmo e no computador, são utilizadas quase 20 casas decimais.

Para você não ter que executar muitas vezes o algoritmo entre com o valor 3 na instrução 4, quando pede para entrar a <precisao>.

 No final da execução do algoritmo, você terá no quadradinho seno o valor do seno do ângulo que você entrou na instrução 3.

De posse do valor do seno todas as outras funções trigonométricas são calculáveis.

Para calcularmos o cosseno usamos Pitágoras: cosseno de X = raiz quadrada(1 - seno ^ 2 de X)

 tangente de X = seno de  X / cosseno de X
cotangente de X = cosseno de X / seno de X
 secante de X = 1 / cosseno de X
cossecante de X = 1 / seno de X

Uma pequena solução para um grande problema: calcular raiz quadrada de números inteiros não-negativos

Hoje eu acordei inspirado, se é que dá para chamar preguiça de inspiração.
Quando estou "inspirado" gosto de fazer coisas fáceis no computador e não difíceis como as que costumo fazer.

Escrever artigos neste blog, além de ser divertido, costuma ser fácil, pois tratam-se de coisas que eu já domino e não preciso criar.

Vamos então ao que interessa.

Quem de vocês já não se deparou com a necessidade de calcular a raiz quadrada de um número enorme e não tinha calculadora e nem computador à mão?

Acho que talvez muitos de vocês.

Por isso, deixo aqui mais uma contribuição para este blog, visando atender àqueles que gostam de fazer as coisas à moda antiga, ou seja, no lápis e papel.

Se alguém quiser um algoritmo mais matemático e menos trabalhoso que este meu, já que acabei de inventa-lo, poderá encontra-lo no link:

http://matemagicasenumeros.blogspot.com.br/2011/02/extrair-raiz-quadrada-sem-usar.html#.Uj2rZN-5fIV

Encontrei um erro nesse algoritmo, pois quando o algoritmo manda ignorar o último algarismo do resto, após baixar o próximo grupo, na verdade isto quer dizer que se deve tomar os primeiros 3 algarismos, da esquerda para a direita, do número, pois se este contiver apenas 3 algarismos dará erro tendo, portanto, que ser tomado integralmente.

CÁLCULO DE RAIZ QUADRADA

1) Em primeiro lugar, você desenhará uma série de quadradinhos, conforme ilustrado abaixo:

 -----------------------------------------------------
|     |     |     |     |     |     |     |     |     |
|     |     |     |     |     |     |     |     |     |
 -----------------------------------------------------


2) Em segundo lugar você nomeará as três linhas do quadro de LINHA 1 e LINHA 2, os três últimos quadradinhos com as palavras RAIZ e AUX e, finalmente, os demais quadradinhos com a letra 'A' seguida de um número sequencial começando em 1, da direita para a esquerda, conforme ilustrado abaixo:

           A7    A6    A5    A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |     |     |     |     |     |     |
LINHA 2 |     |     |     |     |     |     |     |     |     |
         -----------------------------------------------------


0BSERVAÇÃO: os números que seguem as letras 'A' estão em ordem decrescente da esquerda para a direita.

3) Preencha agora cada quadradinho de A1 a A7, ou seja, da direita para a esquerda, da Linha 1, com os algarismos do número do qual você deseja extrair a raiz quadrada, escrevendo em cada quadradinho, 2 algarismos e se não houver mais, apenas 1 algarismo.  Por exemplo: suponhamos que você queira extrair a raiz quadrada do número 7654001. Nesse caso o resultado ficará assim:

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  | 65  |  40 |  01 |     |     |
LINHA 2 |     |     |     |     |     |     |     |     |     |
         -----------------------------------------------------


OBSERVACAO: no quadradinho A4 ficou apenas 1 algarismo pois já não havia mais nenhum para colocar.

4) Vamos, agora, começar a calcular de fato a raiz quadrada. Neste primeiro passo precisaremos calcular a raiz quadrada do número que está no quadradinho preenchido mais à esquerda, ou seja, do número que está no quadradinho A4 que é 7.

Somente neste passo necessitaremos calcular a raiz quadrada e para facilitar a vida de vocês deixo abaixo uma tabela com os quadrados dos números de 1 a 9 que são os que serão usados neste passo.

           -----------------------------------------------------
NÚMEROS   |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  8  |  9  |
          |-----|-----|-----|-----|-----|-----|-----|-----|-----|
QUADRADOS |  1  |  4  |  9  | 16  | 25  | 36  | 49  | 64  |  81 |
           -----------------------------------------------------


Localize então na tabela acima, na linha QUADRADOS, o valor mais próximo do número 7 ou igual a 7.

Se você fez tudo certo, encontrará o valor 4 na linha QUADRADOS. O 9 não serve porque é maior que 7 e o 1 também não porque o 4 é mais próximo do 7 que o 1.

Escreva, então, o valor 4, encontrado na linha QUADRADOS do quadro acima, no quadradinho A4 da LINHA 2 e o valor 2, encontrado na linha NÚMEROS na mesma coluna do 4, escreva-o no quadradinho chamado RAIZ da LINHA 2.

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  | 65  |  40 |  01 |     |     |
LINHA 2 |     |     |     |  4  |     |     |     |  2  |     |
         -----------------------------------------------------


5) Subtraia o valor 4 do quadradinho A4 da LINHA 2 do valor 7 do quadradinho A4 da LINHA 1, ou seja, calcule 7 - 4 e escreva o resultado 3 na coluna A5 da LINHA 2, apagando, em seguida, o valor do quadradinho A4.

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  | 65  |  40 |  01 |     |     |
LINHA 2 |     |     |     |     |  3  |     |     |  2  |     |
         -----------------------------------------------------


6) Multiplique o valor do quadradinho A3 da LINHA 2 por 100 e some-o com o valor do quadradinho A3 da LINHA 1 (3 x 100 + 65 = 365), escrevendo o resultado no quadradinho A3 da LINHA 2.

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  | 65  |  40 |  01 |     |     |
LINHA 2 |     |     |     |     | 365 |     |     |  2  |     |
         -----------------------------------------------------


7) Escreva no quadradinho RAIZ da LINHA 1, os três primeiros algarismos (da esquerda para a direita) do valor do quadradinho A3 da LINHA 2 (neste caso os três primeiros algarismos do valor são o próprio valor pois este tem apenas três algarismos).

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  | 65  |  40 |  01 | 365 |     |
LINHA 2 |     |     |     |     | 365 |     |     |  2  |     |
         -----------------------------------------------------


8) Multiplique o valor do quadradinho RAIZ da LINHA 2 pelo valor 2 e escreva o resultado 4 no quadradinho AUX da LINHA 2 (2 x 2 = 4).

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |     |
LINHA 2 |     |     |     |     | 365 |     |     |  2  |  4  |
         -----------------------------------------------------


9) Multiplique o valor do quadradinho AUX da LINHA 2 por 10 e escreva o resultado no mesmo quadradinho (4 x 10 = 40).

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |     |
LINHA 2 |     |     |     |     | 365 |     |     |  2  |  40 |
         -----------------------------------------------------


10) Divida o valor do quadradinho RAIZ da LINHA 1 pelo valor do quadradinho AUX da LINHA 2. O resultado será 7,448979591836735 mas só consideramos a parte inteira que é 7 que deverá ser escrito no quadradinho AUX da LINHA 1.

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |   7 |
LINHA 2 |     |     |     |     | 365 |     |     |  2  |  40 |
         -----------------------------------------------------


11) Multiplique o valor do quadradinho RAIZ da LINHA 2 por 10 e some ao resultado o valor do quadradinho AUX da LINHA 1, escrevendo, em seguida, o resultado no quadradinho RAIZ da LINHA 2 (2 x 10 + 7 = 27).

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |   7 |
LINHA 2 |     |     |     |     | 365 |     |     |  27 |  40 |
         -----------------------------------------------------


12) Some o valor do quadradinho AUX da LINHA 1 ao valor do quadradinho AUX da LINHA 2 escrevendo, em seguida, o resultado no quadradinho AUX da LINHA 2, apagando o valor anterior.

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |   7 |
LINHA 2 |     |     |     |     | 365 |     |     |  27 |  47 |
         -----------------------------------------------------


13) Multiplique o valor do quadradinho AUX da LINHA 2 pelo valor do quadradinho AUX da LINHA 1, escrevendo o resultado no quadradinho AUX da LINHA 2 (47 X 7 = 329).

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |   7 |
LINHA 2 |     |     |     |     | 365 |     |     |  27 | 329 |
         -----------------------------------------------------


14) Subtraia o valor do quadradinho RAIZ da LINHA 1 do valor do quadradinho AUX da LINHA 2 (365 - 329 = 36), deixando o resultado no quadradinho A2 da linha 2 e apagando o valor do quadradinho A3 da LINHA 2.

           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |   7 |
LINHA 2 |     |     |     |     |     |  36 |     |  27 | 329 |
         -----------------------------------------------------


15) À partir deste ponto o processo se repete, recomeçando pelo item 6. Em todo caso, darei um prosseguimento linear ao algoritmo.
Multiplique o valor do quadradinho A2 da LINHA 2 por 100 e some com o valor do quadradinho A2 da LINHA 1 (36 x 100 + 40 = 3640), escrevendo o resultado no quadradinho A2 da LINHA 2.


           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 365 |   7 |
LINHA 2 |     |     |     |     |     | 3640|     |  27 | 329 |
         -----------------------------------------------------

16) Escreva no quadradinho RAIZ da LINHA 1, os três primeiros algarismos (da esquerda para a direita) do valor do quadradinho A2 da LINHA 2 (364).


           A7    A6   A5     A4    A3    A2    A1   RAIZ  AUX
         -----------------------------------------------------
LINHA 1 |     |     |     |  7  |  65 |  40 |  01 | 364 |   7 |
LINHA 2 |     |     |     |     |     | 3640|     |  27 | 329 |
         -----------------------------------------------------




QUEREM SABER DE UMA COISA????? CANSEI!!! VOCÊS QUE CONTINUEM O RESTO À PARTIR DO ITEM 7, ALTERANDO APENAS A COLUNA A3, POR EXEMPLO, PARA A(3-1) = A2.
QUANDO CHEGAR NA COLUNA A0 QUE NÃO EXISTE, O PROBLEMA ACABOU E O VALOR DO QUADRADINHO RAIZ DA LINHA 2 SERÁ A RAIZ QUADRADA DO NÚMERO DADO.

quinta-feira, 19 de setembro de 2013

Regra de Três Composta: para muitos um monstro e para poucos, uma dádiva.

Algumas vezes eu me surpreendo com as dúvidas matemáticas que as pessoas me apresentam e uma delas é sobre como resolver problemas que envolvam regra de três composta.
 
Por isso eu resolvi iniciar este blog de matemática com um artigo que visa dirimir quaisquer dúvidas a esse respeito sem, contudo, me aprofundar muito na teoria, ou seja, darei mais uma "receitinha de bolo" do que propriamente um artigo teórico sobre regra de três simples ou composta.
 
Em primeiro lugar devemos entender o que é uma grandeza.
 
Grandeza é qualquer coisa que possa ser contada ou medida.
 
Dessa forma alunos, casas, pedreiros, distância, comprimento, tempo, etc. são grandezas quando se atribui um número a elas.
 
As grandezas alunos, casas, pedreiros são resultados de uma contagem enquanto que as grandezas distância, comprimento, tempo são resultados de uma medição.
 
Agora, precisamos definir o que vem a ser proporcionalidade.
 
Proporcionalidade é a variação proporcional de uma grandeza em relação à outra, ou seja, quando uma grandeza inter-relacionada com outra aumenta ou diminui de uma unidade, a outra também aumenta ou diminui de uma ou mais unidades.
 
Ficou meio complicado e por isso vou simplificar com dois exemplos:
 
1) um carro percorre 10 km com 1 litro de gasolina, com 2 litros percorrerá 20 km, com 3 litros percorrerá 30 km e assim por diante.
Como podem ver, as duas grandezas distância percorrida em km e quantidade de litros de gasolina estão inter-relacionadas e quando se aumenta ou diminui uma, a outra também aumenta ou diminui proporcional e respectivamente.
 
2) 40 pedreiros fazem uma casa em 20 dias, 20 pedreiros farão em 40 dias, 10 pedreiros farão em 80 dias e assim por diante.
Como podem ver, as duas grandezas quantidade de pedreiros e quantidade de dias estão inter-relacionadas e quando se aumenta ou diminui uma, a outra também diminui ou aumenta (note que agora está invertido) proporcional e respectivamente.
 
Agora, de posse dos dois exemplos, podemos conceituar o que são grandezas diretamente proporcionais e grandezas inversamente proporcionais.
 
Grandezas diretamente proporcionais são grandezas inter-relacionadas onde se uma aumenta a outra também aumenta e se uma diminui a outra também diminui, ambas proporcionalmente, ou seja, variando sempre na mesma proporção. É o caso do exemplo 1.
 
Grandezas inversamente proporcionais são grandezas inter-relacionadas onde se uma aumenta a outra diminui e se uma diminui a outra aumenta, ambas proporcionalmente. É o caso do exemplo 2.
 
CHEGA!!! VAMOS LOGO AO QUE INTERESSA!!! QUEREMOS EXERCÍCIOS RESOLVIDOS!!!
 
-Tá bom, tá bom!!! Chega de ladainha e vamos ao que interessa. Só que ainda tem mais uma coisinha.
 
Regra de três simples é quando o problema apresenta apenas duas grandezas e de três composta quando o problema apresenta mais de duas grandezas.
 
E por que esse nome REGRA DE TRÊS? Simples. Numa proporção sempre teremos duas razões nas quais há quatro termos numéricos como ilustrado abaixo:
 
Proporção: 4/5 = 8/10
 
Quando um dos termos é desconhecido, ou seja, é colocado um X no lugar dele, então teremos 3 termos conhecidos e 1 desconhecido.
 
Por isso damos o nome de regra de três.
 
PROBLEMAS RESOLVIDOS
--------------------
 
REGRA DE 3 SIMPLES
 
1) Um carro percorre 50 km com 5 litros de gasolina. Quantos km percorrerá com 20 litros de gasolina?
 
RESOLUÇÃO
 
a) primeiramente enumeramos na primeira linha o nome das grandezas envolvidas como abaixo:
 
distância percorrida em KM        litros de gasolina
 
b) em seguida, escrevemos na segunda linha os valores das grandezas dadas em baixo de seus respectivos nomes:
 
distância percorrida em KM        litros de gasolina
           50                             5
 
c) finalmente, na terceira linha, escrevemos os valores da suposição do problema (na grandeza desconhecida escreveremos um X):
 
distância percorrida em KM        litros de gasolina
           50                             5
            X                            20
 
d) agora, comparando a grandeza onde se encontra o X faremos a seguinte pergunta:
- Se meu carro percorre 50 km com 5 litros de gasolina, aumentando a gasolina para 20 litros eu percorrerei mais ou menos km de distância?
A resposta é óbvia, ou seja, se eu aumentar os litros de gasolina é claro que meu carro percorrerá mais km de distância e não menos. Portanto, estas duas grandezas inter-relacionadas são diretamente proporcionais entre si.
 
e) agora, multiplicaremos os termos da proporção em cruz, ou seja, o número sobre o X será multiplicado pelo número embaixo do 5 e o X será multiplicado pelo número em cima do 20.
 
5X = 20 x 50 => 5X = 1000 => X = 1000/5 = 200
 
RESPOSTA: o carro percorrerá 200 km de distância (isso se não aparecer nenhuma subida íngreme pelo caminho).
 
 
2) 10 pedreiros constroem uma casa em 20 dias. Quantos dias demorarão 20 pedreiros?

RESOLUÇÃO
 
Vou pular os itens de A à C e já montarei a proporção:
 
pedreiros        dias
   10             20
   20              X
 
Agora faremos a seguinte pergunta:
- Se 10 pedreiros constroem uma casa em 20 dias, aumentando-se o número de pedreiros para 20 os mesmos demorarão mais ou menos dias para construírem a casa?
A resposta é óbvia: aumentando-se o número de pedreiros a casa demorará menos dias para ser construída. Portanto, ambas as grandezas inter-relacionadas são inversamente proporcionais.
Nesse caso, transcreveremos abaixo a proporção, mantendo a grandeza onde se encontra o X do jeito que está e invertendo os valores da grandeza quantidade de pedreiros.
 
20                                    20
10                                     X
 
Multiplicando em cruz teremos:
 
20X = 20 x 10 => 20X = 200 => X = 200/20 = 10
 
RESPOSTA: 20 pedreiros demorarão 10 dias para construírem a casa (isso se nenhum deles enrolar ou se não chover).
 
REGRA DE 3 COMPOSTA
 
Problema único
 
10 pedreiros constroem 5 metros de muro em 3 dias trabalhando 8 horas por dia. Quantos metros de muro construirão 12 pedreiros trabalhando 5 dias durante 6 horas por dia?

RESOLUÇÃO
 
pedreiros     metros de muro     dias de trabalho     horas por dia de trabalho
    10              5                3                            8
    12              X                5                            6
 
Agora faremos as seguintes perguntas sempre em relação à grandeza onde está o X:
- 10 pedreiros constroem 5 metros de muro. Aumentando-se o número de pedreiros para 12, eles construirão mais ou menos metros de muro? A resposta é óbvia: mais pedreiros construirão mais muro, portanto, ambas as grandezas são diretamente proporcionais.
- trabalhando-se 3 dias são construídos 5 metros de muro. Aumentando-se os dias para 5 serão construídos mais ou menos metros de muro? Novamente as grandezas são diretamente proporcionais, ou seja, aumentando-se o número de dias trabalhados é claro que também aumentará os metros de muro construídos.
- trabalhando-se 8 horas por dia constrói-se 5 metros de muro. Diminuindo a quantidade de horas trabalhadas para 6 haverá mais ou menos muro construído? Haverá menos é claro, ou seja, diminuindo-se a grandeza horas por dia de trabalho a grandeza metros de muro também diminui.
 
Que azar. Todas as grandezas são diretamente proporcionais. De qualquer forma estou com preguiça de elaborar outro problema e vamos encerrar com este mesmo.
 
O que devemos fazer agora é aplicar a regra do caminhãozinho ou do carrinho:
 
           ________
    10    |   5    |    3       8
 _________|        |_______________
|   12        X         5       6  |

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

Vixe! Está mais para uma limusine do que para um carrinho!

Agora o que se tem que fazer é dividir o produto dos números dentro do carrinho pelo produto dos números fora do carrinho.

OBSERVE que não precisamos inverter nenhuma grandeza porque todas elas são diretamente proporcionais em relação à grandeza com X.

IMPORTANTE!!! A cabine do carrinho deverá ser sempre na coluna onde está o X.

X = 5 x 12 x 5 x 6    1800
    -------------- = ------ = 7,5
      10 x 3 x 8       240 

RESPOSTA: serão construídos 7,5 metros de muro.