sexta-feira, 30 de março de 2012

O Paradoxo do Aniversário

O paradoxo do aniversário, ou problema do aniversário, vem da probabilidade de duas pessoas em um grupo de n pessoas terem o mesmo dia de aniversário. Para esta probabilidade considera-se o ano com 365 dias (excluindo 29 de Fevereiro), desconsideram-se gêmeos e consideram-se que todos os dias são equiprováveis para aniversário (pois na realidade a quantidade oscila com a época do ano ou dia da semana).

O paradoxo é que em um grupo de apenas 23 pessoas, a probabilidade de duas terem o mesmo dia de aniversário é de 50%. Com um grupo de 57 pessoas esta probabilidade sobe para 99%. Obviamente os 100% são atingidos com um grupo de 366 pessoas. A probabilidade parece alta demais, parece incompatível, dando esta ideia de paradoxo.

Entretanto a probabilidade está certa. A matemática prova isto. Veja:

Sendo P(A) a probabilidade de duas pessoas em um grupo terem o mesmo dia de aniversário, então P('A) é o inverso, é a probabilidade de duas pessoas não terem o mesmo dia de aniversário. A e 'A são eventos complementares e sendo P(A) e P('A) as únicas possibilidades e mutuamente exclusivas, então P(A) + P('A) = 1.

O cálculo da probabilidade, de duas pessoas em um grupo terem o mesmo dia de aniversário, fica mais fácil se calcularmos primeiro a probabilidade P('A).

A probabilidade P('A) é igual ao produto das probabilidades individuais, ou eventos, de cada pessoa. Se P('A) pode ser descrito como n eventos independentes, então P('A) = P(1) x P(2) x P(3) x ... x P(n), sendo n o número de pessoas no grupo. A probabilidade de um evento é dada por P(A) = n(A)/n(U).

Considerando que estamos calculando P('A), a primeira pessoa pode fazer aniversário em qualquer dia do ano, ou seja, em qualquer um dos 365 dias do ano. Assim P(1) = 365/365 = 1 = 100% (ou 1-0/365). A segunda pessoa pode fazer aniversário em qualquer dia exceto no dia do aniversário da primeira. Assim P(2) = 364/365 = 0,9973 = 99,73% (ou 1-1/365). A terceira pessoa pode fazer aniversário em qualquer dia exceto nos dias da primeira e da segunda pessoa. Assim P(3) = 363/365 = 0,9945 = 99,45% (ou 1-2/365).

Generalizando este processo para um grupo de n pessoas, P('A) é dada por: (com n menor que 366)

P('A) = 365/365 x 364/365 x 363/365 x ... x (365-(n-1))/365

ou

P('A) = (1-0/365) x (1-1/365) x (1-2/365) x ... x (1-(n-1)/365)


Simplificando uma ou outra equação, chega-se em:

P('A) = (365! / (365-n)!)/365^n = (365^-n x 365!)/(365-n)!


Se P(A) = 1 - P('A) então P(A) = 1 - (365!/(365-n)!)/365^n, visto isso, calcularemos a probabilidade para alguns grupos:

Para n=23: P(A) = 1 - (365!/(365-23)!)/365^23 = 0,5073 = 50,73%

Para n=57: P(A) = 1 - (365!/(365-57)!)/365^57 = 0,9901 = 99,01%

Para n=78: P(A) = 1 - (365!/(365-78)!)/365^78 = 0,9999 = 99,99%


Como podemos observar, a probabilidade é realmente grande de encontrarmos duas pessoas que façam aniversário no mesmo dia em grupos de 23 ou mais pessoas. Impressionantemente, com 78 pessoas é praticamente certo que teremos duas que façam aniversário no mesmo dia, mesmo existindo um número bem maior de possibilidades, 365 dias no ano.

O que acontece é que se apenas uma pessoa compara seu aniversário com as outras do grupo, a probabilidade é baixa, são poucas comparações. Mas se todas as pessoas comparam seus aniversários com as outras do grupo, a probabilidade aumenta consideravelmente, são muito mais comparações. E à medida que o número de pessoas do grupo aumenta, as probabilidades se multiplicam.

Saiba mais sobre probabilidades em http://dan-scientia.blogspot.com.br/search/label/probabilidade

quinta-feira, 29 de março de 2012

O Cientista e o Motorista

Aquele cientista famoso estava a caminho de uma conferência quando o seu motorista comentou:

- Patrão, já ouvi tantas vezes a sua palestra que tenho certeza de que poderia fazê-lo no seu lugar, se o senhor ficasse doente.
- Isso é impossível!
- Quer apostar?

E fizeram a aposta. Trocaram de roupa e, quando chegaram no local da conferência, o motorista foi para a tribuna enquanto o cientista instalou-se na última fila, como se fosse seu motorista.

Depois da palestra, começou a sessão de perguntas, que ele respondeu com precisão. No entanto, em certo momento, levantou-se um sujeito que apresentou uma questão dificílima. Longe de entrar em pânico, ele saiu-se com esta:

- Meu jovem, essa pergunta é tão fácil... mas, tão fácil... que vou pedir para o meu motorista responder!

(autor desconhecido)

Modos de rede no VirtualBox

O VirtualBox (https://www.virtualbox.org/) é uma aplicação multi-plataforma de virtualização. Com ele, é possível executar múltiplos sistemas operacionais ao mesmo tempo em máquinas virtuais.

Cada máquina virtual poderá ter sua configuração específica de hardware, como se fossem computadores reais, e o suporte à rede é bastante refinado, com diversos modos de operação.

No mundo da virtualização existem alguns termos e alguns serão úteis para o entendimento deste artigo:

Host OS (Hospedeiro)
É o sistema operacional do computador físico onde o VirtualBox está instalado.

Guest OS (Convidado)
É o sistema operacional executado dentro de uma máquina virtual.

Máquina Virtual (VM)
É o ambiente especial que o VirtualBox cria para simular um hardware de computador.

Adicionais para Convidado
É um pacote especial de software fornecido pelo VirtualBox para ser instalado no sistema convidado.


Na seção de rede das configurações da máquina virtual, é possível determinar como o VirtualBox concede os adaptadores de rede e os modos de operação na VM. O VirtualBox é bastante flexível na virtualização da rede. Os modos de operação dos adaptadores virtuais são em consideração ao hardware de rede físico do hospedeiro.

Para cada adaptador de rede habilitado é possível especificar um dos seguintes modos de virtualização:


Não Conectado

Neste modo, o VirtualBox informa ao sistema convidado que a placa de rede está presente porém não há conexão, como se não houvesse um cabo de rede plugado. É um modo de simular uma retirada do cabo da placa de rede.


NAT (Network Address Translation)

É o modo padrão de rede no VirtualBox. Com este modo, o VirtualBox age como um roteador, mapeando o tráfego, mascarando os IPs e possibilitando a comunicação da VM com a rede externa. O sistema convidado recebe um endereço IP que não faz parte da rede externa, do servidor DHCP integrado ao VirtualBox, e portando, durante todo o tráfego, os endereços e portas são traduzidos. Cada máquina virtual terá um roteador particular e elas não farão parte de uma mesma rede, impossibilitando a comunicação entre elas.

Este modo é necessário quando não é possível a máquina virtual obter um endereço IP real da rede externa. Ou quando deseja tornar a VM invisível e inalcançável pela rede externa, pelo menos não diretamente.


Placa Em Modo Bridge

Neste modo, o VirtualBox usa um driver de dispositivo para interceptar e injetar dados no adaptador de rede físico, tornando-se um adaptador de rede por software. O sistema convidado, usando este adaptador de rede por software, consegue conectar-se diretamente na rede externa e assim receber um endereço IP válido na rede externa.

O sistema hospedeiro e também todas as máquinas da rede, na qual a máquina hospedeira pertence, enxergarão normalmente a VM pela rede como se a VM fosse uma máquina real.

É um modo geralmente utilizado em sistemas convidados que são servidores de rede. Este modo possui algumas limitações dependendo do sistema operacional hospedeiro.


Rede Interna

Este modo é utilizado para criar uma rede por software onde somente as máquinas virtuais selecionadas ficarão visíveis entre elas. Nenhuma máquina da rede externa, nem mesmo o próprio hospedeiro enxergará as VMs da rede interna. Desta forma, todo o tráfego ficará restrito à rede interna e completamente isolado e escondido da rede externa.

É um modo seguro de se fazer rede entre as VMs, pois será impossível capturar pacotes pela rede externa.


Placa De Rede Exclusiva De Hospedeiro

Neste modo, o VirtualBox monta uma rede contendo somente o hospedeiro e um conjunto de máquinas virtuais, sem a necessidade do adaptador de rede físico do hospedeiro. É um modo híbrido entre o modo bridge e o modo de rede interna, as VMs se enxergarão entre si e ao hospedeiro, como se estivessem conectadas a uma mesma rede física, porém, como a rede interna está conectada somente à interface virtual do hospedeiro, o acesso a rede externa não é possível.

O VirtualBox cria no sistema hospedeiro uma interface virtual de rede, semelhante a interface de loopback. Esta interface proporciona a conectividade entre as VMs e o sistema hospedeiro.


Driver Genérico

Este modo é raramente usado. Permite ao usuário selecionar um driver que pode ser incluído no VirtualBox, numa recompilação, ou fornecido por um pacote de extensão.

Possui submodos os quais permitem que máquinas virtuais, em hospedeiros distintos, fiquem conectadas numa mesma infraestrutura de rede. Em outras palavras, permite a conexão em rede de sistemas convidados que estão em diferentes sistemas hospedeiros.

Generalizando, é uma parte opcional do VirtualBox que só está incluída no código fonte. O pacote fornecido pela Oracle não inclui os drivers necessários.

sexta-feira, 16 de março de 2012

Repositórios extras para o CentOS

O CentOS (Community ENTerprise Operating System) (http://www.centos.org/) é uma distribuição Linux baseada nos pacotes fontes livres do RHEL (Red Hat Enterprise Linux), portanto totalmente livre e gratuito, sendo 100% compatível com a distribuição da Red Hat. A cada nova versão do RHEL é lançada uma nova versão equivalente para o CentOS.

Além do repositório de software oficial da comunidade desenvolvedora do CentOS, existem outros repositórios compatíveis com o RHEL e derivados, como o CentOS, fornecendo centenas de pacotes de softwares que complementam o repositório oficial. Em destaque temos o EPEL, Repoforge e ATrpms. Estes são repositórios mantidos por terceiros.

A instalação dos softwares fornecidos por estes repositórios pode ser feita isoladamente, pacote a pacote, ou configurando os repositórios no YUM para que a busca e instalação se torne automatizada. É este segundo modo que será exemplificado neste artigo.


O EPEL (Extra Packages for Enterprise Linux) (http://fedoraproject.org/wiki/EPEL) é um grupo especial da comunidade Fedora que mantém e gerencia um conjunto de alta qualidade de pacotes adicionais, para o Enterprise Linux e compatíveis. Os pacotes fornecidos pelo EPEL nunca conflitam ou substituem os pacotes básicos das distros Enterprise Linux, são pacotes que complementam. O EPEL usa a mesma infraestrutura dos repositórios do Fedora. São pacotes 100% livres, de softwares de código aberto.

Para usar o EPEL no CentOS, de forma automática pelo YUM, basta instalar o pacote de configuração. Este pacote instala os detalhes do repositório nos arquivos de configuração do YUM. O pacote de configuração deve estar de acordo com a versão do CentOS.

Por exemplo, para instalar o pacote de configuração do EPEL no CentOS 6, o pacote será:

http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm

Instale com a ferramenta que desejar, seja com "yum localinstall ..." ou "rpm -ivh ..." direto na URL do arquivo, e o repositório do EPEL será incluido no YUM. Lembre-se de instalar o pacote apropriado para a versão do CentOS.


Outro repositório é o Repoforge (http://repoforge.org/), anteriormente chamado de RPMforge. Também é um projeto que mantém pacotes para o RHEL e derivados.

O Repoforge contém um repositório com pacotes que não causam qualquer conflito com a base RHEL e outro repositório separado (rpmforge-extras) que fornece versões mais novas, e assim com um certo conflito, dos pacotes da base oficial do RHEL.

Por exemplo, para instalar o pacote de configuração do Repoforge no CentOS 6, numa máquina compatível com i686, o pacote será:

http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm

Na instalação deste pacote, o repositório rpmforge-extras vem desabilitado por padrão.


Além do EPEL e do Repoforge, existe o repositório ATrpms (http://atrpms.net/). Este repositório fornece principalmente pacotes de softwares multimídia e drivers das placas de vídeo nVidia. Assim como o Repoforge, as configurações do ATrpms oferecem repositórios extras de versões ainda em testes e extremamente novas. Estes não vem habilitados por padrão, apenas o repositório de versões estáveis.

Por exemplo, para instalar o pacote de configuração do ATrpms no CentOS 6, numa máquina compatível com i686, o pacote será:

http://dl.atrpms.net/all/atrpms-repo-6-5.el6.i686.rpm


Estes três são os principais repositórios, mantidos por terceiros, para a distribuição RHEL e derivadas. Existem outros. Compensa bastante habilitá-los no CentOS pois assim tem-se uma quantidade maior de softwares disponíveis. Com estes repositórios habilitados no YUM, qualquer chamada por pacotes, seja em um comando de procura, de instalação ou de atualização, os respectivos repositórios serão verificados na busca. As dependências também serão resolvidas automaticamente.


E aproveitando este artigo, o repositório de ferramentas forenses do CERT (http://www.cert.org/forensics/repository/) para uso em computação forense, pode ser configurado com a instalação do seguinte arquivo (para CentOS 6):

http://www.cert.org/forensics/tools/cert-forensics-tools-release-el6.rpm


Os pacotes de configurações citados nos exemplos são versões no momento da redação deste artigo. Quando for instalá-los, procure pelas versões atuais:

http://download.fedoraproject.org/pub/epel/
http://pkgs.repoforge.org/rpmforge-release/
http://packages.atrpms.net/name/atrpms-repo/

quinta-feira, 15 de março de 2012

Problema de Lógica: Os três parentes

Dani, Eli e Cris são parentes entre eles, mas não incestuosamente.

1) Entre os três estão o pai de Dani, a única filha de Eli e o irmão ou irmã de Cris.
2) O irmão ou irmã de Cris não é o pai de Dani nem a filha de Eli.

Qual deles é de sexo diferente dos outros dois?





RESPOSTA





Da afirmativa 1, entre os três estão um pai, uma filha e um irmão ou irmã. Se o pai de Dani fosse Cris, então o irmão ou irmã de Cris teria que ser Eli. Depois, pela afirmativa 2, a filha de Eli teria que ser Dani. E assim, Dani seria a filha de ambos Eli e Cris, e Eli e Cris seriam irmãos. Esta relação é incestuosa e não é permitida. Portanto, o pai de Dani é Eli. E então, pela afirmativa 2, o irmão ou irmã de Cris é Dani. De modo que a filha de Eli é Cris. E por isso, pela afirmação 1, Dani é filho de Eli. Respondendo a questão, Cris é a única do sexo feminino.

Alterar a resolução da tela de uma máquina virtual Mac OS X

Numa instalação comum, no próprio hardware da Apple, é simples alterar a resolução do ambiente gráfico do Mac OS X. Com apenas alguns cliques é possível selecionar uma das resoluções suportadas pela placa de vídeo e monitor:

1º Pelo menu Apple da barra de menus, ou pelo Dock, vá em "Preferências do Sistema".

2º Na janela das "Preferências do Sistema", clique em "Monitores".

3º Na janela "Monitor", selecione a resolução desejada.

4º Feche a janela das "Preferências do Sistema".

Entretanto, quando o sistema operacional Mac OS X está em ambiente virtualizado, pelo menos no VirtualBox ou no VMware, o Mac OS X pode apresentar uma limitação nesta funcionalidade. Numa instalação virtual, é possível que tenha somente uma resolução disponível na interface das "Preferências do Sistema".

Em casos assim, se desejar alterar a resolução, é necessário editar um arquivo de configuração do sistema, para forçar determinada resolução na máquina virtual Mac OS X. Siga os passos abaixo:

1º No desktop do Mac OS X, dê um duplo clique no ícone do dispositivo "Mac OS X".

2º Avance pelas pastas seguindo o caminho "Library/Preferences/SystemConfiguration".

3º Clique com o botão direito sobre o arquivo "com.apple.Boot.plist", clique em "Abrir Com" e depois em "TextEdit".

4º No arquivo aberto para edição, procure pela primeira linha que contenha "<string></string>" e abra uma linha em branco após esta linha.

5º No espaço em branco, digite estas duas linhas especificando a resolução e os bits de cor desejado:

<key>Graphics Mode</key>
<string>800x600x32</string>

6º Na barra de menus, vá em "Arquivo" e clique em "Salvar".

7º Feche a janela do "TextEdit" e reinicie o sistema operacional Mac OS X.

Se tudo der certo, na próxima inicialização o ambiente gráfico estará na resolução especificada. Na janela "Monitor" das "Preferências do Sistema" agora fica disponível somente esta resolução, definida no arquivo "com.apple.Boot.plist".

Edição do arquivo com.apple.Boot.plist.

Caso receba um aviso de que seu usuário não possui permissão de escrita no arquivo que está sendo editado. Siga estes passos para modificar as permissões do arquivo e da pasta que ele está:

1º Feche a janela do "TextEdit", descartando as alterações.

2º Clique com o botão direito sobre o arquivo "com.apple.Boot.plist" e clique em "Obter Informações".

3º Clique no cadeado, localizado no canto inferior direito e digite sua senha de administrador.

4º Expanda a última seção, "Compartilhamento e Permissões", e modifique o "Privilégio" do seu usuário para "Leitura e Gravação". Se necessário adicione seu usuário clicando no "+", selecionando um novo usuário.

5º Feche a janela de "Informações".

6º Repita os mesmos passos para a pasta "SystemConfiguration", faça o mesmo para modificar a permissão da pasta.

Volte a editar o arquivo "com.apple.Boot.plist".

Outra forma de alterar a resolução seria forçar pela ferramenta de virtualização, o VirtualBox possui este recurso. Contudo, o procedimento descrito neste artigo serve para qualquer ferramenta de virtualização.

terça-feira, 13 de março de 2012

Funções matemáticas no Wolfram Mathematica

Combinando com o artigo "Tipografia no Wolfram Mathematica" (http://dan-scientia.blogspot.com/2012/03/tipografia-no-wolfram-mathematica.html), este artigo traz um resumo das funções matemáticas contidas no software Mathematica.
   
Para realizar um cálculo, digita-se a função desejada e pressiona-se Shift+Enter para processar o cálculo. Para cada expressão de entrada (in) é agrupada sua saída (out) em células, esta indicação fica visível na margem direita da página.

A estrutura de uma chamada à uma função segue o padrão nome_da_função[argumentos,separados,por,vírgulas]. Os argumentos (ou opções), sempre entre colchetes, podem ser valores, variáveis, expressões e até outras funções. Se os argumentos formarem uma lista, eles devem ficar entre chaves.

Avaliar numericamente a expressão: 

N[Pi, 100]                   Número Pi com 100 casas

N[E, 50]                     Número E com 50 casas

E // N                       Número E com o número de casas padrão


Funções básicas:

Sin[60 Degree]               Seno de 60 graus

Sin[60 Degree] // N          Seno de 60 graus na forma numérica

Sin[Pi/3]                    Seno de Pi/3 radianos

Cos[45 Degree]               Cosseno de 45 graus

Cos[Pi/6]                    Cosseno de Pi/6 radianos

Tan[30 Degree]               Tangente de 30 graus

Sqrt[16]                     Raiz quadrada de 16

Exp[x]                       Exponencial de x (e^x)

Power[2, 10]                 Potência de 2 elevado a 10

Log[2, 128]                  Logarítmo de 128 na base 2

Mod[5, 2]                    Resto da divisão de 5 por 2

Binomial[10, 3]              Coeficiente binomial de 10 na classe 3

Sum[i^2, {i, 2, 10}]         Somatório de i^2, com i de 2 a 10


Estatística:

Mean[{1.21, 3.4, 2.15, 4, 1.55}]                      Média

Variance[{1.21, 3.4, 2, 4.6, 1.5, 5.61, 7.2}]         Variância

StandardDeviation[{1.2, 3.4, 2, 4.6, 1.5, 5.6, 7.2}]  Desvio Padrão

Median[{1, 2, 3, 4, 5, 6, 7}]                         Mediana


Gera lista dos valores da expressão: 

Table[Prime[n], {n, 20}]            20 primeiros números primos

Table[Fibonacci[n], {n, 20}]        20 primeiros números de Fibonacci

Table[n!, {n, 10}]                  Fatorial de n, com n de 1 a 10

Column[Table[Binomial[n, k], {n, 0, 5}, {k, 0, n}], Center]  Triângulo de Pascal


Matriz:

Det[{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}]        Determinante

Inverse[{{u, v}, {v, u}}]                     Matriz inversa

Transpose[{{a, b, c}, {x, y, z}}]             Matriz transposta


Soluções para as variáveis:

Solve[x^2 - 5 x + 6 == 0, x]

Solve[{2 x + 2 y + 3 z == 5, x + y + 2 z == 3, 3 x + 4 y + 2 z == 0}, {x, y, z}]

NSolve[{2^2 a + 2 b + c == 0, 4^2 a + 4 b + c == 3, 6^2 a + 6 b + c == 0}, {a, b, c}]

NSolve[2^2 a + 2 b + c == 0 && 4^2 a + 4 b + c == 3 && 6^2 a + 6 b + c == 0, {a, b, c}]


Expande expressão polinomial: 

Expand[(x - 3)^2]

Expand[(x + 2)^3]


Simplifica a expressão: 

Simplify[(x - 1) (x + 1) (x^2 + 1) + 1]

Simplify[(x^2 - 8x + 16)/(x^2 - 16)]


Fatora uma expressão: 

Factor[x^2 - 7x + 10]

Factor[x^2 - 2^2]

Factor[(x^3 - 3^3)]


Limite da expressão: 

Limit[x^2 + 16, x -> 2]

Limit[(1 + x/n)^n, n -> Infinity]

f[x] := 2 x + 1
Limit[(f[x + h] - f[x])/h, h -> 0]


Derivada e Integral em x: 

D[x^2 + 16, x]

D[x^4 - 4 x^3 + 2 x^2 - 9, x]

D[x^4 - 4 x^3 + 2 x^2 - 9, {x, 2}]

Integrate[1 + 3 x, {x, 0, 2}]

Integrate[x^3 + 3 x + 1, {x, 2, 3}]

Integrate[Integrate[((x^2)/2) + 1, y], x]


Gráficos de funções (representados na figura abaixo): 

Plot[3 x + 1, {x, -2, 2}]


Plot[3 x + 1, {x, -1, 1}, AspectRatio -> Full, AxesOrigin -> {0, 0}, PlotRange -> {{-4, 4}, {-4, 4}}, AxesLabel -> {x, y}, Ticks -> {{-4, -3, -2, -1, 0, 1, 2, 3, 4}, {-4, -3, -2, -1, 0, 1, 2, 3, 4}}, PlotStyle -> {Thickness[0.005]}]


Plot[x^2 - 2 x + 1, {x, -4, 4}, AspectRatio -> Full, AxesOrigin -> {0, 0}, PlotRange -> {{-4, 4}, {-4, 4}}, AxesLabel -> {x, y}, Ticks -> {{-4, -3, -2, -1, 0, 1, 2, 3, 4}, {-4, -3, -2, -1, 0, 1, 2, 3, 4}}, PlotStyle -> {Thickness[0.005]}]


Plot[Sin[x], {x, 0, 6 Pi}, PlotStyle -> {Thickness[0.005]}]


PolarPlot[x, {x, 0, 10 Pi}]


ContourPlot[x^2 + y^2 == 1, {x, -1, 1}, {y, -1, 1}]


ParametricPlot[{Cos[x], Sin[x]}, {x, 0, 2 Pi}]


RegionPlot[x^2 + y^2 <= 1, {x, -1, 1}, {y, -1, 1}]

Gráficos das funções acima.

Gráficos em três dimensões (representados na figura abaixo): 

ParametricPlot3D[{Cos[2 t], Sin[2 t], t}, {t, 0, 2 \[Pi]}]


ParametricPlot3D[{{4 + (3 + Cos[v]) Sin[u], 4 + (3 + Cos[v]) Cos[u], 4 + Sin[v]}, {8 + (3 + Cos[v]) Cos[u], 4 + Sin[v], 4 + (3 + Cos[v]) Sin[u]}}, {u, 0, 2 Pi}, {v, 0, 2 Pi}, PlotStyle -> {Red, Green}]


ParametricPlot3D[{v Cos[u], v Sin[u], 2 v}, {u, 0, 2 Pi}, {v, 0, 1}, Mesh -> 5, BoundaryStyle -> Black, PlotStyle -> FaceForm[Red, Yellow]]


RevolutionPlot3D[{Cos[t], Sin[t]}, {t, -Pi/2, Pi/2}]


Plot3D[(x^2 + y^2) Exp[-(x^2 + y^2)], {x, -2, 2}, {y, -2, 2}]

Gráficos das funções acima.


Áudio:

Play[Sin[440 2 Pi t], {t, 0, 1}]


Sound[{SoundNote["C"], SoundNote["G"]}]


O Mathematica é um software extremamente rico de funções e comandos. Praticamente todos os cálculos matemáticos são suportados neste software. Experimente testar estes comandos, teclando após a entrada de cada um deles a combinação Shift+Enter.

Segurança eletrônica

Reproduzido do site da Polícia Civil do Estado de São Paulo, seguem algumas dicas de segurança eletrônica:

1. Evite abrir e-mails de remetentes desconhecidos; se forem abertos e estiverem acompanhados de arquivos anexos, não abra tais anexos em hipótese alguma. Geralmente são arquivos executáveis que se infiltram no seu computador.
2. Evite abrir e-mails de bancos e órgãos oficiais como Receita Federal, TRE, DETRAN e SERASA. Essas instituições não enviam e-mails, a não ser que seja solicitado pelo usuário.
3. Faça instalação de programas antivírus, de preferência fabricantes conhecidos, e evite programas piratas.
4. Fazer uso de Backup (cópia de segurança) em arquivos importantes.
5. Escolha sites conhecidos.
6. Certifique-se da segurança do site. Ele deve ter um ícone de cadeado na parte inferior da tela.
7. Só digite números pessoais como identidade, CPF ou cartão de crédito em sites criptografados (essa técnica de segurança ‘‘embaralha’’ as informações para que só os computadores do site consigam desvendar o real significado de suas informações pessoais). Para saber se a empresa conta com esse processo, procure o link que descreve as formas de pagamento e condições de segurança.
8. Verifique se os dados do seu cartão de crédito ficam armazenados no banco de dados da loja virtual. Os melhores sites são os que não salvam esses dados.
9. Imprima todas as etapas da negociação feita pela Internet. Inclusive a descrição do produto, os termos de pagamento, condições e a garantia.
10. Evite deixar em seu computador pessoal (PC) senhas gravadas ou o uso da função auto-completar.
11. Crie senhas aleatórias, mesclando letras e números e procure alterá-la periodicamente, evite usar nomes que possam facilitar a ação de Hackers como data de aniversário, numero do telefone, datas comemorativas e nomes de familiares ou animais de estimação.
12. Não forneça dados pessoais em salas de relacionamento ou bate-papos on-line. Os criminosos são capazes de desvendar senhas com apenas algumas informações pessoais.
13. Nunca divulgue número de cartão, conta bancária ou senha por e-mail.
14. Os pais devem ficar atentos e monitorar os contatos e relacionamentos que envolvem crianças e adolescentes, principalmente durante a madrugada.

Fonte: Polícia Civil do Estado de São Paulo (http://www2.policiacivil.sp.gov.br/x2016/modules/mastop_publish/?tac=Seguran%E7a_eletr%F4nica)

sexta-feira, 9 de março de 2012

Tipografia no Wolfram Mathematica

O Mathematica (http://www.wolfram.com/mathematica/) é um software matemático computacional para cálculo desde a matemática elementar até sistemas de equações complexos. Possui uma interface de entrada de expressões semelhante à notação humana. Sua completa tipografia permite a entrada de qualquer expressão e símbolo matemático.

Neste artigo apresento algumas teclas de atalhos para digitação das expressões matemáticas, em relação a caracteres especiais e símbolos da notação matemática, tabulação e expressão bi-dimensional. Analogamente, toda esta tipografia pode ser editada pelo menu "Palettes", onde encontram-se assistentes de entrada de caracteres matemáticos.

A digitação funciona da seguinte forma; em alguns casos pela combinação de duas ou mais teclas pressionadas simultaneamente, por exemplo Ctrl+7; em outros casos teclando Esc, seguido da abreviação do símbolo e concluindo com outro Esc, por exemplo Esc dd Esc. Segue a tipografia:

Expressões bi-dimensionais:

Ctrl + /                     Fração
Ctrl + 6 ou Ctrl + ^         Potência ou sobrescrito
Ctrl + 2 ou Ctrl + @         Raiz
Ctrl + 5 ou Ctrl + %         Radical da raiz
Ctrl + - ou Ctrl + _         Subescrito
Ctrl + 7 ou Ctrl + &         Escrita em cima
Ctrl + 4 ou Ctrl + $         Escrita embaixo

Símbolos de matemática básica:

Esc cross Esc                Cruz
Esc * Esc                    Vezes
Esc div Esc                  Divisão
Esc != Esc                   Diferente
Esc <= Esc                   Menor igual
Esc >= Esc                   Maior igual
Esc +- Esc                   Mais ou menos
Esc deg Esc                  Grau

Notação tabulada para o cálculo:

Esc intt Esc                 Integral indefinida
Esc dintt Esc                Integral definida
Esc dt Esc                   Derivada parcial
Esc sumt Esc                 Somatório
Esc prodt Esc                Produto

Caracteres especiais:

Esc ee Esc                   Número exponencial
Esc pi Esc                   Número pi
Esc ii Esc                   Número imaginário
Esc inf Esc                  Infinito
Esc int Esc                  Integral
Esc dd Esc                   Diferencial
Esc pd Esc                   Diferencial parcial
Esc sum Esc                  Somatório
Esc prod Esc                 Produto

Esc dsN Esc                  Números naturais
Esc dsZ Esc                  Números inteiros
Esc dsQ Esc                  Números racionais
Esc dsR Esc                  Números reais
Esc dsC Esc                  Números complexos

Símbolos de teoria dos conjuntos:

Esc el Esc                   Pertence
Esc !el Esc                  Não pertence
Esc ex Esc                   Existe
Esc !ex Esc                  Não existe
Esc sup Esc                  Contém
Esc !sup Esc                 Não contém
Esc sub Esc                  Contido
Esc !sub Esc                 Não contido
Esc fa Esc                   Para todo
Esc un Esc                   União
Esc inter Esc                Intersecção
Esc es Esc                   Conjunto vazio

Símbolos de lógica:

Esc && Esc ou Esc and Esc    E
Esc || Esc ou Esc or Esc     Ou
Esc ! Esc ou Esc not Esc     Negação
Esc nand Esc                 Nand
Esc nor Esc                  Nor
Esc xor Esc                  Xor
Esc xnor Esc                 Xnor

Esc === Esc                  Congruente
Esc => Esc                   Implica
Esc equiv Esc                Equivalente
Esc tf Esc                   Então/portanto

Isto não é tudo, existem muito mais teclas de atalhos. Além do mais, muitos símbolos somente são acessíveis pelo nome do caractere (ex. \[Because]), pelo código unicode (ex. 2235) ou pelos assistentes do menu "Palettes".

Com a expressão devidamente digitada, é possível computá-la, afinal é um software para cálculo matemático. A seguir as teclas de atalhos para computação:

Shift + Enter                Computa a expressão;
                             (ou apenas o Enter do teclado numérico)
Shift + Ctrl + Enter         Computa somente a expressão selecionada;
Alt + .                      Aborta uma computação

O ícone deste software pode ser digitado com as teclas Esc math Esc. Conheça outros softwares matemáticos em: http://dan-scientia.blogspot.com/2009/08/softwares-matematicos-poderosos.html