Excel – Arranjo Simples: Análise Combinatória

Como eu resolvo questões de análise combinatória na versão 2010 do Excel – ARRANJO simples sem repetições?

Na última postagem (http://xek.me/?p=1049) eu mostrei como calcular combinações simples no Excel com a função COMBIN. Entretanto, se eu quiser calcular um arranjo, como faço? O Excel não tem uma função chamada ARRANJO!

8 primeiras letras do alfabetoPor exemplo: “Criei uma senha de 5 letras maiúsculas a partir das primeiras 8 letras do alfabeto. Entretanto, esqueci minha senha! Quero, por tentativa e erro, descobrir a senha que eu criei e esqueci. Quantas possíveis senhas diferentes existem para serem tentadas?”

Este é um problema de Excel – ARRANJO e não de COMBINAÇÃO, porque além de pegar um subconjunto de 5 letras de um conjunto de 8 (que como visto na postagem anterior seriam apenas 56 combinações), cada subconjunto formado pode sofrer uma permutação e será uma nova senha! ABCDE será diferente de BCDEA que será diferente de ABCED, etc. Serão 120 permutações para cada subconjunto!

Bom, o problema é que na hora de traduzir, ao invés de usar o nome ARRANJO, usaram PERMUT, que lembra permutação. A permutação é um caso de arranjo em que estamos usando todos os elementos de um conjunto (e que, igualmente, portanto, a ordem importa). A fórmula do arranjo, na matemática e a função que a calcula no Excel podem ser vistas abaixo:

Excel - Arranjo

Excel – Arranjo Simples

Como usar no EXCEL?

Simples: coloque na célula A2 o valor de n e na célula B2 o valor de p, no nosso exemplo, 8 e 5. Na célula C coloque a fórmula =PERMUT(A2;B2) conforme a imagem:

arranjo no excel

Função permut calcula arranjos

Assim que for teclado Enter, deve aparecer o resultado. Não fique chocado ao saber que mesmo usando letras maiúsculas numa senha de 5 letras que utiliza apenas as 8 primeiras letras do alfabeto, o número de senhas possíveis é enorme! O resultado também poderia ser obtido a partir do número de combinações (que era 56) multiplicado pelas permutações possíveis de cada grupo de 5 letras, ou seja, a permutação de 5 elementos dá o o fatorial de 5 (que é 120). 56*120 é o número de senhas possíveis para este problema, vai levar um bom tempo para testar todas as senhas… Mas nem são muitas, se conseguir testar uma senha a cada 10 segundos consegue achar a senha em menos de 10 horas… :-)

Que outros problemas resolvo com a fórmula do ARRANJO?

Exemplos de problemas:

1) Quantas ordenações de 4 cartas são possíveis fazer com um baralho de 52 cartas em que a ordem das cartas tiradas tenha importância (n=52 e p=4);

2) A partir de um nome de 4 letras que não possua letras repetidas (Jaci, Igor, Gina, etc.) quantas “palavras” diferentes de 2 letras posso formar – supor que cada 2 letras forma uma palavra, mesmo que não tenha sentido (n=4 e p=2);

3) Considerando todas as vogais de nosso alfabeto, quantos são os encontros vocálicos (2 vogais) de vogais diferentes que são possíveis na nossa língua (n=5 p=2);

4) 10 seleções participam de uma fase eliminatória para a Copa do Mundo de Futebol, quantos possíveis jogos inaugurais posso ter, sabendo que cada jogo tem 2 seleções e que a primeira seleção escolhida tem o mando de campo (n=10 e p=2);

5) Considerando uma corrida de Fórmula 1 com 20 participantes, quais o número total de possibilidades diferentes de 3 pilotos ocuparem o pódio? Lembre que o pódio tem 3 lugares diferentes (n=20 e p=3);

6) Uma ilha tem 7 pontes, qual é o número total de maneiras distintas de chegar na ilha e sair por uma ponte diferente (n=7 e p=2).

