• Nenhum resultado encontrado

Informática para Ciências e Engenharias 2014/15. Teórica 6

N/A
N/A
Protected

Academic year: 2021

Share "Informática para Ciências e Engenharias 2014/15. Teórica 6"

Copied!
114
0
0

Texto

(1)

Informática para Ciências

e Engenharias

2014/15

(2)

Na aula de hoje...

Introdução às redes de computadores e

à Internet:

Redes de computadores e seus protocolos

Obtenção de dados da Internet usando MATLAB/Octave.

Métodos de Monte Carlo

(3)
(4)

Redes de computadores

Um conjunto de computadores pode ser

interligado com o objectivo de trocar

informação e partilhar recursos,

transferindo dados entre si.

Exemplo: pesquisa no Google

enviamos os termos a pesquisar, usamos os

recursos do motor de pesquisa, obtemos de volta o resultado.

(5)

Redes de computadores

Numa transferência intervêm dois

computadores e a rede.

Nó emissor : produz uma sequência de bytes (mensagem)

Nó receptor : recebe essa sequência de bytes

A rede, a infraestrutura que inclui

Meios de interligação: cabos, atmosfera, …

Computadores dedicados a encaminhar a

(6)

Relação Cliente Servidor

Programa Cliente Programa Servidor

Pedido (request)

Resposta (response)

Um servidor pode servir vários clientes em simultâneo. Por exemplo, Browser Por exemplo, Servidor Web

(7)

Relação Cliente Servidor

 O servidor gere um recurso e fornece um serviço aos clientes

manipulando esse recurso.

 Um servidor Web pode gerir recursos com dados ou programas

que executa por conta dos clientes.

Um Servidor FTP ou de email funciona de forma análoga.

3. Servidor envia a resposta Recurso 2. Servidor processa o pedido 4. Cliente processa a resposta

1. Cliente envia pedido

Programa Cliente

Programa Servidor

(8)

Relação Cliente Servidor

Exemplo

O browser pede uma página de um blog

O servidor do blog recebe o pedido, obtém o conteúdo da base de dados

Texto, comentários, imagens, etc

O servidor envia essa informação, devidamente estruturada

O browser processa a informação e apresenta a página.

(9)

Relação entre pares

Ligação peer-to-peer

(par-a-par, P2P)

Neste tipo de relação, todos os participantes funcionam como clientes e como servidores

O esforço é partilhado, não exigindo servidores com capacidades especiais

Napster foi o primeiro exemplo notório (mas era centralizado)

BitTorrent é um dos mais conhecidos, e pode ser descentralizado.

(10)

Redes de computadores

Nos nós terminais

Placa ethernet

sinais por cabo

Placa Wi-Fi

sinais por ondas rádio

Rede local

LAN, Local Area Network

~1km; os computadores estão ligados directamente.

(11)

Redes de computadores

 LAN

Cobre um edifício, ou edifícios próximos

 WAN

Wide Area Network

Liga redes locais

 Encaminhador

Router (ou gateway)

máquina dedicada que liga redes diferentes (e.g. LAN a WAN)

(12)

12

Redes de computadores

Nó Nó Nó Router Nó Nó Router Nó Router Ethernet ou WiFI Ethernet ou WiFi

Ligação via satélite

Ligação fibra óptica

Duas LAN ligadas por 3 encaminhadores

(13)

Redes de computadores

Poder enviar sinais não basta.

É preciso saber

Remetente e destinatário

Controlar o tráfego

Como interpretar o conteúdo, etc.

(14)

Protocolos Internet

Nível físico

Sinais entre os nós da rede

Modulação e conversão

(15)

Protocolos Internet

Nível físico

Nível da ligação

Transmissão de conjuntos de bits entre nós da rede

(16)

Protocolos Internet

Nível físico

Nível da ligação

Nível IP (Internet Protocol)

Gere os pacotes de bytes, endereçamento e reencaminhamento

A informação é dividida em pacotes (sequências

de bytes), encaminhados individualmente ao destino.

Cada máquina tem um endereço e cada pacote

(17)

Protocolos Internet

Internet Protocol (IP)

o protocolo IP (versão 4) especifica um endereço único com 32 bits para cada máquina

(128 bits no IPv6)

mas permite redes privadas

e.g. em cada casa o router doméstico cria uma rede com

os endereços 192.168.0.(0 – 255), e o ISP fornece um outro endereço para toda essa rede.

