Matemática Experimental

Tamanho: px
Começar a partir da página:

Download "Matemática Experimental"

Transcrição

1 Matemática Experimental Licenciatura em Matemática Aplicada e Computação 1 o Semestre de 2011/2012 Professor responsável: Juha Videman ( videman@math.ist.utl.pt)

2 0. Introdução Matemática Experimental é uma área de matemática que utiliza ferramentas computacionais para estudar, de forma exploratória, conceitos matemáticos. Tem sido útil para identificar aspectos que devem ser melhor estudados; explorar esses aspectos através de exemplos, gráficos, etc.; descobrir padrões e relações que permitam formular hipóteses acerca do problema em estudo; explicar esses padrões utilizando ferramentas computacionais; ajudar provar ou desprovar teorias e conjecturas; proporcionar uma abordagem mais intuitiva das demonstrações; confirmar resultados anaĺıticos através de cálculo simbólico.

3 Exemplo: Teorema das quatro cores Dado um mapa plano, dividido em regiões, não são necessárias mais de quatro cores para colori-lo de forma a que regiões vizinhas não partilhem a mesma cor. O teorema foi conjecturado por Francis Guthrie em 1852 e demonstrado pela primeira vez em 1976 por Kenneth Appel e Wolfgang Haken da Universidade de Illinois com a ajuda de um computador IBM360. Apple e Haken conseguiram reduzir o número de possíveis mapas a 1936 configurações que tinham que ser verificadas uma a uma. Em 2004 Benjamin Gonthier e Georges Werner mostraram o resultado recorrendo ao sistema Coq de demonstrações assistidas por computador. Francis Guthrie ( ), um matemático e botanista sulafricano

4 Contraexemplo? (Gardner, 1975) MathWorld é uma enciclopédia online de matemática criada por Eric Weisstein e financiada por Wolfram Research Inc

5

6 WolframAlpha é um mecanismo de conhecimento computacional desenvolvido pela Wolfram Research

7 Ver a demonstração Mondrian Four-Coloring Piet Mondrian ( ), um pintor modernista holândes

8 Exemplo: Conjectura de Kepler Qual a disposição que permita colocar o maior número de esferas no menor espaço possível? Conjectura de Kepler (1611) : é empilhá-las em pirâmide como se empilham as laranjas, um empilhamento conhecido como cúbico de face centrada (CFC). Neste caso a densidade média, isto é, a razão entre os espaços ocupado e não ocupado pelas esferas é π Johannes Kepler ( ), um matemático e astrónomo alemão

9 Em 1831, Carl Friedrich Gauss ( ) mostrou que o arranjo CFC é o mais denso dos arranjos regulares. No entanto, a eliminação dos possíveis arranjos irregulares tornou-se num problema complicado. O problema fez parte da lista de 23 problemas em aberto propostos pelo matemático alemão David Hilbert ( ) no Congresso Internacional de Matemáticos em Paris em 1900.

10 Em 1992, Thomas Hales da Universidade de Michigan afirmou que a densidade máxima de todos os arranjos podia ser determinada através de minimização de uma função com 150 variáveis. Hales completou a sua demonstração em 1998, apresentando 250 páginas de notas e 3 GB de código, dados e resultados. A demonstração foi publicada nos Annals of Mathematics, 162, (2005), depois de ter sido considerada 99% correcta pelos referees. Ver também o artigo In Math, Computers Don t Lie. Or Do They?, NYT, April 6, in-math-computers-don-t-lie-or-do-they.html

11 Exemplo: Problema dos 36 oficiais Considere seis regimentos, cada um com seis oficiais e todos eles de postos diferentes. É possível alinhar os 36 oficiais numa formação quadrada (seis linhas e seis colunas) de tal modo que cada linha e cada coluna contenha exactamente um oficial de cada patente e de cada regimento? Leonhard Euler ( ) propôs este problema em 1782 e conjecturou que ele não tem solução. Em 1901, Terry confirmou o resultado (sem ajuda de computador).

12 Um quadrado latino de ordem n é uma matriz n n preenchida com n diferentes símbolos de tal modo que cada símbolo ocorre apenas uma vez em cada linha e coluna. Dois quadrados latinos dizem-se ortogonais se os pares de símbolos formados pelas entradas de cada quadrado na mesma linha e na mesma coluna aparecem sem repetição.

13 Um quadrado latino ortogonal diz-se também quadrado greco-latino ou quadrado de Euler. Por exemplo, um quadrado greco-latino de ordem 3: A solução para o problema dos 36 oficiais teria sido um quadrado greco-latino de ordem 6 com os pares (patente, regimento).

