a) Defina uma função que recebe como argumento um número natural n e devolve o número de divisores desse número.
|
|
- Alice Alvarenga Benevides
- 7 Há anos
- Visualizações:
Transcrição
1 IP, Resoluções comentadas, Semana 3 jrg, vs 002, Out-2012 a) Defina uma função que recebe como argumento um número natural n e devolve o número de divisores desse número. Para resolver o problema temos que verificar cada um dos números entre 1 e n; sempre que um destes números for divisor de n, conta-se. Arranjamos uma variável, i, para percorrer os valores de 1 a n-1 e uma variável, divs, para contar os duvisores encontrados. public static int divisores ( int n ) { int ndivs = 0, i = 1; if ( n % i == 0 ) ndivs = ndivs + 1; return ndivs; É importante conseguir discernir algumas coisas no meio do programa, Para começar o contador i, que percorre os números de 1 a n-1. Na listagem seguinte salientam-se as instruções que têm a ver com esta variável. public static int divisores ( int n ) { int ndivs = 0, i = 1; // neste ponto vemos passar i=1, 2,... até n if ( n % i == 0 ) ndivs = ndivs + 1; return ndivs; É o costume: inicialização (i=1); incremento (i =i+1), a última operação dentro do ciclo while; e o valor final ( i <= n ). Quando ao ndivs: public static int divisores ( int n ) { int ndivs = 0, i = 1; // neste ponto vemos passar i=1, 2,... até n if ( n % i == 0 ) { //só passamos neste ponto se i for par ndivs = ndivs + 1; return ndivs; que começa em 0 e conta, c=c+1, no ponto onde se verifica a condição.
2 b) Defina uma função que recebe como argumento um número natural n e devolve o somatório dos seus divisores próprios. É basicamente o mesmo que o problema anterior, só que agora, em vez de contar, somamos os divisores. A listagem salienta o acumulador que faz a soma: public static int sumdivisores ( int n ) { int soma = 0, i = 1; while ( i < n ) { if ( n % i == 0 ) soma= soma + i; return soma; c) Defina uma função que recebe como argumento um número natural n e que devolve o número de números perfeitos até n. Um número perfeito é tal que a soma dos seus divisores próprios é igual ao próprio número. Também não é muito diferente dos programas anteriores. A variável i faz um percurso de 1 até n. Quando passar por um i que seja perfeito conta. public static int perfectnumbersupto( int n) { int i=1, c = 0; if ( i == sumdivisores(i) ) c = c + 1; return c; A única novidade é ver se i é perfeito. Para isso usa-se a condição: i == sumdividores (i ) ou seja se i for igual á soma dos seus divisores (valor este dado pela função sumdivisores feita na alínea anterior).
3 d) Defina uma função que recebe como argumento um número natural n e devolve verdadeiro caso n seja primo, ou falso caso contrário. public static boolean isprime ( int n ) { int i = 2; while ( i < n ) { if ( n % i == 0 ) return false; return true; É praticamente igual ao anterior. A variável i percorre os números de 2 a n-1. Se um desses números for divisor de n concluímos que o número não é primo (return false). Se passarmos o ciclo todo ( ie, experimentarmos todos) sem aparecer nenhum divisor concluímos que é primo (return true). A listagem seguinte salienta estes pontos: public static boolean isprime ( int n ) { int i = 2; while ( i < n ) { if ( n % i == 0 ) { // cá está um divisor => não é primo! return false; // já fizemos as divisões todas e não apareceu nenhum divisor // (se tivesse aparecido nem tínhamos chegado aqui) // logo => é primo return true; Esta outra versão é um bocado mais rebuscada: public static boolean isprime ( int n ) { int i = 2; boolean primo = true; while ( i < n ) { if ( n % i == 0 ) { primo = false; return primo; A variável "primo" funciona como uma flag que assinala se passámos alguma vez (ou seja, uma vez ou mais) pelo ponto primo=false.
4 Esta versão é talvez um bocadito menos eficiente. Mesmo que se detecte que o número não é primo a função continua até ao fim do ciclo (a anterior termina logo, com o return). A versão seguinte retoma estas preocupações de eficiência: public static boolean isprime ( int n ) { int i = 2; boolean primo = true; while ( i < n/2 && primo ) { if ( n % i == 0 ) { primo = false; return primo; O while termina quando acontecer uma de duas coisas: - i chegar ao fim do seu curso - ou primo passar a false (aparecer um divisor). Rebuscado mesmo seria uma versão recursiva, como esta: public static boolean eprimo2 ( int n ) { return!temdivisores ( n, 2); public static boolean temdivisores ( int n, int d ) { if ( d == n ) return false; if ( n % d == 0 ) return true; return temdivisores ( n, d + 1); e) Defina uma função que recebe como argumento um número natural n e devolve a soma dos números primos menores que n). public static int sumprimesupto ( int n ) { int soma = 0, i = 1; if ( isprime(i) ) { soma = soma + i; return soma;
5 f) Defina uma função que recebe como argumento um número natural n e devolve o número de primos até n (inclusive). public static int countprimesupto ( int n ) { int c = 0, i = 1; if ( isprime(i) ) { c = c + 1; return c; g) Defina uma função que permite saber se existe algum número primo entre determinado intervalo (aberto). public static int existsprimebetween ( int a, int b ) { int n = countprimesupto(b -1) - countprimesupto(a); return n > 0; h) Defina uma função recursiva para calcular o n-ésimo número de Fibonacci. A implementação recursiva neste caso é praticamente transpor a definição fibonacci(0) = 0 fibonacci(0) = 1 fibonacci(n) = fibonacci( n - 1) + fibonacci( n - 2) public static int fibonacci ( int n ) { if ( n == 0 ) return 0; if ( n == 1 ) return 1; return fibonacci ( n - 1) + fibonacci ( n -2 ); Mas é importante perceber bem o esquema. Por exemplo, responder à pergunta: se for pedido o fibonnaci de 4 quantas vezes será executada a função? O programa seguinte ajuda a clarificar esta questão: class Programa { public static void main ( String[] args ) { fibonacci( 4 ); public static int fibonacci ( int n ) { System.out.println ("Pedido fibonacci de " + n); if ( n == 0 ) return 0; if ( n == 1 ) return 1;
6 return fibonacci ( n - 1) + fibonacci ( n -2 ); i) Defina uma função recursiva para calcular o factorial de um número. Este tipo de problemas é fácil e imediato quando estamos perante uma definição recursiva. È o caso do factorial que se pode definir da seguinte forma: factorial(0) = 1 factorial(n) = n * factorial ( n -1). public static int factorial ( int n ) { if ( n == 0 ) return 1; return n * factorial ( n -1 ); Outros problemas poderiam ser tratados da mesma forma. Por exemplo o problema da alínea f) da semana 2 pode ser definido da mesma forma. soman(1) = 1; soman(n) = n + S(n-1) public static int soman ( int n ) { if ( n == 1 ) return 1; return n + soman ( n -1 ); Outro exemplo, o problema da alínea e) da semana 2 pode ser definido assim potencia2(0) = 1 potencia2(n) = 2 * potencia2(n-1); public static int potencia2 ( int n ) { if ( n == 0 ) return 1; return 2 * potencian ( n -1 ); Mas não é sempre assim tão simples. Muitos problemas não aparecem assim. Mas se quisermos muito, podemos ir à procura da recursividade, mesmo que ela não seja evidente ou prática. Por exemplo, um ciclo normal pode ser tratado de forma recursiva. Por exemplo o mesmo problema f) da semana 2 que já falámos e para o qual adoptámos a seguinte solução iterativa: public static void soman( int n ) { int i=1; int soma = 0; while ( i <= n) { soma = soma + i; return soma;
7 Visto assim, não há grande potencial para uma solução recursiva. Mas, podemos forçar: public static void soman( int n ) { return soman ( n, 1, 0); public static void soman( int n, int i, int s ) { if ( i > n ) return s; return soman ( n, i + 1, s + i ); j) Defina uma função recursiva para calcular o máximo divisor comum entre dois números. public static int gdc ( int x, int y ) { if ( y == 0) return x; return gdc( y, x % y); k) Defina uma função que recebe como argumento um natural n e devolve a maior diferença entre dois números primos consecutivos até n. Primeiro uma versão iterativa: public static int largerdifferencebetweenprimes ( int a) { int primoanterior = 2; int maiordif = 0; int i = 0; while ( i <= a ) { if ( isprime(i) ) { if ( i - primoanterior > maiordif) maiordif = i - primoanterior; primoanterior = i; return maiordif; Ficam duas coisas de memória: o "primo anterior" e a "maior diferença anterior". Cada vez que passamos por um novo primo i, vemos a diferença e esse i passa a ser o "primo anterior". Quando à diferença se for maior do que a "maior diferença anterior" passa a ser a nova " maior diferença anterior".
8 Uma solução recursiva seria, neste caso, algo rebuscada. Por exemplo: public static int largerdifferencebetweenprimesr ( int a) { return largerdifferencebetweenprimesr ( a, 2, 1, 0); public static int largerdifferencebetweenprimesr ( int a, int i, int pa, int md) { if ( i > a) return md; if ( isprime(i) && i - pa > md ) md = i - pa; if ( isprime(i) ) pa = i; return largerdifferencebetweenprimesr ( a, i+1, pa, md);
a) Defina uma função para obter o máximo entre dois números
IP, Resoluções comentadas, Semana 2 jrg, vs 002, Out-2012 a) Defina uma função para obter o máximo entre dois números A versão mais imediata talvez seja esta: public static int maior ( int a, int b ) {
Leia maisRecursividade. Prof. Jesus José de Oliveira Neto
Recursividade Prof. Jesus José de Oliveira Neto Algoritmos podem ser definidos de duas formas: Forma iterativa ou não recursiva: utiliza laços de repetição (while, for, do/while) Forma recursiva: métodos
Leia maisRecursividade. Estrutura de Dados. Prof. Kleber Rezende
Recursividade Estrutura de Dados Prof. Kleber Rezende Considerações Iniciais Em aulas anteriores fizemos uma função que permite calcular o fatorial de um número. Naquela função, a cada nova iteração o
Leia maisTécnicas de projeto de algoritmos: Indução
Técnicas de projeto de algoritmos: Indução ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 08/2008
Leia maisEstruturas de Repetição e String
Estruturas de Repetição e String Leonardo Gresta Paulino Murta leomurta@ic.uff.br Estruturas de repetição whiledo dowhile for Aula de hoje String Manipulação de textos Leonardo Murta Estruturas de Repetição
Leia maisd) Defina uma função que copia (replica) um vector de inteiros, tendo o novo vector um tamanho dado como argumento.
IP, Resoluções comentadas, Semana 4 jrg, vs 002, Out-2012 a) Defina uma função que construa um vector com os números naturais até um dado número n. public static int[] naturais ( int n) { int v[] = new
Leia maisEstruturas de Repetição e String. Vanessa Braganholo
Estruturas de Repetição e String Vanessa Braganholo vanessa@ic.uff.br Aula de hoje... Estruturas de repetição while...do do...while for String Manipulação de textos 2 Estruturas de Repetição Permitem que
Leia maisSimulado de Linguagem de Programação Java
Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as
Leia maisdouble x; x = enigmab1(100);
8h Universidade Federal do ABC Avaliação: Prova 02 Disciplina: Processamento da Informação Turmas: A4, A5 (8hs) Professor: Jesús P. Mena-Chalco Data: 05/05/2016 Nome: RA: Instruções para a prova (leia
Leia maisRecursividade. Recursividade
A recursão é uma técnica que define um problema em termos de uma ou mais versões menores deste mesmo problema. Esta ferramenta pode ser utilizada sempre que for possível expressar a solução de um problema
Leia maisAula teórica 11. Tema 11. Repetição. Ciclo while Ciclo do-while Ciclo for
Tema 11. Repetição Ciclo while Ciclo do-while Ciclo for Aula teórica 11 Objectivos da aula: No final da aula estudante deve: Utilizar correctamente as instruções de repetição. Saber escolher entre as instruções
Leia maisRecursividade. Métodos iterativos. Prof. Cesar Augusto Tacla. Métodos iterativos utilizam estruturas de repetição
Recursividade Prof. Cesar Augusto Tacla Métodos iterativos Métodos iterativos utilizam estruturas de repetição For While Do while Normalmente, um método invoca outros métodos, não a si mesmo. 2 1 Recursividade
Leia maisControlo de Execução. K&R: Capitulo 3
Controlo de Execução K&R: Capitulo 3 IAED, 2009/2010 Controlo de Execução Instruções e Blocos if else-if switch Ciclos: Instruçõeswhile e for Instruçãodo-while break e continue goto e labels 2 IAED, 2009/2010
Leia maisRoteiro Prático Nº 13 Recursividade
UNIVERSIDADE FEDERAL DE ITAJUBÁ UNIFEI CAMPUS ITABIRA BAC004 TÉCNICAS DE PROGRAMAÇÃO Professores: Claudia, Denílson, Fabiana, Fernando, Juliano, Natália, Raquel, Rodrigo, Sandro e Walter Roteiro Prático
Leia maisQuestão 1 (6 pontos): Para cada função selecione uma opção (Resposta correta +1.5, incorreta -0.5). (a) A função devolve o inteiro 0.
PA Universidade Federal do ABC Avaliação: Prova 01 Disciplina: Processamento da Informação Professor: Jesús P. Mena-Chalco Data: 14/03/2017 Nome: RA: Instruções para a prova (leia antes de começar): 1)
Leia maisRESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:
RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO
Leia maisFundamentos de programação
Fundamentos de programação Recursividade Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno O que é recursividade? Técnica baseada em divisão e conquista Buscar solucionar o problema dividindo
Leia maisEstruturas de Repe,ção e String
Estruturas de Repe,ção e String Leonardo Gresta Paulino Murta leomurta@ic.uff.br Estruturas de repe
Leia maisAULA TEÓRICA 10. Tema 9. Interface. Tema 10. Recursividade
AULA TEÓRICA 10 Tema 9. Interface Tema 10. Recursividade 1 Interface Uma interface é como uma classe que não pode ser instanciada. Seu objectivo é espicificar um conjunto de métodos que uma classe deverá
Leia maisLógica de Programação I
Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Comando Do/While Além do comando while, existem outras estruturas para implementar laços repetitivos. O comando Do/While funciona de forma similar ao
Leia maisAlgoritmos e Modelação Computacional. Paulo Mateus MEBiom LMAC 2018
Algoritmos e Modelação Computacional Paulo Mateus MEBiom LMAC 2018 Objetivos Edição e compilação de programas Tipos e expressões Declaração de variáveis Atribuição, composição sequencial, iterativa e alternativa
Leia maisif not(isinstance(a, int)) or a < 0: raise ValueError ("misterio: arg nao e inteiro nao negativo") else: return misterio_aux(a, a + 1)
Capítulo 7 Recursão e iteração 1. (1) Considere a seguinte função: def misterio(a): def misterio_aux(b, c): if b == 0: return True elif c == 0: return False return misterio_aux(b -, c - ) if not(isinstance(a,
Leia maisAula prática 5. Funções Recursivas
Programação Funcional UFOP DECOM 2014.1 Aula prática 5 Funções Recursivas Resumo Definições recursivas são comuns na programação funcional. Nesta aula vamos aprender a definir funções recursivas. Sumário
Leia maisLinguagens de Programação Conceitos e Técnicas. Amarrações
Linguagens de Programação Conceitos e Técnicas Amarrações Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável e seu valor ou entre um identificador
Leia maisIntrodução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis
Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for
Leia maisComputação 1 - Python Aula 7 - Teórica: Estrutura de Repetição com teste de parada: while 1/ 23
Computação 1 - Python Aula 7 - Teórica: Estrutura de Repetição com teste de parada: while 1/ 23 Permite que o programador especifique que o programa deve repetir um conjunto de comandos enquanto uma dada
Leia maisRecursão. Prof. Fabrício Olivetti de França. (com inspirações do slide do prof. Rodrigo Hausen)
Recursão Prof. Fabrício Olivetti de França (com inspirações do slide do prof. Rodrigo Hausen) Recursão Para entender recursão, você primeiro deve entender recursão! Recursão Forma de pensar em uma solução
Leia maisLógica de Programação I
Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Comandos de repetição combinados com comandos de condição A utilização de comandos de repetição combinados com comandos de condição permite resolver
Leia maisINSTRUÇÕES DE REPETIÇÃO
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 6 INSTRUÇÕES DE REPETIÇÃO As instruções de repetição permitem fazer com que a execução de uma
Leia maisRESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos;
Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP2 2 semestre de 2016. Nome Assinatura Observações:
Leia maisAula teórica 14. Tema 12. Subprogramas (cont)
Aula teórica 14 Tema 12. Subprogramas (cont) Passagem de parâmetros. Valor de retorno Preparado por eng.tatiana Kovalenko 1 Variáveis globais Variáveis declarados no início da execução do programa, fora
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisAula 03 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes
Aula 03 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www3.ifrn.edu.br/~brunogomes Agenda da Aula Representação de Algoritmos em Pseudocódigo: Tipos de Dados;
Leia maisVetores Unimensionais
Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um
Leia maisComputação e Programação Aula prática nº 5. Enunciados dos problemas
Enunciados dos problemas 1 2. Implementação de uma calculadora 2.1 Objectivos do exercício análise sequencial de um problema baseada em objectos e desenvolvimento do respectivo algoritmo; codificação do
Leia maisFCUP 2010/11. Departamento de Ciência de Computadores Estruturas de Dados (CC114) 1 o Teste: 27/Abril/2011
1 1 Departamento de Ciência de Computadores Estruturas de Dados (CC114) 1 o Teste: 27/Abril/2011 FCUP 2010/11 duração: 2 horas 1. Teste A (indicar o teste que estão a fazer na folha de resposta) 2. Cotação
Leia maisIntrodução a JAVA. Variáveis, tipos, expressões, comandos e blocos
+ Introdução a JAVA Variáveis, tipos, expressões, comandos e blocos +Roteiro 2 Variáveis e tipos Operadores aritméticos, lógicos, relacionais e bit-a-bit Atribuição Comandos básicos Ler, Escrever, Condicional,
Leia maisSystem.out.print("e"); O programa acima irá imprimir: "b". O programa acima irá imprimir: "bd". O programa acima irá imprimir: "e".
Pergunta 1 Considere o programa a seguir. class SeQuestao1 { int num = 567; if(num % 2 == 0) { System.out.print("a"); else if(num % 3 == 0) { System.out.print("b"); else if(num % 5 == 0) { System.out.print("c");
Leia maisProcessamento da Informação Teoria. Recursividade
Processamento da Informação Teoria Recursividade Semana 08 Prof. Jesús P. Mena-Chalco 15/06/2013 Uma função chama outra função Vimos exemplos de uma função chamar uma outra função. def fatorial1(n): mult
Leia maisDepartamento de Ciência de Computadores Estruturas de Dados (CC114)
1. Cotação de cada pergunta: 1. 30 / 2. 40 / 3. 30 (Total: 100 pontos) 2. Responda às questões de forma clara e concisa nas folhas de exame distribuídas. 1. (Valorização: 30%) Responda às seguintes questões:
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 6 Filas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA 6 Filas Estrutura de Dados A Estrutura de Dados Fila Fila é uma estrutura de dados usada em programação, que tem regras para
Leia maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos
Leia maisSeleção Múltipla Laços (while, do-while, for) AULA 05
Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Seleção Múltipla Laços (while, do-while, for) AULA 05 Ricardo Massa F. Lima rmfl@cin.ufpe.br Sérgio C. B. Soares scbs@cin.ufpe.br Até aqui...
Leia maisThreads. Leonardo Gresta Paulino Murta
Threads Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aula de hoje Estudaremos a execução em paralelo de programas em Java por meio de Threads Leonardo Murta Threads 2 Por que usar Threads? Threads
Leia maisProgramação científica C++
Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 8 Matrizes como argumento de funções O nome de uma matriz (sem os colchetes) representa o endereço onde a matriz está armazenada. Ao passar o
Leia maisProgramação Estruturada e Orientada a Objetos
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br
Leia maisProgramação Estruturada
Programação Estruturada Recursão Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Recursão Recursão 1 Recursão 2
Leia maisVariáveis e instruções de repetição
Variáveis e instruções de repetição Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
Leia maisLição 4 Fundamentos da programação
Lição 4 Fundamentos da programação Introdução à Programação I 1 Objetivos Ao final desta lição, o estudante será capaz de: Identificar as partes básicas de um programa em Java Reconhecer as diferenças
Leia maisUNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 1º Semestre 2014/2015
UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 1º Semestre 2014/2015 Programação em C 15/01/2015 Resolução 1. Descreva, em Português, cada uma das seguintes declarações em C: 1.1. char str[512]; Array
Leia maisMó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 Educação e Ética Fundamentos da Programação Objetivos: Reconhecer as diferenças
Leia maisIntrodução à Programação em C
Introdução à Programação em C Tipos e Operadores Elementares Estruturas de Controlo Resumo Novidades em C Exemplo: Factorial Tipos de Dados Básicos Saltos Condicionais: if-then-else Valor de retorno de
Leia maisIntrodução a JAVA. Variaveis, tipos, expressões, comandos e blocos
Introdução a JAVA Variaveis, tipos, expressões, comandos e blocos Roteiro Variáveis e tipos Operadores aritméticos, lógicos, relacionais e bit-a-bit Atribuição Comandos básicos Ler, Escrever, Condicional,
Leia mais1. Para cada pergunta selecione uma opção. Resposta correta +2, incorreta -1. [12 pontos]
* Universidade Federal do ABC Avaliação: Prova 01 (40 pontos) Disciplina: MCTA028 - Programação Estruturada Turma: Noturno A1 e A2 Professor: Jesús P. Mena-Chalco Data: 25/10/2016 Nome completo: RA: Instruções:
Leia maisMais recursão ainda AULA 4. Máximo divisor comum. Divisibilidade. Máximo divisor comum. Divisibilidade PF 2.1, 2.2, 2.3 S 5.1
Mais recursão ainda AULA 4 PF 2.1, 2.2, 2.3 S 5.1 http://www.ime.usp.br/ pf/algoritmos/aulas/recu.html Máximo divisor comum Divisibilidade Suponha que a, b e d são números inteiros. PF 2.3 S 5.1 http://www.ime.usp.br/
Leia maisProgramação. MEAer e LEE. Bertinho Andrade da Costa. Instituto Superior Técnico. Argumentos da linha de comando Funções recursivas
Programação MEAer e LEE Bertinho Andrade da Costa 2010/2011 1º Semestre Instituto Superior Técnico Argumentos da linha de comando Funções recursivas Programação 2010/2011 DEEC-IST Arg. da linha de comando;
Leia maisProcessamento da Informação Estruturas de seleção simples e composta
Processamento da Informação Estruturas de seleção simples e composta Prof. Jesús P. Mena-Chalco CMCC/UFABC Q1/2017 1 Expressões Booleanas 2 Fonte: http://pt.wikipedia.org/wiki/george_boole Expressões Booleanas
Leia maisRecursividade cotiinformatica.com.br. Professor Edson Belém blogedsonbelem.com.br
Recursividade cotiinforatica.co.br Professor Edson Belé www.cotiinforatica.co.br blogedsonbele.co.br Recursividade Soatório public class RecursvidadeSoa { static long total=0; public static long soa(long
Leia maisAlgoritmos e Estruturas de Dados I Linguagem C
Algoritmos e Estruturas de Dados I (DCC/003) Algoritmos e Estruturas de Dados I Linguagem C Aula Tópico 11 Recursividade 1 Recursão Na linguagem C, uma função pode chamar outra função. A função main()
Leia maisLista de Exercícios sobre Recursividade
Lista de Exercícios sobre Recursividade 1) Dado os algoritmos recursivos abaixo, apresente suas funções de complexidade de tempo. a) void Pesquisa(int n) if (n > 1) Inspecione n*n*n elementos; // custo
Leia maisSSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves. ICMC/USP São Carlos
Funções SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves ICMC/USP São Carlos Slides baseados no material gentilmente cedido pela Profa Simone Senger Souza 2 MODULARIZAÇÃO Um
Leia maisEstruturas de Repetição. Leonardo Murta
Estruturas de Repetição Leonardo Murta leomurta@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Dois tipos de Repetição: } Repetição condicional: executa
Leia maisIntrodução à Programação. Estruturas de Repetição
Introdução à Programação Estruturas de Repetição Repetição de Comandos i 0 int somatorio(int n) { int soma = 0; int i = 0; soma = soma + i; i++; soma = soma + i; i++; soma = soma + i;... n i Faz esta seqüência
Leia maisAula 7 Modularização. Processamento da Informação. Universidade Federal do ABC
Aula 7 Modularização Processamento da Informação Universidade Federal do ABC Funções (= métodos em Java) Já usamos algumas funções sem nos darmos conta: System.out.println Math.random, Math.sqrt,... scanner.nextint(),
Leia maisLÓGICA DE PROGRAMAÇÃO (JAVA) ESTRUTURAS REPETIÇÃO. Professor Carlos Muniz
LÓGICA DE PROGRAMAÇÃO (JAVA) ESTRUTURAS REPETIÇÃO Estruturas de repetição Estrutura de repetição nada mais é que laços de repetições. Laços de repetições permitem que um conjunto de instruções seja repetido
Leia maisVariáveis primitivas e Controle de fluxo
Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/
Leia maisPrimos... Determinar se um inteiro é primo. 1. Um número é primo se apenas é divisível por ele próprio e por 1.
Primos... Problema 1. Determinar se um inteiro é primo. 1. Um número é primo se apenas é divisível por ele próprio e por 1. 2. Algoritmo: percorrer os inteiros de 2 a n-1 e verificar se dividem n:se nenhum
Leia maisESQUEMA AULA PRÁTICA 1
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente JBuilder Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado JBuilder. Start
Leia maisEstruturas de Repetição. Vanessa Braganholo
Estruturas de Repetição Vanessa Braganholo vanessa@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Dois tipos de Repetição: } Repetição condicional:
Leia maisRecursividade. Objetivos do módulo. O que é recursividade
Recursividade Objetivos do módulo Discutir o conceito de recursividade Mostrar exemplos de situações onde recursividade é importante Discutir a diferença entre recursividade e iteração O que é recursividade
Leia maisAula 10 Comandos de Repetição For e Do While
Aula 10 Comandos de Repetição For e Do While 1) O comando for É muito comum usarmos o comando while para repetir alguns comandos um número definido de vezes. Fazemos isso usando um contador. Considere
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
Variáveis e Métodos de Classe Em Java, quer as classes quer as instâncias das classes são objectos. Onde está o estado da classe? Com que operações é manipulado? UBI, Departamento de Informática T04-1
Leia maisRecursão David Déharbe
Recursão David Déharbe 1 1 Objetivos da aula O conceito de recursão. Exemplos. Programação em C. 2 2 Roteiro da aula Revisão de funções; Motivação; Definição; Dois exemplos básicos; Recursão mútua; Dois
Leia maisLinguagens de Programação Conceitos e Técnicas. Amarrações Prof. Tiago Alves de Oliveira
Linguagens de Programação Conceitos e Técnicas Amarrações Prof. Tiago Alves de Oliveira Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável
Leia maisAlgoritmos II Aula 11 Funções e Procedimentos
Algoritmos II Aula 11 Funções e Procedimentos Professor: Max Pereira max.pereira@unisul.br Ciência da Computação Programação Estruturada ou Programação Modular 1960 crise do software; Programas grandes
Leia maisEstruturação de Procedimentos
Capítulo 4 Estruturação de Procedimentos 4. Exercícios de revisão. Diga o que entende por linguagem estruturada em blocos. Descreva a regra associada a esta estrutura, e diga qual a sua importância. 2.
Leia maisT(0) = 0 T(n) = 2*T((n-1)/2) + 1
SIN5013 - Exemplo de Prova do Conteúdo Semestral 1. Encontre as equações de recorrência dos seguintes métodos (não é necessário resolver, mas é preciso identificar precisamente suas equações de recorrência
Leia maisCaderno de Exercícios
Caderno de Exercícios Processamento da Informação Edição Java Jesús P. Mena-Chalco Centro de Matemática, Computação e Cognição - CMCC Universidade Federal do ABC Alguns exercícios podem conter erros. Caso
Leia maisComputação e Programação Exame Época de recurso
Nome : Número : Computação e Programação 2013-2014 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de recurso 29 de Janeiro de 2014 v
Leia maisApêndice A. Alguns construtores e métodos importantes e úteis da classe Vector são:
Apêndice A Classe Vector A classe Vector permite a representação de um vetor de dados de maneira similar à de um array, visto na disciplina Programação Orientada a Objetos I, mas com maior flexibilidade.
Leia maisSintaxe Básica de Java Parte 2
Sintaxe Básica de Java Parte 2 Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Instruções Condicionais A instrução
Leia maisExercícios sobre repetição. 1. Escreva um método que lê via teclado 8 números e retorna a quantidade de negativos.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Lista de exercícios 6 Exercícios sobre repetição 1. Escreva um método que lê via teclado 8 números e retorna
Leia maisVetores Unimensionais
Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um
Leia maisFundamentos da Programação
Fundamentos da Programação Solução do Exame 13 de Janeiro de 2017 09:00 11:00 1. Indique se cada uma das seguintes afirmações é verdadeira ou falsa. No caso de ser falsa, justifique de forma sucinta. (a)
Leia mais2 Vectores de objectos
2 Vectores de objectos Agenda de contactos 3 Objectivo Manipular uma agenda de contactos. Descrição e Funcionalides Cada contacto na agenda caracteriza-se por um nome, um telefone e um e-mail. Na agenda,
Leia mais1. Cotação de cada pergunta: / / (Total: 100 pontos) 2. Responda às questões de forma clara e concisa nas folhas de exame.
Departamento de Ciência de Computadores Estruturas de Dados (CC114) 2 o Teste: 25/Junho/2012 FCUP 2011/12 duração: 2.5 horas 1. Cotação de cada pergunta: 1. 30 / 2. 35 / 3. 35 (Total: 100 pontos) 2. Responda
Leia maisLinguagem de Programação III
Linguagem de Programação III Aula-5 Estruturas de Decisão e Controle. Arrays em Java Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de
Leia maisComputação 1 - Python Aula 7 - Teórica Estrutura de Repetição com Teste de Parada: while. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18
Computação 1 - Python Aula 7 - Teórica Estrutura de Repetição com Teste de Parada: while 1/ 18 Permite que o programador especifique que a função deve repetir um conjunto de comandos enquanto uma dada
Leia maisRecursão. Definição. Características. Recursividade 31/08/2010
Recursão Introdução à Ciência da Computação II (009) Rosane Minghim Apoio na confecção: Rogério Eduardo Garcia Danilo Medeiros Eler Definição Um objeto é dito ser recursivo se ele é definido parcialmente
Leia maisESQUEMA AULA PRÁTICA 1
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente JBuilder Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado JBuilder. Start
Leia maiscontrole de fluxo repetições iterativas
Controle de Fluxo Repetições iterativas INF1005 Programação I Prof. Hélio Lopes lopes@inf.puc-rio.br sala 408 RDC 1 controle de fluxo repetições iterativas tópicos while for do while break continue referência
Leia maisCIC 110 Análise e Projeto de Algoritmos I
CIC 110 Análise e Projeto de Algoritmos I Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 09 Consultas de Intervalo Consulta de Intervalo Neste capítulo, discutimos estruturas
Leia maisFabiano Moreira.
Fabiano Moreira professor@fabianomoreira.com.br Um pouco de história Java 1.02 (250 classes, lenta) Java 1.1 (500 classes, um pouco mais rápida) Java 2, versões 1.2-1.4 (2300 classes, muito mais rápida)
Leia maisEstruturas de Repetição. Vanessa Braganholo
Estruturas de Repetição Vanessa Braganholo vanessa@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Repetição condicional: executa um bloco de código
Leia maisSintaxe da linguagem Java
Sintaxe da linguagem Java (PG) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Classe pública com método main Uma classe pública com nome A tem
Leia maisAnálise de Programação
Análise de Programação Fundamentos da Linguagem de Programação Java Prof. Gilberto B. Oliveira Variáveis Atributos: Variáveis Declaradas fora de um método, sem o modificador static Variáveis membro ou
Leia maisOrientação a Objetos e Java
Orientação a Objetos e Java Daves Martins davesmartins@yahoo.com.br Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características
Leia mais