(18)

Protocolos Internet

Nível físico

Nível da ligação

Nível IP (Internet Protocol)

Nível de transporte (TCP).

Gere o transporte de dados, encarregando-se da gestão de pacotes e detecção e

(19)

Protocolos Internet

Nível físico

Nível da ligação

Nível IP (Internet Protocol)

Nível de transporte (TCP).

Nível da aplicação

Protocolos destinados a gerir a comunicação entre aplicações ou com o utilizador.

(20)
(21)

Protocolos Internet

Normalmente não vemos endereços IP

Usamos endereços simbólicos

Strings associadas aos endereços IP

e.g. www.google.com

O DNS (Domain Name System) é um sistema hierárquico de servidores que mapeia os

(22)

Top level domains

Top Level Domain Utilização

biz Negócios

com Comercial (EUA)

edu Educação (EUA)

info Informação

gov Governo (EUA)

mil Militar (EUA)

net Rede

(23)

Top level domains

Fora dos Estados o TLD é o código (com 2 letras) do país.

País TLD pt Portugal uk Reino Unido es Espanha fr França nz Nova Zelândia cn China … …

(24)

Domain Name System

Domínio raiz Top-level

domains edu gov com … uk pt …

utl unl cmu cs fe fct di google ibm

(25)

Protocolos Internet

Endereços simbólicos, exemplo

nslookup (no command prompt ou consola)

~$ nslookup fct.unl.pt ...

Name: fct.unl.pt

(26)

Nome do nó

asc.di.fct.unl.pt

Top level domain

(TLD)

Organização

Nome da

máquina

~$ nslookup asc.di.fct.unl.pt ... asc.di.fct.unl.pt

canonical name = di78.di.fct.unl.pt. Name: di78.di.fct.unl.pt

(27)

Nome do nó

Exemplo:

Em Março 2015 vários ISP bloquearam o acesso ao site thepiratebay.se por ordem judicial.

Fizeram-no configurando os seus servidores DNS para não resolver este nome em

endereço IP

Mas o “bloqueio” pode ser facilmente contornado usando outro servidor DNS

(28)

Internet

Reenvio de pacotes

O remetente envia cada pacote ao router na sua rede.

Cada router reenvia os pacotes ao router que (estima) está mais próximo do destinatário

Pelo endereço IP e tempos de transmissão

Este processo é dinâmico, permitindo gerir o tráfego e

contornar falhas pontuais na rede.

Eventualmente, o pacote chega a um router que o envia ao destinatário

(29)

Internet

(30)

Programas servidores

Nos servidores há programas que esperam

por pedidos (programas servidores)

São executados em background, sem interacção directa com utilizadores (deamons)

Aguardam pedidos dirigidos a portas específicas

Uma porta é um endereço dentro da própria máquina

Exemplos

Servidor Web (porta 80)

(31)

Programas servidores

Exemplos:

Servidor Web (porta 80)

Recursos: ficheiros, programas, páginas dinâmicas

Serviços: obter ficheiros e executar programas CGI a pedido do cliente.

Servidor FTP (portas 20 e 21)

Recursos: ficheiros

Serviços: leitura e escrita de ficheiros

Servidor de Mail (porta 25, SMTP)

Recursos: ficheiro spool de email.

(32)

Programas clientes

Exemplos:

Browser, ftp, ssh,

Encontra o programa servidor

Pelo endereço da máquina onde o programa servidor está a ser executado

Pela porta associada ao protocolo e serviço

e.g. O browser contacta a máquina com aquele endereço IP na porta 80 para o protocolo HTTP.

(33)
(34)

World Wide Web

1989

Tim Berners-Lee (no CERN) escreve uma proposta para desenvolver um sistema

distribuído de hiper-texto. Ligar uma “web of notes with links” para ajudar os físicos do CERN a partilhar informação em grandes projectos.

1990

Tim B-L escreve um browser com interface gráfica.

(35)

World Wide Web

 A Web (teia)

Documentos interligados e sofware para consultar e manipular essa informação.

 Protocolos da Web

Protocolos de aplicação que gerem a partilha da informação.

 Página Web

Documento com dados e, normalmente, ligações (link) a outros documentos.

 Link (elo)

(36)

World Wide Web

 Site Web

Conjunto de páginas Web relacionadas e, geralmente, armazenadas na mesma máquina.

Servidor Web - servidor

Programa, na máquina que aloja a informação, que responde a pedidos de acesso às páginas Web.