Existem ainda casos de Arranjos com repetição (eu poderia usar letras repetidas na minha senha, por exemplo) que veremos em uma próxima oportunidade (ver postagem http://xek.me/?p=1097).

Na próxima postagem abordaremos o caso mais simples de ser resolvido no Excel – permutação. Já adiantando o que veremos na próxima postagem, num arranjo, quando n e p são iguais, temos um caso de permutação: http://xek.me/?p=1077

Análise Combinatória no Excel – Combinação Simples

Como eu resolvo exercícios de análise combinatória no Excel – COMBINAÇÃO usando o Excel 2010?

bolinhasEm um concurso que eu fiz recentemente, em uma das questões de RACIOCÍNIO LÓGICO, perguntaram: “um conjunto A tem 8 elementos distintos, quantos subconjuntos de A com 5 elementos diferentes posso criar?”

Em primeiro lugar, eu sei que é uma questão de COMBINAÇÃO e não de ARRANJO porque a ordem dos elementos nos subconjuntos não importa, trocar eles de ordem não caracterizará um subconjunto diferente. Se eu escolhesse os elementos A, B, C, D e E em outra ordem, o subconjunto ainda seria o mesmo.

Bom, esta é uma questão de análise combinatória e posso resolver no EXCEL 2010 usando a função COMBIN, que usa a seguinte fórmula matemática:

fórmula combinação no excel

Se na célula A2 eu colocar o número 8 e em B2 o número 5, na célula C2 posso usar a fórmula =COMBIN(A2;B2) (como pode ser visto na imagem):

função COMBIN do Excel

Em C2 obtenho a resposta correta: o número 56.

Que outros problemas podem ser usados por esta fórmula no Excel?

Todos os problemas de análise combinatória que envolvam combinação simples (isto é: sem repetição). Exemplos:

1) Calcular quantas combinações de números são possíveis de serem sorteados na Megasena (n=60 e p=6, basta colocar estes números em A2 e B2);

2) Quantas equipes diferentes de 11 jogadores de futebol posso colocar em campo numa convocação de 23 jogadores da seleção – supor que não existam posições certas, isto é, posso montar um time sem nenhum goleiro ou, pelo contrário, com todos os goleiros que convoquei (n=23 e p=11);

3) De quantas maneiras podemos combinar sabores de uma casquinha de sorvete com 2 bolas de sorvete se temos 12 sabores diferentes à disposição, mas não queremos duas bolas do mesmo sabor e não faz diferença que sabor vai em cima ou embaixo (n=12 e p=2);

4) Quantas combinações de livros posso escolher para levar para uma viagem, se tenho espaço para 3 livros na mala e possuo 10 livros para escolher (n=10 e p=3);

5) Uma caixa tem 6 bolas de cores diferentes, quantas combinações diferentes de 3 bolas posso tirar de lá (n=6 e p=3).

Na próxima postagem mostro como resolver problemas de arranjos no Excel 2010: http://xek.me/?p=1057

Habilitando Macros no Excel 2010

Para habilitar macros na versão EXCEL 2010, faça isso:

1)Na aba Arquivo, procure por opções, irá abrir uma janela como esta:

excel

2)Selecione a opção Central de Confiabilidade (à esquerda) e clique no botão Configurações da Central de Confiabilidade, abrirá outra janela:

opções macros

3)Selecione a opção Configurações de Macro (à esquerda) e marque a opção Habilitar todas as macros

Agora os programas com macros já podem ser abertos pelo EXCEL!

LINKS para jogos de macros em VBA para o EXCEL:

http://www.tudosobrexcel.com/jogos_avancados/

http://pcworld.uol.com.br/downloads/2008/07/23/dez-games-classicos-todos-gratuitos-para-baixar-e-jogar-no-excel/

http://www.joguinhosantigos.com/2008/07/joguinhos-para-excel.html

 

Horas – Cálculo no Excel

O Excel às vezes é meio chato em algumas coisas, comparado com o LibreOffice, uma delas é o cálculo de horas… Aqui tem uma dica como calcular horas usando o Excel:

http://www.naotemnome.com/fapa/_lista23/_completa.html#16

Essa é dica é boa, caso precisemos de horas fracionárias para cálculo de valores por hora, por exemplo… Caso seja apenas para controle, a diferença entre as células que contém as horas é mais do que suficiente.

 

 

Calcular seno, cosseno, tangente de ângulo em graus no Excel

Uma das coisas que incomodam os estudantes é os exercícios que eles têm de fazer envolvendo trigonometria… E nada mais prático do que usar o Excel ao invés de uma calculadora! Mas tem um probleminha… Como levar o excel a pensar em graus os ângulos que eu estou usando nas células?

Digamos que na célula A2 tenho um ângulo em graus, se eu digitar (na célula ao lado, em B2, por exemplo) =SEN(A2) o Excel interpretará o ângulo como se estivesse em radianos…