14 A conjectura de Euler sobre quadrados greco-latinos dizia na sua forma mais geral que eles não existem quando n = 4k + 2, k = 1, 2,..., isto é, para n = 6, 10, 14,.... Em , Parker, Bose, e Shrikhande mostararam que a conjectura de Euler é falsa para todo o n 10, ou seja, existem quadrados greco-latinos de todas as ordens n 3 excepto quando n = 6. Foi um dos primeiros problemas de combinatória resolvidos pelo computador. Exercício: Construir os quadrados greco-latinos de ordem 2 e 4.

15 O puzzle Sudoku é um quadrado latino de ordem 9, dividido em nove blocos 3 3, com a restrição adicional de que os números 1 a 9 ocorrem apenas uma vez em cada bloco 3 3. O número de soluções válidas de Sudoku para uma grade 9 9 é (Felgenhauer, 2005). Qual o número mínimo de casas pré-preenchidas para que o jogo tenha apenas uma solução? É um problema em aberto o número mínimo conhecido até hoje é 17.

16 Um exemplo de um Sudoku com 16 casas preenchidas com apenas duas soluções.

17 1. Noção de algoritmo problema modelo matemático algoritmo código Mathematica

18 Abū Abdallāh ibn al-khwārizmi (c ) foi um matemático e astrônomo persa. A palavra Álgebra é derivada de al-jabr, uma das duas operações que al Khawarizmi usou para resolver equações quadráticas. As palavras algarismo e algoritmo vêm de algoritmi, a forma latina de escrever o seu nome. Na sua obra Sobre a Arte Hindu de Calcular (Algoritmi de Numero Indorum), al Khawarizmi introduziu o sistema de numeração hindu, isto é, os algarismos indo-arábicos, no mundo islâmico e ocidental.

19 Algoritmo é uma sequência finita de instruções bem definidas para resolver um problema. Um bom algoritmo deve satisfazer os seguintes critérios: os dados de entrada (input) pertencem a um conjunto bem definido; para qualquer valor (admissível) do input, o algoritmo produz a resposta correcta para o problema; cada instrução é precisa e realizável; o algoritmo termina em tempo finito.

20 Instruções fundamentais para escrever um algoritmo: atribuições x = Range[5]; z = Reverse[x] testes de variáveis If[OddQ[x[[i]]], z[[i]] = z[[i]]+x[[i]], z[[i]] = 0] While[b!= 0, {a, b} = {b, Mod[a, b]}] ciclos Do[Print[x[[i]]],{i,1,5}] For[i = 1, i <= 5, i++, Print[x[[i]]]]