Browser Web - cliente

Ferramenta que pede páginas Web e as mostra.

(37)

World Wide Web

A Web não é a Internet

a Internet inclui muito mais do que a Web

a Web existe sobre a Internet

Três elementos centrais da Web são

Uniform Resource Locator

(ou endereço Web)

HTML

linguagem das páginas Web

HTTP

(38)

URL: Uniform Resource Locator

http://asc.di.fct.unl.pt/~pm/index.html

Protocolo Máquina Endereço IP:x.x.x.x Nome DNS Ficheiro /home/pm/public-html/index.html

Forma normalizada de especificar a

localização de um recurso na Web.

Protocolo (pode ser omitido);

Nome da máquina;

(39)

HTML

Hypertext Markup Language (HTML)

Linguagem usada para criar páginas Web.

é uma markup language porque usa marcas (tags) para anotar a informação.

Tags (marcas)

Especificam a interpretação do conteúdo

A forma concreta como a informação é

(40)

HTML

Código fonte da página, HTML

(41)

HTML

Representação da página pelo browser

(42)

HTML

Marcas (tags)

Colocadas entre os símbolos < e >

A marca final distingue-se da inicial pela </..>

Elementos

Os elementos da página são definidos por uma marca inicial e final ladeando o conteúdo.

e.g. <TITLE>Título</TITLE>

(43)

HTML

Exemplos

<P> ... </P> especifica um parágrafo separado.

<BR> indica uma mudança de linha.

<CENTER> ... </CENTER> centra o conteúdo.

<I> … </I> conteúdo em itálico.

<B> … </B> conteúdo em negrito (bold).

<HR> insere um separador horizontal a toda a largura da página (mudança de contexto).

(44)

HTML

Exemplos

<UL> … </UL> define uma lista de itens.

<LI>…</LI> define um item.

<H1> … </H1> Formatação do texto no estilo H1 –relevo máximo (dimensão das letras …).

<H8> … </H8> Formatação do texto no estilo H8 – relevo mínimo.

(45)

HTML

Nota:

No standard HTML5 a ênfase é na semântica e não no aspecto visual.

Várias tags foram delegadas para folhas de estilo (e.g. CENTER) ou têm significado

(46)

HTML

A tag pode ter também atributos

informação adicional acerca do elemento.

nome-do-atributo="valor"

Exemplo

Imagem:

(47)

HTML

Links (hiper-ligação)

Tag A (âncora) 

Exemplo

<A HREF = "http://ssdi.di.fct.unl.pt/ice/b/praticas.html"> página das práticas de ICE-B</A>

(48)

Protocolo HTTP

Browser Servidor

Pedido

Resposta

GET /index.html HTTP/1.1

Linhas com informação sobre o pedido e o browser Linha em branco

Mais linhas opcionais

200 OK HTTP/1.1

Linhas com informação sobre a resposta e o servidor Linha em branco

Mais linhas opcionais

<html>

</html>

Pedidos e respostas são

(49)

World Wide Web

Utilizador especifica URL, o browser pede o recurso ao servidor, este envia os dados com o texto, imagens, etc.

(50)

Conteúdo estático

O conteúdo pode ser estático

é enviado um ficheiro que existe no servidor

Exemplos: ficheiros HTML, imagens, audio clips.

URLs para conteúdos estáticos:

http://www.cs.cmu.edu:80/index.html

http://www.cs.cmu.edu/index.html

http://www.cs.cmu.edu

Identificam o ficheiro index.html gerido pelo servidor em www.cs.cmu.edu à escuta na porta 80.

(51)

Conteúdo dinâmico

O conteúdo pode ser dinâmico

Quando é pedido um recurso dinâmico, o servidor executa um programa que o gera no momento.

(52)
(53)

Acesso a recursos remotos

O MATLAB (e Octave) inclui funções para

aceder a recursos pelo URL

[conteudo, sucesso] = urlread( url )

A função urlread acede ao URL url e retorna:

na string conteudo o conteúdo obtido;

no booleano sucesso o valor true (1), se a operação

teve sucesso, e o valor false (0), se a operação não teve sucesso.

(54)

Acesso a recursos remotos

[nComp,sucesso]=urlwrite(url,nomeFich)

A função urlwrite acede ao URL url, grava o conteúdo no ficheiro nomeFich e retorna:

na string nComp o nome completo do ficheiro local,