O Excel calcula tudo em radianos, como faço para usar graus?

Simples, use a função RADIANOS que transforma qualquer número de graus para radianos (que é o que o Excel necessita nas fórmulas de seno, cosseno e tangente ou outras funções trigonométricas).

escreva:

=SEN(RADIANOS(A2))

ou, de forma geral, =SEN(RADIANOS(_angulo_em_graus_))

O mesmo vale para tangente =TAN(RADIANOS(_angulo_em_graus_)) ou cosseno =COS(RADIANOS(_angulo_em_graus_)), que ficariam:

 =TAN(RADIANOS(A2))

=COS(RADIANOS(A2))

Fácil, né?

Ah, existe como o Excel escrever Pi para a gente ao invés de digitarmos por extenso dígito a dígito… A função =PI( ) (com parênteses sem nada dentro)… Se quiser escrever um ângulo “pi sobre seis”, ao invés de escrever na “mão” na célula C2, apenas digite =PI()/6 e o Excel irá escrever 0,523598776

graus no excel

Por fim, se eu precisar transformar de graus para radianos use a função =GRAUS(_angulo_em_radianos_), por exemplo, se em C2 tenho um ângulo em radianos e quero em D2 o ângulo em graus, escrevo =GRAUS(C2) em D2. Se em C2 eu tiver o número 0,523598776, em D2 surgirá o número 30

graus no excel

 Mas se você está sem uma planilha por perto e está precisando como fazer a conversão “manualmente”? Fácil! Dê uma olhada na minha postagem Conversão entre Graus e Radianos – http://xek.me/?p=1295.

PROCV DUPLO no Excel – sem usar VBA

Uma consulta dupla a um banco de dados, por exemplo, é algo muito comum usando SQL. Esse tipo de necessidade tão comum, está ausente no Excel, pelo menos de um modo simplificado como é o PROCV.

Existem várias soluções para fazer um PROCV duplo, aqui apresento as mais comuns, inclusive algumas delas sem uso do VBA e de criação de macros ou funções.

Vamos supor que tenho estes dados:

Eu quero, a partir de uma data em A13 e de uma informação da segunda coluna (em B13), retornar, se encontradas ambas informações, os números da coluna C.

O truque mais usado é inserir uma coluna extra e concatenar duas ou mais colunas em uma terceira coluna usando o & (e comercial), por exemplo, se os dados estão na colunas A e B, usa-se na coluna C (ou outra qualquer, que pode ficar oculta) =A1&B1 e copiando-se (arrastando) a fórmula para baixo, tem-se os dados transformados em texto e podem antão ser usados normalmente em um PROCV comum:

procvduploconcatena

Aí você concatena os seus dados para fazer a busca, por exemplo:

=PROCV(A13 & B13; C1:D10 ; 2 ; FALSO)

Neste caso os dados que estavam na coluna C foram deslocados para a coluna D e é o que será mostrado na busca.
Observação: datas são armazenadas internamente no Excel como números inteiros, por isso 1/1/2001 e a letra a se transformaram em 36892a na célula C1.

Existe outra maneira, implementando um verdadeiro PROCV DUPLO, aí usa-se a possibilidade de criação de funções pelo VBA do Excel, mas a questão é que sempre será necessário habilitar macros e/ou lembrar de enviar a função criada para quando precisar usar ela. Um exemplo de PROCV TRIPLO existe aqui (em inglês):
http://www.automateexcel.com/2008/10/04/vba-udf-to-perform-a-3-parameter-vlookup/

Uma terceira maneira usa ÍNDICE e CORRESP (para simular o PROCV) e a concatenação, além de fórmula matricial do Excel, há uma explicação sobre como fazer isso em:
http://fabiojoaquim.wordpress.com/2010/11/08/microsoft-excel-procurando-com-2-condicoes/

Para quem não quer criar uma coluna extra e nem quer implementar uma nova função no Excel, existe a opção de usar a função SOMARPRODUTO:

=SOMARPRODUTO(- -(A1:A10=A13);- -(B1:B10=B13); C1:C10)

A função acima funcionará tal e qual um PROCV duplo…

Por último, é possível usar a função BDEXTRAIR, desde que haja títulos nas colunas de nossos dados:

A função fica:

=BDEXTRAIR(A1:C11;”resposta”;A13:B14)

Bom, agora é só escolher a solução preferida!