AKS: um algoritmo para identificar números primos
|
|
|
- Norma Damásio de Andrade
- 8 Há anos
- Visualizações:
Transcrição
1 AKS: um algoritmo para identificar números primos IM-UFBA 08 de novembro de 2016
2 Índice 1 Preliminares
3 Introdução Números primos Comprovar a primalidade de um número natural significa comprovar que este número só admite como divisores positivos ele próprio e o número um. Motivação A importância de saber detectar se um número é primo ou não se deve principalmente aos sistemas de criptografia, onde existe uma necessidade de gerar números primos com ordem de grandeza acima de 100 dígitos, que é vital para a segurança dos criptosistemas.
4 Criptografia
5 Algoritmo O que é um algoritmo? Um algoritmo é uma receita que mostra os procedimentos nescessários passo a passo para a resolução de uma tarefa. Tecnicamente falando, é um procedimento computacional definido que recebe um ou mais valores (entrada) e produz um ou mais valores (saída).
6 Exemplos de algoritmos Podemos dizer que acordar é um algoritmo.
7 Exemplos de algoritmos Receita de bolo.
8 Exemplos de algoritmos Somar dois inteiros.
9 Bits (Dígito binário) Tabela: Sistema binário n (n) 2 Quantidade de bits bits bits bits bits bits bits bits bits bits n tem k bits 2 k 1 n < 2 k k 1 log 2 n < k k log 2 n
10 Quantidade de bits em função do número
11 Custo de um algoritmo Custo de um algoritmo O custo de um algoritmo é baseado no tempo que ele demora pra ser executado e a memória que ele gasta no computador. Uma boa medida do custo para os algoritmos que estamos considerando é a quantidade de operações aritméticas elementares que são realizadas ao executá-lo, pensando em termos de bits. Exemplo Sejam A, B N Qual o custo da operação A + B? A = (a k 1,..., a 1, a 0 ) 2, B = (b k 1,..., b 1, b 0 ) 2
12 Ordem de crescimnento f (k) = função custo f (k) = a n k n + + a 0 f (k) é O(k n ) Exemplos 1 O custo da soma = 2k 1 é O(k). 2 O custo do produto = 4k 2 k é O(k 2 ).
13 Ordem de crescimnento Limite assintótico superior (O) f (k) é O(g(k)) se existe constante c tal que f (k) c.g(k) para k suficientemente grande.
14 Tabela dos custos Tabela: Custo das operações principais Operação Custo Soma O(k) Subtração O(k) Multiplicação O(k 2 ) Divisão O(k 2 )
15 Testes de primalidade Teste de primalidade Chamamos de teste de primalidade um algoritmo onde a entrada é um número natural e a saída é a classificação, se esse número é primo ou composto. Classificação dos testes de primalidade Os testes de primalidade podem ser classificados quanto ao custo (polinomial ou não polinomial) e quanto a exatidão (determinístico ou não determinístico).
16 Teste polinomial e não polinomial Teste de primalidade polinomial É um teste de primalidade onde o custo pode ser escrito como um polinômio em função de k de grau r, para algum inteiro r > 0. Teste de primalidade não polinomial É um teste de primalidade onde o custo não pode ser escrito como um polinômio em função de k de grau r, para algum inteiro r > 0.
17 Teste polinomial e não polinomial
18 Testes determinístico e não determinístico Teste de primalidade deterministico É um teste de primalidade onde temos a garantia de que o resultado está correto, seja ele primo ou composto. Teste de primalidade não determinístico É um teste que garante apenas que o número é primo com uma certa probabilidade.
19 Algoritmo de Fatoração Algoritmo de Fatoração Entrada: inteiro positivo n 2. Saıda: inteiro positivo f que é o menor fator primo de n ou uma mensagem indicando que n é primo. Primeira etapa: comece fazendo F = 2. Segunda etapa: se F > n, escreva n é primo e pare. Terceira etapa: se n/f é inteiro escreva F é fator de n e pare; senão, incremente F de uma unidade e volte a segunda etapa. O custo é O(2 k/2 (k 2 )). É determinístico.
20 Crivo de Eratóstenes Crivo de Eratóstenes A primeira tentativa de teste de primalidade foi o Crivo de Eratóstenes, um método semelhante a uma peneira para determinar quais eram os números primos anteriores a um outro número dado.
21 Crivo de Eratóstenes
22 Crivo de Eratóstenes
23 Crivo de Eratóstenes
24 Crivo de Eratóstenes
25 Crivo de Eratóstenes
26 Crivo de Eratóstenes Crivo de Eratóstenes Entrada: inteiro positivo n 2. Saıda: todos os primos entre 1 e o número digitado. Primeira etapa: F = n. Segunda etapa: criar um vetor com os números de 2 até n. Terceira etapa: para i = 2 até F, caso o número i não esteja riscado insira-o na lista dos primos, imprima-o e risque todos os seus múltiplos na lista. Faça i = i + 1. O custo é O(2 3k/2 (k)) É determinístico.
27 Aritmética do relógio Onde estará o ponteiro do relógio quando se passarem: 1 32 horas 2 89 horas 3 56 horas
28 Aritmética do relógio 0 : 0, 12, 24,... 1 : 1, 13, 25,... 2 : 2, 14, 26,... 3 : 3, 15, 27,... 4 : 4, 16, 28, : 11, 23, 35,... Z 12 = {0, 1, 2, 3,, 11}
29 Aritmética do relógio generalizado Z n = {0, 1, 2, 3,, n 1}
30 Teste de primalidade determinístico Teorema Sejam n e b inteiros positivos e primos entre si. Então, (x + b) n = (x n + b) em Z n [x], se, e somente se, n é primo. (x + 1) 2 = x x = x 2 + 2x = x (x + 1) 4 = x 4 + 2x x
31 Ideia da demonstração Desenvolvendo o binômio, temos que: (x + b) n = x n + b n n 1 ( ) n + x n k b k k k=1 em que, ( ) n k = n! (n k)!k!. Isso pode ser provado usando o fato que ( ) n 0 (mod n) k para todo 0 < k < n se, e somente se, n é primo.
32 Triângulo de Pascal
33 Ideia da demonstração Usando o resultado anterior, temos que: Resta mostrar que (x + b) n = x n + b n. b n = b (mod n). Teorema de Fermat Seja n um primo positivo e b um número inteiro. Se n não divide b, então b n 1 = 1 (mod n).
34 O Algoritmo determinístico Teste de primalidade determinístico Entrada: inteiro positivo n. Saıda: mensagem indicando se n é composto ou n é primo. Primeira etapa: calcule todos os termos da expansão (x + b) n em Z n [x]. Segunda etapa: verifique se a expressão obtida na etapa anterior é igual a x n + b. Se for, n é primo. Se não for, n é composto. O custo é O(2 k ). É determinístico.
35 Teste de primalidade não determinístico Teorema de Fermat Seja n um primo positivo e b um número inteiro. Se n não divide b, então b n 1 = 1 (mod n). A recíproca é falsa. Por exemplo, mas 341 = = 1 = (mod 341),
36 Teste de primalidade não determinístico Suponha n primo ímpar e b {1,..., n 1}. Escreva n 1 = 2 k q. b q, b 2q,..., b 2k 1q, b 2k q Mas b 2kq b n 1 1 (mod n). Digamos que j é o menor expoente tal que b 2kq 1 (mod n). Se j = 1, significa que o primeiro termo desta sequência é congruo a 1. Se j 1 podemos usar que b 2j q 1 = (b 2j 1 1)(b 2j 1 + 1) 0 (mod n) signifca que essa sequência tem um termo congruo a -1 em alguma de suas posições.
37 Teste de primalidade não determinístico Teste de Miller-Rabin Entrada: um inteiro ímpar n, que se quer testar, e a base b, onde 1 < b < n 1. Saıda: uma das mensagens n é composto ou teste inconclusivo Primeira etapa: divida n-1 sucessivamente por 2 até encontrar q (um número ímpar)e k tais que n 1 = 2 k q. Segunda etapa: começe fazendo i=0 e r=resíduo de b q por n. Terceira etapa: se i = 0 e r = 1 ou se i 0 e r = n 1 a saída é teste inconclusivo. Quarta etapa: incremente i de 1 e substitua r pelo resto da divisão de r por n. Quinta etapa: se i < k 1 volte a etapa 3, senão a saída é n é composto O custo é O(k 3 ). É não determinístico.
38 Gary L. Millera Michael O. Rabin
39 Comparação dos testes Tabela: Testes de primalidade Nome do Teste Determinístico Polinomial Algoritmo de fatoração Sim Não Crivo de Eratóstenes Sim Não Teste determinístico Z n [x] Sim Não Teste de Miller-Rabin Não Sim
40 O algoritmo AKS ganhou destaque por ser o primeiro algoritmo publicado que é simultaneamente polinomial e determinístico. A descoberta de um algoritmo polinomial de primalidade foi publicada em agosto de 2002 por Agrawal, Kayal e Saxena. Três indianos, dois dos quais haviam acabado há pouco o curso de graduacão.
41 Figura: Manindra Agrawal, Neeraj Kayal e Nitin Saxena
42 O teste de primalidade AKS é baseado na equivalência: se, e somente se, n é primo. (x + b) n (x n + b) (mod n) AKS faz uso da relação de equivalência (x + b) n (x n + b) (mod n, x r 1) Esta pode ser verificada em tempo polinomial.
43 Contudo, enquanto todos os primos satisfazem esta equivalência, alguns números compostos também a satisfazem. A prova da correção consiste em mostrar que existe um r pequeno e um conveniente conjunto de inteiros A tal que se a equivalência que assegura para todo a em A, então n deve ser primo.
44 Tabela dos custos Tabela: Custo das etapas do AKS Etapa Custo 1 O(k 7 ) 2 O(k 12 ) 3 O(k 20 ) 4 O(k 33 ) Custo AKS = O(k 7 )+O(k 12 )+O(k 20 )+O(k 33 ) portanto é O(k 33 )
45 I Agrawal, M., N. Kayal e N. Saxena 2002 Primes is in P, IIT, preprint. disponível em news/primality.pdf Farias, F. Uma análise comparativa entre os testes de primalidade AKS e Miller-Rabin. disponível em Wikipédia Teste de primalidade AKS. disponível em d e p rimalidade A KS
46 II Coutinho S. C. Primalidade em Tempo Polinomial: uma introdução ao algoritmo AKS. Universidade Federal do Rio de Janeiro, 2004.
47 Obrigada pela atenção!
Uma análise comparativa entre os testes de primalidade AKS e Miller-Rabin
Uma análise comparativa entre os testes de primalidade AKS e Miller-Rabin RESUMO Fernando de Farias Universidade Católica de Brasília Curso de Matemática Orientador: José Eduardo Castilho Os algoritmos
Existem infinitos números de Carmichael, mas não provaremos isso neste curso.
6 Pseudoprimos 6.1 O Pequeno Teorema de Fermat nos diz que, se n é primo, então temos b n b (mod n) para todo b Z. Portanto, a contrapositiva diz que se temos b n b (mod n) ( ) para algum b Z, então n
Algoritmo AKS Primalidade de um Número em Tempo Polinomial
Algoritmo AKS Primalidade de um Número em Tempo Polinomial Bruno da Rocha Braga Ravel / COPPE / UFRJ [email protected] http://www.ravel.ufrj.br/ 11 de Setembro, 2002 Resumo Os algoritmos para determinação
Álgebra A - Aula 02 Teorema da fatoração única, Propriedade fundamental dos primos, números primos
Álgebra A - Aula 02 Teorema da fatoração única, Propriedade fundamental dos primos, números primos Elaine Pimentel Departamento de Matemática, UFMG, Brazil 2 o Semestre - 2010 Teorema da fatoração única
Números Primos: onde estão? Por que encontrá-los? Ana Cristina Vieira MAT/UFMG. Primos
1 Números Primos: onde estão? Por que encontrá-los? Ana Cristina Vieira MAT/UFMG Primos Definição: Livro VII dos Elementos de Euclides de Alexandria (360 a.c - 295 a.c). Dado qualquer número inteiro n,
TESTES DE PRIMALIDADE
TESTES DE PRIMALIDADE MOTIVACAO Testes de primalidade são ingredientes essenciais em sistemas de segurança computadorizados. Há uma série de sistemas de segurança que contam com a suposição que é difícil
Aritmética. Somas de Quadrados
Aritmética Somas de Quadrados Carlos Humberto Soares Júnior PROFMAT - SBM Objetivo Determinar quais números naturais são soma de dois quadrados. PROFMAT - SBM Aritmética, Somas de Quadrados slide 2/14
NÚMEROS PRIMOS. Os números primos são os números naturais com exatamente dois divisores. primo? Número divisores quantidade de divisores
5. NÚMEROS PRIMOS O conhecimento dos números primos e da decomposição dos números inteiros como produto de primos estão entre os conhecimentos mais úteis e importantes da Aritmética. K. F. Gauss Estudos
Programação de Computadores I BCC 701 Lista de Exercícios Módulo
Programação de Computadores I BCC 701 Lista de Eercícios Módulo 02 2013-2 Eercícios de Séries Eercício 29 Seja a seguinte série: 1, 4, 9, 16, 25, 36, Escreva um programa que gere esta série até o N-ésimo
Números Primos e Criptografia RSA
Números Primos e Criptografia RSA Jean Carlo Baena Vicente Matemática - UFPR Orientador: Carlos Henrique dos Santos 6 de outubro de 2013 Sumário Criptografia RSA Por que o RSA funciona? Fatoração Primalidade
MÚLTIPLOS E DIVISORES
MÚLTIPLOS E DIVISORES 6º ANO - Prof. Patricia Caldana Múltiplos e divisores são números que resultam da multiplicação por um número natural e que dividem um número deixando resto zero, respectivamente.
Estruturas de Repetição
Estruturas de Repetição Lista 05 Algoritmos e Linguagens de Programação Professor: Edwar Saliba Júnior Estruturas de Repetição O que são e para que servem? São comandos que são utilizados na programação
Sistemas de Numeração
Infra-Estrutura de Hardware Sistemas de Numeração Conversão entre bases Bit e byte ECC Prof. Edilberto Silva www.edilms.eti.br [email protected] Sumário Conversão de bases Aritmética binária e hexadecimal
Exercícios: Comandos de Repetição
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Comandos de Repetição 1. Faça um programa que determine o mostre os
Circuitos Lógicos. Capítulo 9 Aritmérica Digital: Operações e Circuitos
UNIVERSIDADE FEDERAL DE SÃO JOÃO DEL REI Circuitos Lógicos Capítulo 9 Aritmérica Digital: Operações e Circuitos Prof. Erivelton Geraldo Nepomuceno http://www.ufsj.edu.br/nepomuceno [email protected]
Universidade do Minho
Teórica n o 1 2007-02-22 Apresentação do docente e da disciplina. Algumas revisões de teoria de números elementar. O algoritmo de Euclides estendido; demonstração do teorema que fundamenta o algoritmo.
Universidade Federal de Uberlândia Faculdade de Computação. Expressões aritméticas, relacionais e lógicas Estruturas condicionais
Universidade Federal de Uberlândia Faculdade de Computação Expressões aritméticas, relacionais e lógicas Estruturas condicionais Prof. Renato Pimentel 1 Expressões aritméticas 2 Prof. Renato Pimentel 1
Paralelização Eficiente para o Algoritmo Binário de Exponenciação Modular
Paralelização Eficiente para o Algoritmo Binário de Exponenciação Modular Pedro Carlos da Silva Lara Fábio Borges de Oliveira Renato Portugal Laboratório Nacional de Computação Científica Índice 1 Introdução
Linguagem C Estruturas de Repetição
Linguagem C Estruturas de Repetição José Gustavo de Souza Paiva Introdução Como fazer um programa que mostre na tela os 4 primeiros números ímpares? Primeira solução printf( 1 ); printf( 3 ); printf( 5
D OLJHLUD UDSRVD PDUURP VDOWRX VREUH R FDFKRUUR FDQVDGR 1
Matemática Discreta October 12, 2018 1 1 Criptografia Criptografia de chave secreta: quando remetente e destinatário concordam um código. Exemplo: Código de Caesar O que está escríto? D OLJHLUD UDSRVD
Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Início Enquanto - GABARITO Professor: Danilo Giacobo
Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Início Enquanto - GABARITO Professor: Danilo Giacobo Este guia irá lhe ajudar a entender o laço de repetição enquanto.
Roteiro da segunda aula presencial - ME
PIF Enumerabilidade Teoria dos Números Congruência Matemática Elementar Departamento de Matemática Universidade Federal da Paraíba 29 de outubro de 2014 PIF Enumerabilidade Teoria dos Números Congruência
Sequências recorrentes e testes de primalidade
Polos Olímpicos de Treinamento Curso de Teoria dos Números - Nível 3 Carlos Gustavo Moreira Aula 18 Sequências recorrentes e testes de primalidade 1 A Sequência de Fibonacci A sequência de Fibonacci é
Funcionamento do computador. Conceito e definição de algoritmos. Prof. Alex Camargo
UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO Funcionamento do computador. Conceito e definição de algoritmos Prof. Alex Camargo [email protected] Funcionamento do computador
Aula 3: Algoritmos: Formalização e Construção
Aula 3: Algoritmos: Formalização e Construção Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de
Expressões, Atribuições, Entrada e Saída. Givanaldo Rocha
Expressões, Atribuições, Entrada e Saída Givanaldo Rocha [email protected] http://docente.ifrn.edu.br/givanaldorocha Expressões Expressão: em termos computacionais, está ligado ao conceito de
Universidade Federal de Uberlândia Faculdade de Computação. Estruturas de repetição
Universidade Federal de Uberlândia Faculdade de Computação Estruturas de repetição Prof. Renato Pimentel 1 Estruturas de repetição Utilização: Trecho de um algoritmo precisa ser executado mais de uma vez:
Definição. Diremos que um número inteiro d é um divisor de outro inteiro a, se a é múltiplo de d; ou seja, se a = d c, para algum inteiro c.
Divisores Definição. Diremos que um número inteiro d é um divisor de outro inteiro a, se a é múltiplo de d; ou seja, se a = d c, para algum inteiro c. Quando a é múltiplo de d dizemos também que a é divisível
ESTRUTURAS DE REPETIÇÃO - PARTE 1
AULA 15 ESTRUTURAS DE REPETIÇÃO - PARTE 1 15.1 O comando enquanto-faca- Considere o problema de escrever um algoritmo para ler um número inteiro positivo, n, e escrever todos os números inteiros de 1 a
CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então
CURSO BÁSICO DE PROGRAMAÇÃO AULA 3 Revisão Estrutura de Decisão Se Então Revisão da aula anterior 1. Variáveis 2. Estrutura de um Algoritmo 3. Operadores 4. Portugol Studio Variável Revisão da aula anterior
Primalidade em Tempo Polinomial
Primalidade em Tempo Polinomial Uma introdução ao algoritmo AKS S. C. Coutinho Universidade Federal do Rio de Janeiro 2004 c S. C. Coutinho 2004 Para a minha mãe Prefácio As décadas finais do século XX,
Aritmética de Ponto Fixo
Aritmética de Ponto Fixo Prof. Paulo Fernando Seixas Prof. Marcos Antônio Severo Mendes http://www.delt.ufmg.br/~elt/docs/dsp/ Representação Numérica DSP Ponto fixo Ponto flutuante 6 bits 3 bits 0 bits
PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR
PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Como representar números em memória? Como representar números negativos e de ponto flutuante?
BCC701 Programação de Computadores I Lista de Exercícios 04: Funções Definidas pelo Usuário
BCC701 Programação de Computadores I 2018-01 Lista de Exercícios 04: Funções Definidas pelo Usuário http://www.decom.ufop.br/bcc701/ Questão 1. (2014-01) A distância entre dois pontos, A e B, no plano
BCC701 Programação de Computadores I Lista de Exercícios 04: Funções Definidas pelo Usuário
BCC701 Programação de Computadores I 2018-02 Lista de Exercícios 04: Funções Definidas pelo Usuário http://www.decom.ufop.br/bcc701/ Questão 1. (2014-01) A distância entre dois pontos, A e B, no plano
LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO
LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Expressando a lógica em programação Ferramentas gráficas: diagramas e fluxogramas; Ferramentas textuais: pseudocódigos ou metalinguagens (Português
CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então
CURSO BÁSICO DE PROGRAMAÇÃO AULA 3 Revisão Estrutura de Decisão Se Então Revisão da aula anterior 1. Variáveis 2. Estrutura de um Algoritmo 3. Operadores 4. Visualg Variável Revisão da aula anterior É
Aritmética dos Restos. Pequeno Teorema de Fermat. Tópicos Adicionais
Aritmética dos Restos Pequeno Teorema de Fermat Tópicos Adicionais Aritmética dos Restos Pequeno Teorema de Fermat 1 Exercícios Introdutórios Exercício 1. Encontre os restos da divisão de 2 24 por a) 5
1 Potências e raízes em Aritmética Modular. Seja p primo e a um inteiro primo com p; a aplicação
1 Potências e raízes em Aritmética Modular 1.1 Os Teoremas de Fermat e Euler Seja p primo e a um inteiro primo com p; a aplicação Z /p Z /p, x ax definida pela multiplicação por a (ou mais precisamente
Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição
Sistemas Operacionais e Introdução à Programação Introdução à Lógica de Programação: estruturas de repetição 1 Imagine um algoritmo para calcular a média de uma quantidade desconhecida de números Para
Álgebra A - Aula 01 Algoritmo da divisão de Euclides e Algoritmo Euclideano estendido
Álgebra A - Aula 01 Algoritmo da divisão de Euclides e Algoritmo Euclideano estendido Elaine Pimentel Departamento de Matemática, UFMG, Brazil 2 o Semestre - 2010 Introdução Objetivo: estudar o método
NÚMEROS INTEIROS E CRIPTOGRAFIA UFRJ
NÚMEROS INTEIROS E CRIPTOGRAFIA UFRJ GABARITO LISTA 6: ALGORITMO CHINÊS DO RESTO 1. Ver gabarito das questões do livro. 2. Aplique o Algoritmo de Fermat para encontrar 999367 = 911 1097. Como 911 e 1097
Recursão. Aula 1. Liana Duenha. Faculdade de Computação Universidade Federal de Mato Grosso do Sul
Recursão Aula 1 Liana Duenha Faculdade de Computação Universidade Federal de Mato Grosso do Sul Algoritmos e Programação II, Análise de Sistemas, 2010 Martinez & Rubert (FACOM) Recursão APIIAS 1 / 25 Conteúdo
BAC004 Informática Teórica T2 Professora: Fabiana Costa Guedes Lista 05 Vetores e Matrizes Vetores
BAC004 Informática Teórica T2 Professora: Fabiana Costa Guedes Lista 05 Vetores e Matrizes Vetores 1- Faça um programa que preencha um vetor com seis elementos numéricos inteiros, calcule e mostre: a.
Aritmética dos Restos. Problemas com Congruências. Tópicos Adicionais
Aritmética dos Restos Problemas com Congruências Tópicos Adicionais Aritmética dos Restos Problemas com Congruências 1 Exercícios Introdutórios Exercício 1. inteiro n Prove que n 5 + 4n é divisível por
Matemática Discreta. Fundamentos e Conceitos da Teoria dos Números. Universidade do Estado de Mato Grosso. 4 de setembro de 2017
Matemática Discreta Fundamentos e Conceitos da Teoria dos Números Professora Dr. a Donizete Ritter Universidade do Estado de Mato Grosso 4 de setembro de 2017 Ritter, D. (UNEMAT) Matemática Discreta 4
Números Naturais Operações Fundamentais com Números Naturais *Adição; Subtração; Multiplicação e Divisão Exercícios
Curso de Elétrica... Matemática Básica Curso de Elétrica... Matemática Básica Sumário 1_Números Inteiros Números Naturais Operações Fundamentais com Números Naturais *Adição; Subtração; Multiplicação e
ESTRUTURAS DE REPETIÇÃO - PARTE 2
AULA 16 ESTRUTURAS DE REPETIÇÃO - PARTE 2 16.1 A seqüência de Fibonacci Um problema parecido, mas ligeiramente mais complicado do que o do cálculo do fatorial (veja as notas da Aula 14), é o do cálculo
BCC701 Programação de Computadores I Lista de Exercícios 05: Funções Definidas pelo Usuário
BCC701 Programação de Computadores I 2018-02 Lista de Exercícios 05: Funções Definidas pelo Usuário http://www.decom.ufop.br/bcc701/ Questão 1. (2014-01) A distância entre dois pontos, A e B, no plano
Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo
Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo Este guia irá lhe ajudar a entender o laço de repetição
Universidade Federal de Uberlândia Faculdade de Computação. Representação e aritmética binária
Universidade Federal de Uberlândia Faculdade de Computação Representação e aritmética binária Prof. Renato Pimentel 1 Tipos de informação Representação por meio de sequências binárias: 8 bits (byte) Também
Primalidade em tempo polinomial:
Introdução do livro Primalidade em tempo polinomial: uma introdução ao algoritmo AKS S. C. Coutinho UFRJ a ser publicado em 2004 pela Sociedade Brasileira de Matemática Novembro 2003 1 2 Introdução Até
MA14 - Aritmética Unidade 15 - Parte 1 Resumo. Congruências
MA14 - Aritmética Unidade 15 - Parte 1 Resumo Congruências Abramo Hefez PROFMAT - SBM Aviso Este material é apenas um resumo de parte do conteúdo da disciplina e o seu estudo não garante o domínio do assunto.
3) Faça um algoritmo para ler a base e a altura de um triângulo. Em seguida, escreva a área do mesmo. Obs.: Área = ( Base * Altura ) / 2
Exercícios 2: 1) Faça um algoritmo para ler as seguintes informações de uma pessoa: Nome, Idade, Sexo, Peso, Altura, Profissão, Rua, Bairro, Cidade, Estado, CEP, Telefone. 2) Dado as seguintes informações
CADERNO DE EXERCÍCIOS ALGORITMOS
J. EXERCÍCIOS SOBRE MODULARIZAÇÃO 77. Faça uma função que recebe um número inteiro por parâmetro e retorna verdadeiro se ele for par e falso se for ímpar. 78. Escreva um programa que leia o raio de um
Complexidade de Algoritmos
Complexidade de Algoritmos Prof. Diego Buchinger [email protected] [email protected] Prof. Cristiano Damiani Vasconcellos [email protected] Algoritmos com Inteiros Grandes
Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini
Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Apresentação do Professor Professor: José Carlos Perini E-mail: [email protected] Blog: http://profperini.com Formação
CIC 111 Análise e Projeto de Algoritmos II
CIC 111 Análise e Projeto de Algoritmos II Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 21 Number theory Primes and factors Modular arithmetic Solving equations Other results
Introdução a Computação
O que é um computador? Um computador é uma coleção de componentes que realizam operações lógicas e aritméticas sobre um grande volume de dados. (F. K. Miyazawa) Um computador é composto por: Introdução
Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO
Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Dados em Algoritmos Quando escrevemos nossos programas, trabalhamos com: Dados que nós fornecemos ao programa Dados
CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES
CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES Alex Zanella Zaccaron1; Adriana Betânia de Paula Molgora2 1Estudante do Curso de
Exercícios: Vetores e Matrizes
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Vetores e Matrizes 1 Vetores 1. Faça um programa que possua um vetor
Lista de Exercícios Estrutura de Repetição
Universidade Federal Fluminense Instituto de Computação Programação de Computadores III Luciana Brugiolo Gonçalves Lista de Exercícios Estrutura de Repetição E15. Desenvolva um algoritmo para exibir todos
Estruturas de Controle de Fluxo Estruturas de Seleção. Givanaldo Rocha
Estruturas de Controle de Fluxo Estruturas de Seleção Givanaldo Rocha [email protected] http://docente.ifrn.edu.br/givanaldorocha Conceito Até agora, desenvolvemos algoritmos que nos permitem
Aula 7: Estrutura de Decisão
Aula 7: Estrutura de Decisão Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Estrutura de Decisão Programação de Computadores IV 1 / 27 Agenda 1 Revisão
Complexidade de Algoritmos
Complexidade de Algoritmos Prof. Diego Buchinger [email protected] [email protected] Prof. Cristiano Damiani Vasconcellos [email protected] Um pouco de Teoria dos Números
Disciplina: Introdução à Engenharia da Computação
Colegiado de Engenharia de Computação Disciplina: Introdução à Engenharia da Computação Aula 07 (semestre 2011.2) Prof. Rosalvo Ferreira de Oliveira Neto, M.Sc. [email protected] 2 Representação
MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26
AULA 26 MATRIZES - PARTE 2 26. Mais exemplos Nesta aula, veremos mais dois algoritmos envolvendo matrizes. O primeiro deles calcula a matriz resultante da multiplicação de duas matrizes e utiliza três
Exercícios Repetição
Curso de Engenharia de Controle e Automação Disciplina: Informática para a Automação Professor: Marcelo Cendron Exercícios Repetição 1.1 8.3 Exercícios 1. Faça um programa utilizando o comando while, que
Disciplina: Algoritmos e Programação Professor: Paulo César Fernandes de Oliveira, BSc, PhD
1. Atribua valores para as variáveis usadas e determine o resultado da execução dos algoritmos abaixo: algoritmo Intervalo de Numeros var numero : inteiro inicio escreva ( Digite um numero: ) leia (numero)
Teste de Matemática A 2015 / 2016
Teste de Matemática A 2015 / 2016 Teste N.º 2 Matemática A Duração do Teste: 90 minutos 10.º Ano de Escolaridade Nome do aluno: Turma: Grupo I Os cinco itens deste grupo são de escolha múltipla. Em cada
Universidade Federal da Grande Dourados Faculdade de Ciências Exatas e Tecnologia Bacharelado em Sistemas de Informação Estruturas de Dados I Lista II
Universidade Federal da Grande Dourados Faculdade de Ciências Exatas e Tecnologia Bacharelado em Sistemas de Informação Estruturas de Dados I Lista II Professor: MSc. Rodrigo Porfírio da Silva Sacchi 30
Oficina de Python Prof. Me. José Carlos Perini
Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação
A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..
Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Introdução aos Algoritmos A única diferença entre o difícil e o impossível é que o último demora um pouco mais de
Segue, abaixo, o Roteiro de Estudo para a Verificação Global 2 (VG2), que acontecerá no dia 26 de junho de 2013 (a confirmar).
Divisibilidade - Regras de divisibilidade por 2, 3, 4, 5, 6, 8, 9 e 10. - Divisores de um número natural. - Múltiplos de um número natural. - Números primos. - Reconhecimento de um número primo. - Decomposição
a) Falsa. Por exemplo, para n = 2, temos 3n = 3 2 = 6, ou seja, um número par.
Matemática Unidade I Álgebra Série - Teoria dos números 01 a) Falsa. Por exemplo, para n =, temos 3n = 3 = 6, ou seja, um número par. b) Verdadeira. Por exemplo, para n = 1, temos n = 1 =, ou seja, um
Introdução à Computação - aulas 01 e 02 -
MAC2166 Introdução à Computação - aulas 01 e 02 - Mauro Cesar Bernardes 25/Fevereiro/2014 Agenda Instalação do Python Python Shell Variáveis Operadores relacionais Operadores numéricos Comando de saída
1. O que podemos dizer sobre a imagem da função. f : Z Z, f(x) = x 2 + x + 1?
1 Congruências e aritmética modular Vamos considerar alguns exemplos de problemas sobre números inteiros como motivação para o que se segue. 1. O que podemos dizer sobre a imagem da função f : Z Z, f(x)
Métodos Numéricos. Turma CI-202-D. Josiney de Souza.
Métodos Numéricos Turma CI-202-D Josiney de Souza [email protected] Agenda do Dia Aula 2 (06/08/15) Sistema decimal e binário Conversão de base Binário Decimal Decimal Decimal Binário Decimal