incluíndo o caminho;

no booleano sucesso o valor true (1), se a operação teve

sucesso, e o valor false (0), se a operação não teve sucesso.

(55)
(56)

Exemplo: pauta

As notas dos trabalhos e testes estão

num servidor:

http://ctp.di.fct.unl.pt/~mm/ice/teoricas/notasAC.txt

50123 12.5 14.1 16.4 9.9; 50224 8.1 10.3 5.5 8.2; 51001 7.7 4.4 15.1 12.0

(57)

Exemplo

 Compreender o problema  Caracterizar:

Entrada: URL

Saída: pauta com as avaliações

 Tarefas

Obter os dados remotos (urlread) e converter numa

matriz (Já vamos ver como...)

Calcular a pauta

(58)

Exemplo

Assinaturas das funções

Ler as notas

function notas=lenotas(url)

Da aula 4

function pauta = calculapauta(notas)

function nota = calculanota(notas)

function res=arredonda(valor,casasDec)

Juntar tudo

(59)

Exemplo

Converter string em números:

str2num octave:11> a=str2num(s)

a = 123 octave:12> a+1 ans = 124 octave:13> mStr='1,2,3;4,5,6;7,8,9' mStr = 1,2,3;4,5,6;7,8,9 octave:14> m=str2num(mStr) m = 1 2 3 4 5 6 7 8 9 octave:9> s='123' s = 123 octave:10> s+1 ans = 50 51 52

(60)

Exemplo

Os dados no servidor são fáceis de

converter:

50123 12.5 14.1 16.4 9.9; 50224 8.1 10.3 5.5 8.2; 51001 7.7 4.4 15.1 12.0

(61)
(62)

Exemplo

octave-3.6.4.exe:3>ns=lenotas('http://ctp.di.fct.unl.pt/~mm/ice/teoricas/notasA.txt') Falhou a leitura do URL http://ctp.di.fct.unl.pt/~mm/ice/teoricas/notasA.txt

ns = [](0x0)

octave-3.6.4.exe:4>ns=lenotas('http://ctp.di.fct.unl.pt/~mm/ice/teoricas/notasAC.txt') ns =

5.0123e+004 1.2500e+001 1.4100e+001 1.6400e+001 9.9000e+000 5.0224e+004 8.1000e+000 1.0300e+001 5.5000e+000 8.2000e+000 5.1001e+004 7.7000e+000 4.4000e+000 1.5100e+001 1.2000e+001

(63)
(64)

Exemplo

Testar calculapautaurl:

> url='http://ctp.di.fct.unl.pt/~mm/ice/teoricas/notasAC.txt' > pauta=calculapautaurl(url) pauta = 50123 13 50224 7 51001 -1

(65)

Nota: http:// ou file://

O URL pode ser usado para designar

um ficheiro local

Nesse caso o protocolo não será http mas sim file.

(66)

Nota: http:// ou file://

Por exemplo, guardamos notasAC.txt

na pasta de trabalho:

octave:11> url='file://notasAC.txt'; octave:12> pauta=calculapautaurl(url) pauta = 50123 13 50224 7 51001 -1

(67)
(68)

Monte Carlo

Nome cunhado pelo matemático

Nicholas Constantine Metropolis

(1915-1999)

Conjunto de métodos baseados em

(69)

Estimar π

Círculo de raio 1, área = π

quadrado área = 1

quarto, área = π/4

(70)

Estimar π

Algoritmo (Monte Carlo)

N pontos ao acaso

contar d dentro

π ~ (d/N)*4

(71)

Calculo de áreas por MC

Em geral

N pontos ao acaso numa região conhecida que inclua a região de interesse

pseudo aleatórios

contar quantos incidem na área de interesse

a área de interesse será essa fracção, aproximadamente, da área conhecida

funciona melhor quanto maior for N e quanto maior for a fracção na área de interesse.

(72)

Calculo de áreas por MC

Função estimapi

recebe o número de pontos a gerar para a estimativa

devolve

o valor estimado de pi

duas matrizes com os pontos (x,y) que calharam dentro

e fora da área de interesse, para o gráfico.

Assinatura da função:

(73)

Cria os vectores de saída (no máximo N linhas) e os

contadores que indicam

quantos pontos e em que linha vamos, em cada caso.

(74)

Ciclo principal para disparar N pontos

(75)