21 Na fase de concepção, o algoritmo é descrito em linguagem corrente ou pseudocódigo para ser posteriormente traduzido, na fase de implementação, para linguagem de programação. Em pseudocódigo: x {1, 2, 3, 4, 5}; If x(i) is odd then z(i) z(i) + x(i) else z(i) 0; While b 0 do { a b; b a (mod b); For i 0 to 5 do Print x(i);

22 As construções If, Do e While do Mathematica: If[condition,t,f ] gives t if condition evaluates to True, and f if it evaluates to False. Do[expr, {i, imin, imax, di}] evaluates expr with i taking on the values imin through imax in steps of di. While[test,body ] evaluates test, then body, repetitively, until test fails to give True.

23 Principais operadores lógicos: p not (also input as p) p&&q&& and (also input as p q ) p q or (also input as p q ) Xor p,q, exclusive or (also input as p q ) Nand p,q, and Nor p,q, nand and nor (also input as and )

24 Principais operadores relacionais: x==y equal (also input as x == y) x!=y unequal (also input as x y) x>y greater than x>=y greater than or equal to (also input as x y) x<y less than x<=y less than or equal to (also input as x y)

25 Exemplo: Determinar o maior número de uma lista de inteiros Algoritmo em linguagem corrente: Input: x = {x 1, x 2,..., x n }, com x i Z e n N. 1. Seja t = x 1 o máximo temporário e seja i = 2 o índice do elemento da lista a ser testado. 2. Compare t com x i, se x i > t então faça t = x i. 3. Seja i = i + 1. Se houver mais elementos repita o passo Pare quando o último elemento da lista tiver sido testado.

26 Algoritmo em pseudocódigo: maximo[x : x é lista de inteiros] t x 1 ; ( o máximo temporário ) k cardinal de x; ( a lista x tem k elementos ) i 2; ( a posição do elemento a ser testado ) while i k do output : t if x i > t then t x i ; i i + 1;

27 Algoritmo em código Mathematica: maximo x_list : programação imperativa Module t, k, i, t x 1 ; k Length x ; i 2; While i k, If x i t, t x i ; i i 1 ; t

28 Teste: In[33]:= maximo 1, 2, 3, 10, 0, 0, 1 maximo 1.2, 1 6, 0, 1 maximo maximo 1 maximo v, b, a, s Out[33]= 3 Out[34]= 1.2 Part::partw : Part 1 of does not exist. Out[35]= Out[36]= Out[37]= 1 maximo 1 v

29 maximo1 x_list ; Length x 1 && x Integers : programação funcional com validação dos dados Module t, s, t First x ; Map Function s, If s t, t s, x ; t Teste: In[39]:= maximo1 2, 9, 4 maximo1 2 maximo1 8, 2.0, 3 maximo1 Out[39]= 9 Out[40]= Out[41]= Out[42]= maximo1 2 maximo1 8, 2., 3 maximo1

30 Exercício: Escrever um algoritmo em pseudocódigo para determinar o primeiro elemento de uma lista de inteiros que seja igual a algum elemento anterior. {1, 4, 2, 5, 6, 1, 2} 2

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

Computabilidade 2012/2013. Sabine Broda Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto

Computabilidade 2012/2013. Sabine Broda Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto Computabilidade 2012/2013 Sabine Broda Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto Capítulo 1 Computabilidade 1.1 A noção de computabilidade Um processo de computação

Leia mais

CAP. I ERROS EM CÁLCULO NUMÉRICO

CAP. I ERROS EM CÁLCULO NUMÉRICO CAP. I ERROS EM CÁLCULO NUMÉRICO 0. Introdução Por método numérico entende-se um método para calcular a solução de um problema realizando apenas uma sequência finita de operações aritméticas. A obtenção

Leia mais

Nesta aula serão apresentados alguns comandos de condição, repetição e gráficos.

Nesta aula serão apresentados alguns comandos de condição, repetição e gráficos. 3 COMANDOS CONDICIONAIS E DE LAÇO Nesta aula serão apresentados alguns comandos de condição, repetição e gráficos. 3.1 COMANDOS CONDICIONAIS 3.1.1 Comando IF Como o próprio nome já indica, estes comandos

Leia mais

Departamento: Matemática Curso: Eng a Madeiras Ano: 1 o Semestre: 2 o Ano Lectivo: 2006/2007. Aula prática n o 1 - Introdução ao MATLAB

Departamento: Matemática Curso: Eng a Madeiras Ano: 1 o Semestre: 2 o Ano Lectivo: 2006/2007. Aula prática n o 1 - Introdução ao MATLAB Instituto Politécnico de Viseu Escola Superior de Tecnologia Departamento: Matemática Métodos Numéricos Curso: Eng a Madeiras Ano: 1 o Semestre: 2 o Ano Lectivo: 2006/2007 Aula prática n o 1 - Introdução

Leia mais

Números cruzados. Em algumas regiões o caminho torna-se mais simples. Nesta faltam os algarismos3,6

Números cruzados. Em algumas regiões o caminho torna-se mais simples. Nesta faltam os algarismos3,6 Números cruzados fi '.,' A tabela-base tem : - no total 81 casas,, : ',: - Está subdividida em...,.,00'_"'_. são as 'regiões' Pretende-se preencher cada casa com um algarismo, de 1 a 9, sem repetir algarismos

Leia mais

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações Contagem Prof. Dr. Leandro Balby Marinho Matemática Discreta Prof. Dr. Leandro Balby Marinho 1 / 39 UFCG CEEI Motivação Contagem e combinatória são partes importantes da matemática discreta. Se resumem

Leia mais

Module Introduction. Programação. Cap. 4 Algoritmos e Programação Estruturada

Module Introduction. Programação. Cap. 4 Algoritmos e Programação Estruturada 5374 : Engenharia Informática 6638 : Tecnologias e Sistemas de Informação 9099 : Bioengenharia 10135 : Ciências Biomédicas Cap. 4 Algoritmos e Estruturada Module Introduction Algoritmos e Estruturada Objectivos:

Leia mais

Análise de complexidade

Análise de complexidade Introdução Algoritmo: sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador) Estratégia: especificar (definir propriedades) arquitectura

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto Conceitos de Linguagens de Roteiro: Apresentação do plano de ensino; Apresentação do plano de

Leia mais

Aluísio Eustáquio da Silva

Aluísio Eustáquio da Silva 1 Aluísio Eustáquio da Silva SciLab Programável Material didático usado em aulas de Programação de Computadores, Algoritmos e Lógica de Programação Betim Maio de 2012 2 PROGRAMAÇÃO O SciLab permite que