Função rand simula números aleatórios (pseudo-aleatória) 0 <= rand < 1 octave:46> rand ans = 0.30517 octave:47> rand ans = 0.73012 octave:48> rand ans = 0.76470 octave:49> rand ans = 0.083024

(76)

O ponto gerado a cada iteração conta dentro se a distância à origem não ultrapassar a unidade, fora se ultrapassar.

Incrementando as variáveis ixDentro e ixFora mantemos a contagem e o índice do ponto na matriz respectiva.

(77)

O resultado, a estimativa de π, é o quádruplo da área estimada pela proporção de pontos dentro.

É preciso também

redimensionar as matrizes dos pontos de acordo com o número efectivo de pontos (N linhas era o máximo possível, para evitar

redimensionar as matrizes muitas vezes durante o ciclo).

(78)

Estimar π

Script de

(79)

Estimar π

N=100

(80)

Estimar π

N=500

(81)

Estimar π

N=5000

(82)

Estimar π

N=25000

(83)

Estimar π

Mais pontos,

(84)

Perigo de incêndio

Incêndio

Simulação aleatória

Cada simulação dá um resultado diferente

Monte Carlo:

Fazer muitas, tirar

(85)

Perigo de incêndio

Simulação de incêndio (aula 5)

function novoEstado=propaga(estado, ... mapa,probPropagar,efeitoDeclive)

function estado=extingue(estado,probApagar)

function incendio(mapa,focoInicial, probPropagar, ... probApagar,efeitoDeclive,iteracoes)

(86)

Perigo de incêndio

Objectivo

Obter um mapa com as probabilidades do

incêndio chegar a cada ponto em certo tempo

O tempo é o número de iterações

As probabilidades são estimadas pelo

(87)

Perigo de incêndio

Algoritmo

Para um certo número N de iterações:

Correr várias vezes a simulação

A cada vez, marcar onde o incêndio chegou

(88)

Perigo de incêndio

Como implementar

Correr várias vezes a simulação

Criar uma função, com um ciclo for

A cada vez, marcar onde o incêndio chegou

Precisamos do resultado da simulação do incêndio

Contar quantas vezes chegou a cada sítio

Na função que corre várias vezes a simulação,

(89)

Perigo de incêndio

Assinaturas:

As funções propaga e extingue são as da aula 5, sem modificação:

function novoEstado=propaga(estado,mapa, ... probPropagar, efeitoDeclive)

(90)

Perigo de incêndio

Assinaturas:

Mas temos de alterar a função incendio:

function incendio(mapa,focoInicial,probPropagar, ... probApagar,efeitoDeclive,iteracoes)

Precisamos que devolva o estado final da

simulação, para saber onde chegou o fogo

Não queremos que desenhe o gráfico, porque

demora mais e é desnecessário