Leia mais

e à Linguagem de Programação Python

e à Linguagem de Programação Python Introdução a Algoritmos, Computação Algébrica e à Linguagem de Programação Python Curso de Números Inteiros e Criptografia Prof. Luis Menasché Schechter Departamento de Ciência da Computação UFRJ Agosto

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO

Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO Problemas & Algoritmos Para resolver um problema através dum computador é necessário encontrar em primeiro lugar uma maneira de descrevê-lo

Leia mais

INTRODUÇÃO AOS MÉTODOS FACTORIAIS

INTRODUÇÃO AOS MÉTODOS FACTORIAIS Capítulo II INTRODUÇÃO AOS MÉTODOS FACTORIAIS A Análise Factorial de Correspondências é uma técnica simples do ponto de vista matemático e computacional. Porém, devido ao elevado suporte geométrico desta

Leia mais

Cap.2.5: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código

Cap.2.5: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código Cap.2.5: Design de Algoritmos e Programação Estruturada Algoritmos, fluxogramas e pseudo-código 1 Sumário Problemas e algoritmos Desenho de algoritmos/programas Passos na construção de algoritmos Método

Leia mais

A função do primeiro grau

A função do primeiro grau Módulo 1 Unidade 9 A função do primeiro grau Para início de conversa... Já abordamos anteriormente o conceito de função. Mas, a fim de facilitar e aprofundar o seu entendimento, vamos estudar algumas funções

Leia mais

Prof. Dr. Abel Gomes (agomes@di.ubi.pt) Cap.4: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código

Prof. Dr. Abel Gomes (agomes@di.ubi.pt) Cap.4: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código Prof. Dr. Abel Gomes (agomes@di.ubi.pt) Cap.4: Design de Algoritmos e Programação Estruturada Algoritmos, fluxogramas e pseudo-código 1 Sumário Problemas e algoritmos Desenho de algoritmos/programas Passos

Leia mais

Limitações dos Computadores

Limitações dos Computadores Limitações dos Computadores Baseado em Computers Ltd. What they really can t do, David Harel. Oxford University Press, 2000. Computadores e Redes de Comunicação Mestrado em Gestão de Informação, FEUP 2004/07

Leia mais

Introdução à Lógica de Programação

Introdução à Lógica de Programação Introdução à Lógica de Programação Sistemas Numéricos As informações inseridas em um computador são traduzidos em dados, ou seja, em sinais que podem ser manipulados pelo computador. O computador trabalha

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:

Leia mais

Estruturas de entrada e saída

Estruturas de entrada e saída capa Estruturas de entrada e saída - A linguagem C utiliza de algumas funções para tratamento de entrada e saída de dados. - A maioria dessas funções estão presentes na biblioteca . - As funções

Leia mais

Numeros felizes e sucessoes de Smarandache: digressoes com o Maple

Numeros felizes e sucessoes de Smarandache: digressoes com o Maple Numeros felizes e sucessoes de Smarandache: digressoes com o Maple by Delfim F.M. Torres Resumo Dando jus a matematica experimental, mostramos como o Maple pode ser usado na investigacao matematica de

Leia mais

CAPITULO 5 COMANDO DE FLUXO IF

CAPITULO 5 COMANDO DE FLUXO IF CAPITULO 5 COMANDO DE FLUXO IF Sempre que for necessária a tomada de decisão dentro de um programa, você terá que utilizar um comando condicional, pois é por meio dele que o PHP decidirá que lógica deverá

Leia mais

Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos

Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos 1. INTRODUÇÃO A ALGORITMOS O uso de algoritmos é quase tão antigo quanto a matemática. Com o passar do tempo, entretanto, ele foi bastante esquecido pela matemática. Com o advento das máquinas de calcular

Leia mais

Programação Básica em Arduino Aula 2

Programação Básica em Arduino Aula 2 Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Variáveis são lugares (posições) na memória principal que servem para armazenar dados. As variáveis são acessadas

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Linguagem Matemática e as Artes

Linguagem Matemática e as Artes Linguagem Matemática e as Artes Hermes Renato Hildebrand e José Armando Valente Sumário Introdução Matemática como linguagem Capítulo 01 Etnomatemática e os Espaços de Representação 1. Etnomatemática;

Leia mais

Módulo Lógica Programação com aplicações em Java. Projeto khouse Profissionalizante Profª Larissa Brandão

Módulo Lógica Programação com aplicações em Java. Projeto khouse Profissionalizante Profª Larissa Brandão Educação Módulo Lógica e Ética de Programação com aplicações em Java Projeto khouse Profissionalizante Profª Larissa Brandão n

Leia mais

3 Sistemas de Numeração:

3 Sistemas de Numeração: 3 Sistemas de Numeração: Os computadores eletrônicos têm como base para seu funcionamento a utilização de eletricidade. Diferente de outras máquinas que a presença ou ausência de eletricidade apenas significam

Leia mais

CAPÍTULO 2. Grafos e Redes

CAPÍTULO 2. Grafos e Redes CAPÍTULO 2 1. Introdução Um grafo é uma representação visual de um determinado conjunto de dados e da ligação existente entre alguns dos elementos desse conjunto. Desta forma, em muitos dos problemas que

Leia mais

Representação do Conhecimento

Representação do Conhecimento UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Representação do Conhecimento Licenciatura em Engenharia Informática e de Computadores Repescagem Segundo teste 0 de Julho de 004, 9:00H 0:0H Nome:

Leia mais

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Cálculo Numérico Aula : Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Computação Numérica - O que é Cálculo Numérico? Cálculo numérico é uma metodologia para resolver problemas matemáticos

Leia mais

ESTRUTURA CONDICIONAL

ESTRUTURA CONDICIONAL AULA 6 ESTRUTURA CONDICIONAL 130 Tem como objetivo executar um conjunto de comandos caso uma condição lógica seja atendida. Quando a resposta lógica for falsa, nada será executado. Sintaxe Se CONDIÇÃO

Leia mais

Conceitos Importantes:

Conceitos Importantes: Conceitos Importantes: Variáveis: Por Flávia Pereira de Carvalho, 2007 i O bom entendimento do conceito de variável é fundamental para elaboração de algoritmos, consequentemente de programas. Uma variável

Leia mais

Algumas vantagens da Teoria das Descrições Definidas (Russel 1905)

Algumas vantagens da Teoria das Descrições Definidas (Russel 1905) Textos / Seminário de Orientação - 12 de Março de 2005 - Fernando Janeiro Algumas vantagens da Teoria das Descrições Definidas (Russel 1905) Assume-se que o objecto de uma teoria semântica é constituído

Leia mais

PHP. Hypertext Pre-Processor

PHP. Hypertext Pre-Processor PHP Hypertext Pre-Processor O que é o PHP? Uma linguagem de scripting é uma linguagem cujo código não tem de ser compilado para ser executado! O código escrito é interpretado em tempo de execução para

Leia mais

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Os algoritmos são descritos em uma linguagem chamada pseudocódigo. Este nome é uma alusão à posterior implementação

Leia mais

Introdução às Linguagens de Programação

Introdução às Linguagens de Programação Introdução às Linguagens de Programação Histórico de Linguagens de Programação O computador não faz nada sozinho Precisamos informar, de forma clara, como ele deve executar as tarefas Ou seja, o computador

Leia mais

Matemática Financeira Módulo 2

Matemática Financeira Módulo 2 Fundamentos da Matemática O objetivo deste módulo consiste em apresentar breve revisão das regras e conceitos principais de matemática. Embora planilhas e calculadoras financeiras tenham facilitado grandemente

Leia mais

Utilização do SOLVER do EXCEL

Utilização do SOLVER do EXCEL Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de

Leia mais

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

QUADRADO MÁGICO - ORDEM 4

QUADRADO MÁGICO - ORDEM 4 CONCEITO Partindo da definição original, os QUADRADOS MÁGICOS devem satisfazer três condições: a) tabela ou matriz quadrada (número de igual ao número de ); b) domínio: com elementos assumindo valores

Leia mais

Álgebra A - Aula 11 RSA

Álgebra A - Aula 11 RSA Álgebra A - Aula 11 RSA Elaine Pimentel Departamento de Matemática, UFMG, Brazil 2 o Semestre - 2010 Criptografia RSA- pré-codificação Converter a mensagem em uma seqüência de números pré-codificação.

Leia mais

Introdução à Lógica de Programação (cont.)

Introdução à Lógica de Programação (cont.) Operadores Introdução à Programação (cont.) Luis Otavio Alvares Adaptado de slides das profas. Vania Bogorny, Patrícia Jaques e Mônica Py Usados para incrementar, decrementar, comparar e avaliar dados,

Leia mais

OPERADORES E ESTRUTURAS DE CONTROLE

OPERADORES E ESTRUTURAS DE CONTROLE OPERADORES E ESTRUTURAS DE CONTROLE 3.1 Operadores Os operadores indicam o tipo de operação matemática que será executada gerando novos valores a partir de um ou mais operadores. São muito utilizados em

Leia mais