function estado=incendio(mapa,focoInicial, ...

(91)

Perigo de incêndio

Assinaturas:

Depois precisamos de uma função que

calcule o perigo de incêndio pela contagem, simulando vários incêndios

Recebe os argumentos de que a simulação

precisa, mais o número de repetições

function contagens=perigo(mapa,focoInicial, ... probPropagar,probApagar,efeitoDeclive, ... iteracoes,repeticoes)

(92)

Perigo de incêndio

Implementação:

Modificar a função incêndio

Devolver o estado final

Não desenhar os gráficos, porque vamos ter de a

(93)

Perigo de incêndio

Implementação:

Modificar a função incêndio

Devolver o estado final

Não desenhar os gráficos, porque vamos ter de a

(94)

Perigo de incêndio

Implementação:

Criar a função perigo, para obter a contagem por cada ponto do mapa.

function contagens=perigo(mapa,focoInicial, ... probPropagar,probApagar,efeitoDeclive, ... iteracoes,repeticoes)

(95)

Perigo de incêndio

Implementação:

Criar a função perigo, para obter a contagem por cada ponto do mapa.

function contagens=perigo(mapa,focoInicial, ... probPropagar,probApagar,efeitoDeclive, ... iteracoes,repeticoes)

(96)

Perigo de incêndio

Implementação:

Criar a função perigo, para obter a contagem por cada ponto do mapa.

function contagens=perigo(mapa,focoInicial, ... probPropagar,probApagar,efeitoDeclive, ... iteracoes,repeticoes)

Para cada repetição, corremos a simulação de um incêndio, guardando o estado final.

(97)

Perigo de incêndio

Implementação:

Criar a função perigo, para obter a contagem por cada ponto do mapa.

function contagens=perigo(mapa,focoInicial, ... probPropagar,probApagar,efeitoDeclive, ... iteracoes,repeticoes)

Depois, contamos 1 em cada localização que esteja a arder ou tenha ardido, numa matriz que começou a 0.

(98)

Perigo de incêndio

Implementação:

Criar a função perigo, para obter a contagem por cada ponto do mapa.

function contagens=perigo(mapa,focoInicial, ... probPropagar,probApagar,efeitoDeclive, ... iteracoes,repeticoes)

Isto serve apenas para seguirmos o progresso do cálculo, porque demora algum tempo.

O disp(f) escreve o valor de f na consola, e o comando fflush(stdout) obriga o

interpretador a actualizar a consola imediatamente.

(99)

Perigo de incêndio

Testes

Para correr a função perigo e ver o resultado precisamos do mapa, da matriz de

propagação e de criar o gráfico.

Podemos criar um script de testes

Ou fazer outra função, mas normalmente para

(100)

Perigo de incêndio

Testes

Para correr a função perigo e ver o resultado precisamos do mapa, da matriz de

propagação e de criar o gráfico.

Podemos criar um script de testes

Ou fazer outra função, mas normalmente para

(101)
(102)

Nota

Truques úteis mas opcionais:

fflush(stdout) para mostrar informação na

consola durante a execução

more off para não interromper quando há

mais do que um ecrã de informação

print('nome.jpg') para gravar imagens

Scripts de testes

(103)

Perigo de incêndio

Aplicação:

Cada hora de incêndio são 10 iterações

Queremos incêndios de 1 a 15 horas, com 100 repetições para cada simulação.

Corremos o programa com vários valores para o número de iterações da simulação.

(podia ser mais eficiente se fossemos guardando

os resultados intermédios durante a simulação, mas isso exigiria alterações mais profundas).

(104)

Perigo de incêndio

Implementação:

Correr o programa com vários valores para o número de iterações da simulação.

(podia ser mais eficiente se fossemos guardando

os resultados intermédios durante a simulação, mas isso exigiria alterações mais profundas).

Vamos imaginar que cada hora de incêndio corresponde a 10 iterações, e fazer para incêndios de 1 a 15 horas, com 100

(105)

Perigo de incêndio

Aplicação:

Incêndios de 1 a 15 horas de duração

100 repetições de cada simulação.

Com e sem vento

Isto demora várias horas a calcular

Mas vamos gravando as imagens e vemos o resultado no final

(106)

1 hora simulada (10 iterações)

Perigo de incêndio

(107)

5 horas simuladas (50 iterações)

Perigo de incêndio

(108)

10 horas simuladas (100 iterações)

Perigo de incêndio

(109)

1 a 15 horas simuladas

Perigo de incêndio

(110)

Métodos de Monte Carlo

Resumindo:

Usamos um algoritmo não determinista (aleatório) para simular algo

Amostramos o espaço de possibilidades

(111)
(112)

Trabalho Prático 1

Obter dados de um servidor (URL)

Processar os dados

matrizes, cálculos, …

Gerar gráficos

(113)

Trabalho Prático 1

Aulas práticas

Apoio nas próximas semanas

Entregas

Versão intermédia, 26 de Abril

não conta para nota, entreguem o que tiverem

para “ensaiar” e para seguirmos o progresso

Versão final

Limite: 3 de Maio, recomendado uns dias antes

(114)

Referências

Documentos relacionados

Caso o desempatador opine pela realização do procedimento na forma proposta pela operadora e o médico/dentista assistente se negar a executá-lo, a operadora deverá

M ATERIAIS RESTAURADORES DEFINITIVOS : RESINAS COMPOSTAS FOTOPOLIMERIZÁVEIS  Usadas para todas as classes de cavidades  Sistema de polimerização física-luz.  Compostas

A prevalência de uso da anticoncepção é bem mais alta entre as mulheres residentes nas áreas urbanas, quando comparadas com aquelas das áreas rurais (66% e 49%,

[r]

[r]

O browser contacta a máquina com aquele endereço IP na porta 80 para o protocolo HTTP... World

•   Neste caso, se as strings não tiverem o mesmo comprimento, as mais pequenas são preenchidas com brancos.. Acesso

l  Propagar os focos do incêndio.. Para todas as células internas da matriz que estejam a arder. Nota: Não queremos propagar as da fronteira para evitar sair dos limites da