Teoria dos Números. A Teoria dos Números é a área da matemática que lida com os números inteiros, isto é, com o conjunto

Teoria dos Números. A Teoria dos Números é a área da matemática que lida com os números inteiros, isto é, com o conjunto Teoria dos Números 1 Noções Básicas A Teoria dos Números é a área da matemática que lida com os números inteiros, isto é, com o conjunto Z = {..., 4, 3, 2, 1, 0, 1, 2, 3, 4...}. Ela permite resolver de

Leia mais

Curso Técnico em Redes

Curso Técnico em Redes Curso Técnico em Redes Prof. Airton Ribeiro - 2012 Histórico das Linguagens de Programação O que é? É um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas

Leia mais

Processamento da Informação Teoria. Algoritmos e Tipos de dados

Processamento da Informação Teoria. Algoritmos e Tipos de dados Processamento da Informação Teoria Algoritmos e Tipos de dados Semana 01 Prof. Jesús P. Mena-Chalco 24/04/2013 (*) Slides adaptados das aulas do Prof. Harlen Costa Batagelo Algumas definições de algoritmo

Leia mais

Estrutura de Dados Básica

Estrutura de Dados Básica Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 7: Recursividade O objetivo desta aula é apresentar o conceito de recursão para solução de problemas. A recursão é uma técnica de programação

Leia mais

ÁLGEBRA BOOLEANA. Foi um modelo formulado por George Boole, por volta de 1850.

ÁLGEBRA BOOLEANA. Foi um modelo formulado por George Boole, por volta de 1850. ÁLGEBRA BOOLEANA Foi um modelo formulado por George Boole, por volta de 1850. Observando a lógica proposicional e a teoria de conjuntos verificamos que elas possuem propriedades em comum. Lógica Proposicional

Leia mais

Programa de Formação Contínua em Matemática para Professores do 1.º e 2.º Ciclos do Ensino Básico. I. Conjuntos

Programa de Formação Contínua em Matemática para Professores do 1.º e 2.º Ciclos do Ensino Básico. I. Conjuntos I. Conjuntos 1. Introdução e notações 1.1. Relação de pertença 1.2. Modos de representar um conjunto 1.3. Classificação de conjuntos quanto ao número de elementos 1.4. Noção de correspondência 2. Relações

Leia mais

Metodos de Programação

Metodos de Programação Metodos de Programação Métodos de Programação Introdução Informática, Computador, Algoritmo Informática: Ciência do processamento da informação Computador: Máquina que serve para processar informação Algoritmo:

Leia mais

Geração de código intermediário. Novembro 2006

Geração de código intermediário. Novembro 2006 Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas

Leia mais

ICC Introdução para JavaScript

ICC Introdução para JavaScript ICC Introdução para JavaScript Arquitetura Genérica de um Computador Máquina de Von Neumann Diagrama conhecido como Máquina de Von Neumann (grande nome da informática) A finalidade de um computador é receber,

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 2 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Exemplo Inicial Uma

Leia mais

Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel.

Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel. Matemática Essencial Equações do Segundo grau Conteúdo Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel.br/matessencial/ 1 Introdução

Leia mais

O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO

O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO Prof. Leugim Corteze Romio Universidade Regional Integrada URI Campus Santiago-RS leugimcr@urisantiago.br Prof.

Leia mais

Álgebra Booleana. Introdução ao Computador 2010/01 Renan Manola

Álgebra Booleana. Introdução ao Computador 2010/01 Renan Manola Álgebra Booleana Introdução ao Computador 2010/01 Renan Manola Histórico George Boole (1815-1864) Considerado um dos fundadores da Ciência da Computação, apesar de computadores não existirem em seus dias.

Leia mais

Aula 8 Circuitos Integrados

Aula 8 Circuitos Integrados INTRODUÇÃO À ENGENHRI DE COMPUTÇÃO PONTIFÍCI UNIVERSIDDE CTÓLIC DO RIO GRNDE DO SUL FCULDDE DE ENGENHRI ula Circuitos Integrados Introdução Portas Lógicas em Circuitos Integrados Implementação de Funções

Leia mais

Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO

Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO Pseudocódigo Pseudocódigo é uma forma genérica de escrever um algoritmo, utilizando uma linguagem simples (nativa a quem o escreve,

Leia mais

Módulo III. Folhas de Cálculo

Módulo III. Folhas de Cálculo Módulo III Ferramentas do Office Folhas de Cálculo Ferramentas de produtividade 1 Folhas de Cálculo O que é: Uma Folha de Cálculo é, por tradição, um conjunto de células que formam uma grelha ou tabela

Leia mais

O que é o JavaScript?

O que é o JavaScript? JavaScript Introdução O JavaScript é utilizado por milhões de páginas na web para melhorar o design, validar forms, e muito mais O JavaScript foi inicialmente desenvolvido pela Netscape e é a linguagem

Leia mais

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 7 Prof. ISVega Março de 2004 Controle de Execução: Seleção Simples CONTEÚDO

Leia mais

Autómatos Finitos Determinísticos

Autómatos Finitos Determinísticos Ficha 2 Autómatos Finitos Determinísticos 2.1 Introdução Se olharmos, de forma simplificada, para um computador encontramos três componentes principais: a) A unidade de processamento central b) As unidades

Leia mais

ECO039 Linguagens Formais

ECO039 Linguagens Formais Prof a.dra.thatyana de Faria Piola Seraphim Universidade Federal de Itajubá thatyana@unifei.edu.br Introdução ˆ As três principais áreas da teoria da computação (Autômatos, Computabilidade e Complexidade)

Leia mais

3ª Lista de Exercícios Representação de dados com agregados: Arrays e Matrizes

3ª Lista de Exercícios Representação de dados com agregados: Arrays e Matrizes 1 Universidade Federal Fluminense Instituto de Computação Departamento de Ciência da Computação Programação de Computadores II Professores: Leandro A. F. Fernandes, Marcos Lage, Pedro Velloso 3ª Lista

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação O que é lógica? Conjunto de regras e princípios que orientam, implícita ou explicitamente, o desenvolvimento de uma argumentação ou de um raciocínio, a resolução de um problema, etc.

Leia mais

Linguagem algorítmica: Portugol

Linguagem algorítmica: Portugol Programação de Computadores I Aula 03 Linguagem algorítmica: Portugol José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/34 Introdução I Lógica A lógica é usada

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

Leia mais

Plano Curricular de Matemática 9º ano - 2014 /2015-3º Ciclo

Plano Curricular de Matemática 9º ano - 2014 /2015-3º Ciclo Plano Curricular de Matemática 9º ano - 2014 /2015-3º Ciclo Tema/Subtema Conteúdos Metas Nº de Aulas Previstas Org.Trat.Dados / Planeamento Estatístico Especificação do problema Recolha de dados População

Leia mais

Aula 10 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www3.ifrn.edu.

Aula 10 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www3.ifrn.edu. Aula 10 Introdução à Algoritmos Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www3.ifrn.edu.br/~brunogomes Agenda da Aula Introdução aos Algoritmos: Conceitos Iniciais; Programa

Leia mais

CÁLCULO DE ZEROS DE FUNÇÕES REAIS

CÁLCULO DE ZEROS DE FUNÇÕES REAIS 15 CÁLCULO DE ZEROS DE FUNÇÕES REAIS Um dos problemas que ocorrem mais frequentemente em trabalhos científicos é calcular as raízes de equações da forma: f() = 0. A função f() pode ser um polinômio em

Leia mais

Informática II Cap. 3

Informática II Cap. 3 Cap. 3 1 Tradicionalmente, programar significava apenas a escrita de um programa, que resolvesse o problema pretendido de uma forma aparentemente correcta. Problema Problema Programa Programa Desvantagens:

Leia mais

Introdução a Algoritmos Parte 04

Introdução a Algoritmos Parte 04 Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Introdução a Algoritmos Parte 04 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti

Leia mais

1 Descrição do Trabalho

1 Descrição do Trabalho Departamento de Informática - UFES 1 o Trabalho Computacional de Algoritmos Numéricos - 13/2 Métodos de Runge-Kutta e Diferenças Finitas Prof. Andréa Maria Pedrosa Valli Data de entrega: Dia 23 de janeiro

Leia mais

Instituto Superior Politécnico de VISEU. Escola Superior de Tecnologia

Instituto Superior Politécnico de VISEU. Escola Superior de Tecnologia 1 Tradicionalmente, programar significava apenas a escrita de um programa, que resolvesse o problema pretendido de uma forma aparentemente correcta. Problema Problema Programa Programa Desvantagens: Programas

Leia mais

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação 1 Algoritmo Prof. Anderson Almeida Ferreira Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação Desenvolvimento de programas 2 Análise do problema Desenvolvimento

Leia mais

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto Material Teórico - Módulo de Divisibilidade MDC e MMC - Parte 1 Sexto Ano Prof. Angelo Papa Neto 1 Máximo divisor comum Nesta aula, definiremos e estudaremos métodos para calcular o máximo divisor comum

Leia mais

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3

Leia mais

CURSO DE PROGRAMAÇÃO EM JAVA

CURSO DE PROGRAMAÇÃO EM JAVA CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro

Leia mais

HEX CONEXÕES EXTREMAS EM LADRILHOS HEXAGONAIS

HEX CONEXÕES EXTREMAS EM LADRILHOS HEXAGONAIS HEX CONEXÕES EXTREMAS EM LADRILHOS HEXAGONAIS Izabelly Marya Lucena da Silva Universidade Federal de Pernambuco izabellymarya@ig.com.br Gésica Peixoto Campos Universidade Federal de Pernambuco gesica.pcampo@bol.com.br

Leia mais

Permutação. Série Matemática na Escola

Permutação. Série Matemática na Escola Permutação Série Matemática na Escola Objetivos 1. Ensinar o conceito de permutação; 2. Deduzir a fórmula para permutações; 3. Apresentar usos da permutação no cotidiano. Permutação Série Matemática na

Leia mais

STSE 2º Exame de Simulação e Teste de Sistemas Electrónicos (9 de Fevereiro de 2004) Duração: 1ª parte 45 minutos; 2ª parte 2 horas.

STSE 2º Exame de Simulação e Teste de Sistemas Electrónicos (9 de Fevereiro de 2004) Duração: 1ª parte 45 minutos; 2ª parte 2 horas. STSE 2º Exame de Simulação e Teste de Sistemas Electrónicos (9 de Fevereiro de 2004) Duração: 1ª parte 45 minutos; 2ª parte 2 horas Número: Nome: 1ª Parte Questionário de resposta múltipla cada resposta

Leia mais

Javascript 101. Parte 2

Javascript 101. Parte 2 Javascript 101 Parte 2 Recapitulando O Javascript é uma linguagem de programação funcional Os nossos scripts são executados linha a linha à medida que são carregados. O código que está dentro de uma função

Leia mais

Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br

Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Laboratório de Pesquisa e Desenvolvimento Universidade Federal de Alfenas versão

Leia mais

Matemática Discreta para Computação e Informática

Matemática Discreta para Computação e Informática Matemática Discreta para Computação e Informática P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Computação e Informática

Leia mais

Projeto e Análise de Algoritmos. Profa. Juliana Kaizer Vizzotto. Projeto e Análise de Algoritmos - Aula 1

Projeto e Análise de Algoritmos. Profa. Juliana Kaizer Vizzotto. Projeto e Análise de Algoritmos - Aula 1 Projeto e Análise de Algoritmos Profa. Juliana Kaizer Vizzotto Projeto e Análise de Algoritmos - Aula 1 Roteiro Introdução Exemplo: ordenação Introdução Análise de Algoritmos Estudo teórico da performance

Leia mais

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 2. ALGORITMOS Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 2 - Algoritmo 2.1: Introdução Antes de se utilizar uma linguagem de computador,

Leia mais

Introdução à Computação para o Ensino Médio. Centro Técnico Científico

Introdução à Computação para o Ensino Médio. Centro Técnico Científico Introdução à Computação para o Ensino Médio Centro Técnico Científico Abril de 2010 Algoritmo: Descrição, passo a passo, de uma metodologia que conduz à resolução de um problema ou à execução de uma tarefa.

Leia mais

3. Tipos de Dados, Constantes e Variáveis.

3. Tipos de Dados, Constantes e Variáveis. 3. Tipos de Dados, Constantes e Variáveis. O computador realiza a sua tarefa trabalhando as informações contidas em sua memória, essas podem ser classificadas em dois tipos básicos: as instruções e os

Leia mais

Tutorial de Matlab Francesco Franco

Tutorial de Matlab Francesco Franco Tutorial de Matlab Francesco Franco Matlab é um pacote de software que facilita a inserção de matrizes e vetores, além de facilitar a manipulação deles. A interface segue uma linguagem que é projetada

Leia mais

CONTEÚDOS DA DISCIPLINA DE MATEMÁTICA

CONTEÚDOS DA DISCIPLINA DE MATEMÁTICA CONTEÚDOS DA DISCIPLINA DE MATEMÁTICA 6ºANO CONTEÚDOS-1º TRIMESTRE Números naturais; Diferença entre número e algarismos; Posição relativa do algarismo dentro do número; Leitura do número; Sucessor e antecessor;

Leia mais

A palavra ALGORITMO teve origem com um Matemático Persa, al. Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah,

A palavra ALGORITMO teve origem com um Matemático Persa, al. Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah, A palavra ALGORITMO teve origem com um Matemático Persa, al Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah, ou a ciência das Equações que, em última análise suscitaram o desenvolvimento

Leia mais