1 ō Trabalho Prático de Programação Imperativa 2001/2002 Propostas de trabalho

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

Download "1 ō Trabalho Prático de Programação Imperativa 2001/2002 Propostas de trabalho"

Transcrição

1 1 ō Trabalho Prático de Programação Imperativa 2001/2002 Propostas de trabalho 21 de Novembro de Cartões mágicos Considerando os cartões abaixo é possível adivinhar um número de 1 a 63. Para tal basta pedir a alguém que pense num número de 1 a 63 e indique em quais os cartões esse número aparece. Sabendo os cartões é possível saber o número imediatamente. 1 ō 2 ō ō 4 ō ō 6 ō Como? O segredo consiste em adicionar os primeiros números em cada cartão dado. A soma é o número escolhido. Porquê? Esses números são as potências base 2 que na representação base 2 do número escolhido correspondem a dígitos 1. Por exemplo, se o número for 44, ele aparece nos cartões 3 ō, 4 ō, e 6 ō e portanto = = = (101100) 2 = 44 Como são construídos os cartões? O 1 ō cartão contém os números que na representação em base 2 têm um 1 na posição correspondente a 2 0. O 2 ō cartão contém os números que na representação em base 2 têm um 1 na posição correspondente a 2 1, etc. O 6 ō cartão contém os números que na representação em base 2 têm um 1 na posição correspondente a 2 5. Assim basta considerar os números de 1 a 63 em binário para saber que números devem estar em cada cartão. Por exemplo o número 7 terá de estar nos três primeiros cartões. 1

2 N. decimal N. decimal Objectivo Pretende-se um programa que implemente este jogo permitindo que: O computador adivinhe um número pensado pelo utilizador. O programa deve gerar e mostrar os cartões um a um. Para cada cartão pedir ao utilizador para indicar se o número que pensou está ou não nesse cartão (por exemplo, consoante o utilizador introduza o valor 1 ou 0). Com essa informação pode calcular o número e indicar ao utilizador. Nota: Os cartões têm de ser calculados pelo programa e não pré-definidos (p.e num ficheiro). A melhor maneira, inspirada na tabela acima, é gerar para o 1 ō cartão todos os números que têm a parcela 2 0, para o 2 ō todos os números que têm a parcela 2 1, etc. Usa uma instrução switch()... O utilizador adivinhe um número que o computador pense : o computador deve gerar um número entre 1 e 63 e indicar ao utilizador em que cartões ele se encontra (neste caso devem ser escritos todos os cartões ao mesmo tempo). Neste modo, será pedido ao utilizador para adivinhar o número que depois poderá ser confirmado, por comparação com o número gerado. ambos os modos do jogo possam ser jogados várias vezes inicialmente deve aparacer um menu que permita escolher qual o modo em que o jogo é jogado ou se se deseja terminar. Nota que este jogo pode ser generalizado para números maiores que 63 e outras bases. Pensa como fazê-lo! E se quisseres apresenta o programa para outros valores... 2

3 2 Quando é a Páscoa? O domingo de Páscoa é o primeiro domingo depois da primeira lua cheia depois do equinócio da Primavera. Apenas com esta definição não é fácil construir um algoritmo... Na realidade o seu cálculo é bastante mais complicado e está ligado ao calendário (lunar) hebraico. No mundo cristão, a Páscoa celebra a morte de Jesus Crito. Jesus Cristo foi crucificado, imediatamente antes da data em que os judeus celebram o Êxodus de Moisés do Egipto, que começa no 14-ésimo ou 15-ésimo dia do mês de Nisan (primavera). Os meses judaicos começam na lua nova, portanto será imediatamente depois duma lua cheia. Assim, decidiu-se que o domingo de Páscoa seria o primeiro domingo depois da lua cheia depois do equinócio da Primavera. O equinócio da Primavera é a 21 de Março. A lua cheia que precede a Páscoa chama-se Paschal. Para a calcular são necessárias duas quantidades: o número de ouro e o Epact. Número de ouro A relação entre as fases da lua e os dias do ano repete-se todos os 19 anos. Assim pode-se associar um número entre 1 e 19 a cada ano. Esse número é o Número de Ouro, NO: NO = (ano%19) + 1 onde % é o resto da divisão inteira. Nos anos com o mesmo número de ouro, a lua nova ocorre aproximadamente no mesmo dia. Epact Cada ano é associado com um Epact. O Epact é uma medida da idade da lua (i.e do número de dias desde a lua nova) numa dada data. Esse valor é (11 (NO 1))%30 acrescido de correções associadas aos anos bissextos, resultando ((11 (NO 1))%30 (3 seculo)/4 + (8 seculo + 5)/25 + 8) onde as divisões são divisões inteiras. Ao qual se tem ainda que somar ou subtrair 30 para garantir que fica um valor entre 1 e 30. O valor obtido é o Epact. Lua cheia Paschal Se 1 Epact 23 então é 23 Epact dias depois de 21 de Março. Se Epact = 24 é o dia 18 de Abril (28 dias depois de 21 de Março). Se Epact = 25 e se NO > 11 é 17 de Abril (27 dias depois de 21 de Março), senão é 18 de Abril. Se 26 Epact 30, então é 53 Epact dias depois de 21 de Março. Domingo de Páscoa Primeiro domingo a seguir à lua cheia Paschall. Se a lua cheia for num domingo, o domingo de Páscoa é no domingo seguinte. 2.1 Objectivo Pretende-se um programa que: defina uma função que dado um ano determine e imprima a data do domingo de Páscoa (dia do mês, mês e ano). O formato de escrita deverá ser "%d de Março de %d\n" ou "%d de Abril de %d\n", como em: 15 de Abril de de Março de

4 Para essa tarefa será ainda conveniente definir funções para as seguintes sub-tarefas: dado um ano retorne o Epact. dado o Epact e o Número de Ouro (NO) retorne a distância em dias do Paschal a 21 de Março. dado um ano A ( 1582), mês M (1 a 12) e dia D (1 a 31), retorne qual o dia da semana. Para tal, poderá ser usado o seguinte algoritmo: Se o mês for Janeiro ou Fevereiro, senão factor = 365 A + 31 (M 1) + D + (A 1)/ f actor = 365 A+31 (M 1) +D int(0.4 M +2.3) +A/4 int(0.75 (A/100+1)) O dia da semana é dado por S = factor%7, sendo 0=sábado, 1=domingo, 2=segunda, etc. Esta última função deverá ser usada para determinar o dia da semana da lua cheia Paschal, depois de determinado qual o seu mês e dia do mês. Depois só é necessário determinar a data (mês e dia do mês) do domingo seguinte! Para testar se a tua função da Páscoa está correcta, poderás comparar os valores produzidos pelo teu programa com os do ficheiro pascoas.txt que tem uma listagem de todas as Páscoas entre 1582 e O programa deve no início apresentar um menu que permita o utilizador: 1. introduzir um ano (superior a 1582) e para esse ano ser impressa a data do domingo de Páscoa. 2. introduzir dois anos (sendo o segundo superior e ambos superiores a 1582) e serem impressas todas as Páscoas entre esses dois anos. 3. Sair do programa Nas duas primeiras hipóteses, depois de executada a tarefa o programa deve voltar a apresentar o menu. 4

5 3 Coelhos e Raposas Este trabalho tem como objectivo a realização de um simulador que ilustre a evolução de duas populações de predadores e de presas. Neste caso particular temos uma população raposas que são os predadores naturais de uma população de coelhos: Para a simulação vamos assumir que: o nascimento de coelhos tem uma taxa fixa (não depende de outros factores ambientais). a morte de coelhos é apenas provocada pelos actos predadores das raposas. a morte das raposas deve-se apenas a causas naturais. o nascimento de raposas é função da quantidade de comida disponível (num. de coelhos). Baseando-nos nestes pressupostos, a interacção entre estas duas espécies num ecossistema isolado, pode ser descrita por um modelo constituído por duas equações diferencias que traduzem a forma como estas populações evoluem. Considerando P C (t) e P R (t) respectivamente como sendo o número de coelhos e de raposas, num instante t, temos: P C(t) = a P C (t) b P C (t) P R (t) Onde: P R(t) = e b P R (t) P C (t) c P R (t) a é a taxa de crescimento dos coelhos (na ausência de actos predatórios). c é a taxa de mortalidade das raposas na ausência de comida (coelhos). b é a taxa de mortalidade de coelhos (devida a actos predatórios). e é a eficiência com que os actos predatórios das raposas se traduzem no crescimento da sua população. Como simplificação para facilitar a nossa simulação e considerando que P C(t) = lim D 0 P C (t + D) P C (t) D vamos transformar as equações anteriores nas sucessões: P Cn+1 = P Cn + (a P Cn b P Cn P Rn ) D Em que: P Rn+1 = P Rn + (e b P Rn P Cn c P Rn ) D P Cn P Rn o número de coelhos na iteração n o número de raposas na iteração n D é o intervalo de tempo entre duas iterações e sendo P C0 e P R0 os valores iniciais das populações. 5

6 3.1 Objectivo Pretende-se um programa que, baseado nas equações anteriormente descritas, e nos dados introduzidos pelo utilizador, faça uma simulação da evolução das populações de coelhos e de raposas. O resultado deverá ser uma tabulação por dia, do número de coelhos e de raposas. O programa deverá conter funções para: 1. a leitura dos dados da simulação. Os dados de entrada serão as populações iniciais de coelhos PC0 e de raposas PR0, os parâmetros a, b, c e e, que caracterizam a evolução das populações e a interacção entre elas, o intervalo de tempo D entre duas interações e o número de dias durante o qual se pretende analisar a evolução das populações. Nota: para efeitos de simulação considere que as raposas e os coelhos podem assumir valores fraccionários. 2. realização da simulação 3. cálculo do novo número de coelhos (baseado nas equações definidas anteriormente). Na eventualidade de o valor calculado ser menor que zero, considere-o igual a zero. 4. cálculo do novo número de raposas (baseado nas equações definidas anteriormente). Na eventualidade de o valor calculado ser menor que zero, considere-o igual a zero. 5. impressão do dia, correspondente número de coelhos e de raposas. O formato de escrita deverá ser "%d\t%6.4f\t6.4f\n" O programa deve no início apresentar um menu que permita ao utilizador: 1. introduzir os dados da simulação. 2. realizar a simulação. 3. sair do programa. Como exemplo, teste o programa com os seguintes parâmetros: PC0 = 4 PR0 = 3 a = 0.1 c = 0.1 b = 0.1 e = 0.1 D =0.01 dias = 1000 Poderá comparar os resultado, para estes dados, s como os do ficheiro output.txt Referências 6

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved.

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved. Programação Folha Prática 5 Lab. 5 Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved. 1. Revisão. 2. Objectivos. 3. Exercícios LAB. 5 5ª semana ESTRUTURAS

Leia mais

Introdução à Programação 2006/07. Algoritmos

Introdução à Programação 2006/07. Algoritmos Introdução à Programação 2006/07 Algoritmos Cálculo da média de uma sequência Algoritmos: Exercício 1 Pretende-se escrever um programa que, dado um numero indeterminado de números introduzidos pelo teclado,

Leia mais

Estruturas de Repetição

Estruturas de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 4 Estruturas de Condição Profa. Marina Gomes marinagomes@unipampa.edu.br 06/04/2017 Engenharia de Computação - Unipampa 1 Aula de Hoje Estrutura condicional simples Utilização

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos

Leia mais

Desenho de algoritmos

Desenho de algoritmos Folha Prática Desenho de Algoritmos 1 Desenho de algoritmos Resolver as questões que se seguem usando fluxogramas ou uma outra linguagem para algoritmos. A. Instruções/acções de atribuição e leitura/escrita

Leia mais

MC-102 Aula 08 Comandos Repetitivos

MC-102 Aula 08 Comandos Repetitivos MC-102 Aula 08 Comandos Repetitivos Instituto de Computação Unicamp 13 de Setembro de 2016 Roteiro 1 Exemplos com laços Menu de Escolhas Representação Binário-Decimal Representação Decimal-Binário 2 Laços

Leia mais

Procalc v1.0. Versão Utilizador (Manual de Utilizador)

Procalc v1.0. Versão Utilizador (Manual de Utilizador) Procalc v1.0 Versão Utilizador (Manual de Utilizador) Conteúdo Procalc... 4 Botões Numéricos... 5 Funções Básicas... 6 Funções avançadas... 7 Logaritmo... 7 Logaritmo Natural... 7 Expoente... 7 Factorial...

Leia mais

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre T. 04 Algoritmos e Programação Estruturada Objectivos: Aprender o conceito de algoritmo e suas características fundamentais

Leia mais

Ficha 1 Noções de sequência e decisão em algoritmia

Ficha 1 Noções de sequência e decisão em algoritmia Ficha 1 Noções de sequência e decisão em algoritmia 1. Ler uma temperatura em Celsius e converter para Fahrenheit. Elabore o algoritmo e especifique as estruturas de dados necessárias para a resolução

Leia mais

Capítulo 2. Representação de dados em sistemas computacionais

Capítulo 2. Representação de dados em sistemas computacionais Capítulo 2 Representação de dados em sistemas computacionais Adaptado dos transparentes das autoras do livro The Essentials of Computer Organization and Architecture Objectivos [1] Saber somar números

Leia mais

Exercícios: Vetores e Matrizes

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

Leia mais

Aritmética em Bases Não Decimais

Aritmética em Bases Não Decimais Aritmética em Bases Não Decimais Cristina Boeres Insituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material cedido por Fernanda Passos (IC/UFF) Aritmética em Bases Não Decimais FAC

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Trabalho nº 5 Funções http://tele1.dee.fct.unl.pt/pm

Leia mais

Elementos Básicos de Programação

Elementos Básicos de Programação Capítulo 2 Elementos Básicos de Programação 1. Escreva um programa em Python que pede ao utilizador que lhe forneça dois números (x e y) equeescreveovalorde(x + 3 * y) * (x - y). Oseuprogramadevegerarumainteraçãocomoaseguinte:

Leia mais

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

INFORMÁTICA APLICADA AULA 02 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 ALGORITMOS Profª ª Danielle Casillo ALGORITMOS Um algoritmo é uma sequência de instruções

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Funções e Vectores http://tele1.dee.fct.unl.pt

Leia mais

Instruções de repetição

Instruções de repetição Instruções de repetição Estruturas de controlo na linguagem C Repetição (e componentes associadas a qualquer repetição: inicialização, teste da condição de paragem e actualização) Repetição com teste à

Leia mais

Algoritmos e Lógica de Programação. 6ª Lista de Exercícios Comandos de Repetição

Algoritmos e Lógica de Programação. 6ª Lista de Exercícios Comandos de Repetição Algoritmos e Lógica de Programação 6ª Lista de Exercícios Comandos de Repetição 1. Qual a saída do programa abaixo? int i; for (i = 0; i < 10; i += 2) printf("%d\n", i / 2); 2. Qual a saída do programa

Leia mais

Processamento da Informação

Processamento da Informação Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece

Leia mais

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro.

Ficheiros de texto 1. Ficheiros de texto. 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro. Ficheiros de texto 1 Ficheiros de texto 1. Implementar um programa que leia uma frase do teclado e a escreva num ficheiro. 2. Implementar um programa que procure num ficheiro uma palavra lida do teclado.

Leia mais

Objectivos. Programação I (2010/2011) 2 o Trabalho de Programação

Objectivos. Programação I (2010/2011) 2 o Trabalho de Programação Programação I (2010/2011) 2 o Trabalho de Programação Introdução As progressões aritméticas e geométricas são exemplos de sucessões numéricas onde o elemento n + 1 depende do elemento n e de uma constante.

Leia mais

Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR

Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR Conforme discutido na última aula, cada operação lógica possui sua própria tabela verdade. A seguir será apresentado o conjunto básico de portas lógicas

Leia mais

Fixação de conteúdo teórico

Fixação de conteúdo teórico BCC701 Programação de Computadores (2019-01) Universidade Federal de Ouro Preto - MG Departamento de Computação - DECOM http://www.decom.ufop.br/bcc701 [Aula 12] Estruturas de Repetição (prática 2) Fixação

Leia mais

MC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016

MC102 Aula 26. Instituto de Computação Unicamp. 17 de Novembro de 2016 MC102 Aula 26 Recursão Instituto de Computação Unicamp 17 de Novembro de 2016 Roteiro 1 Recursão Indução 2 Recursão 3 Fatorial 4 O que acontece na memória 5 Recursão Iteração 6 Soma em um Vetor 7 Números

Leia mais

Instruções de repetição

Instruções de repetição Folha Prática Instruções de repetição 1 Instruções de repetição Repetição (e componentes associadas a qualquer repetição: inicialização, teste da condição de paragem e actualização) Repetição com teste

Leia mais

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Disciplina de Introdução à

Leia mais

Lógica de Programação I

Lógica de Programação I Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Comando Switch O comando Switch pode ser visto como uma especialização do comando if. Foi criado para facilitar um uso particular de comandos if encadeados.

Leia mais

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007 ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2006/2007 TRABALHO PRÁTICO Nº

Leia mais

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho Gilson de Souza Carvalho gaucho.gilson@hotmail.com 3.1.3 Condições compostas Linguagem e Técnicas em Programação As condições que vimos até agora sempre foram únicas. Entretanto, conforme aumenta a complexidade

Leia mais

EXERCÍCIOS: Estrutura Sequencial, IF (SE), ELSE (Senão)

EXERCÍCIOS: Estrutura Sequencial, IF (SE), ELSE (Senão) EXERCÍCIOS: Estrutura Sequencial, IF (SE), ELSE (Senão) Exercício 1) Escreva um programa para ler um número o o Se o número é par, mostre na tela o texto "O número é par" Senão, mostre na tela o texto

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Estruturas de repetição Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Comandos de repetição

Leia mais

Métodos Numéricos - Notas de Aula

Métodos Numéricos - Notas de Aula Métodos Numéricos - Notas de Aula Prof a Olga Regina Bellon Junho 2007 1. Representação de números reais 1.1. Introdução Cálculo Numérico X Método Numérico CI202 - Métodos Numéricos 1 1. Representação

Leia mais

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Etapas para o desenvolvimento de um programa Analise: estudo do problema para determinação dos dados de entrada, do processamento

Leia mais

Programação Estruturada

Programação Estruturada Algoritmos e Técnicas - Estruturas de Controle de Fluxo - Programação Estruturada Programação estruturada é a técnica de construir e formular algoritmos de uma forma sistemática. Utilizada para apresentar

Leia mais

Introdução à Programação Estruturada Parte 2. Material da Prof. Ana Eliza

Introdução à Programação Estruturada Parte 2. Material da Prof. Ana Eliza Introdução à Programação Estruturada Parte 2 Material da Prof. Ana Eliza programa Passo 1: Definir o problema O que fazer? Passo 2: Especificar a solução Como fazer? Passo 3: Codificar a solução Passo

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If...

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If... Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: Operadores relacionais e lógicos estruturas condicionais If... Else Switch Prof. Renato Pimentel 1 Operações relacionais Operações

Leia mais

INTEIROS. Luciana Santos da Silva Martino. lulismartino.wordpress.com PROFMAT - Colégio Pedro II. 25 de agosto de 2017

INTEIROS. Luciana Santos da Silva Martino. lulismartino.wordpress.com PROFMAT - Colégio Pedro II. 25 de agosto de 2017 Sumário REPRESENTAÇÃO DOS NÚMEROS INTEIROS Luciana Santos da Silva Martino lulismartino.wordpress.com lulismartino@gmail.com PROFMAT - Colégio Pedro II 25 de agosto de 2017 Sumário 1 Sistemas de Numeração

Leia mais

Variáveis e Memória. Revisão. Conceitos. Operações sobre a memória

Variáveis e Memória. Revisão. Conceitos. Operações sobre a memória Variáveis e Memória Revisão Estudamos, na Introdução, que os programas de computador implementam algoritmos, os quais manipulam um conjunto de dados para produzir um resultado. O algoritmo é um conjunto

Leia mais

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE DA BEIRA INTERIOR UNIVERSIDADE DA BEIRA INTERIOR Programação MIEA 1º Semestre Frequência Resolução 13/12/2016 1. Escreva uma expressão lógica em linguagem C para cada uma das seguintes condições: (a) o valor da variável

Leia mais

Programação em C - LAB1

Programação em C - LAB1 Exercício 1: Cálculo dos divisores de um número inteiro. Os divisores de são os inteiros que dividem com resto zero. ota: Omitimos a leitura de para manter o fluxograma mais simples. Valor inteiro do qual

Leia mais

Teoria da Computação. 2006/2007 Trabalho prático nº 1. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1

Teoria da Computação. 2006/2007 Trabalho prático nº 1. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1 2006/2007 Trabalho prático nº 1 Trabalho realizado por: Pedro Oliveira (501062444) Rui Costa (501062452) Turma: TP1 1 - Introdução O objectivo deste trabalho era implementar um simulador de Autómatos Finitos

Leia mais

Tipo m= matriz [ l i1 : l s1, l i2 : l s2 ] <tipo básico> m: mat

Tipo m= matriz [ l i1 : l s1, l i2 : l s2 ] <tipo básico> m: mat MATRIZ 1 Considere que você necessitasse elaborar um programa que efetuasse a leitura das notas dos alunos, o cálculo da média de cada aluno e no final, apresentar a média do grupo. Utilizando-se apenas

Leia mais

INTRODUÇÃO À PROGRAMAÇÃO

INTRODUÇÃO À PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO 1.Ano LCC-MIERSI DCC - FCUP Nelma Moreira Aula 10 Geração de números pseudoaleatórios Função rand() i = rand(); gera um inteiro entre 0 e RAND_MAX, com igual probabilidade de ocorrer.

Leia mais

Introdução à Programação. Ciclos 1ª parte

Introdução à Programação. Ciclos 1ª parte Introdução à Programação Ciclos 1ª parte Sumário Ciclos while Exercícios com instruções condicionais e ciclos Ciclos (while) while ( ) ; Enquanto for diferente de zero

Leia mais

Introdução aos algoritmos computacionais

Introdução aos algoritmos computacionais CAPíTULO 1 Introdução aos algoritmos computacionais é um procedimento que descreve, sem ambiguidade, uma sequência nita de passos a serem seguidos em uma ordem especíca para resolver um problema ou aproximar

Leia mais

Apêndice B - Sistemas Numéricos

Apêndice B - Sistemas Numéricos Página 1 de 5 Microcontroladores PIC on-line GRÁTIS! Indice Sistema de desenvolvimento Contacte-nos Apêndice B Sistemas Numéricos Introdução B.1 Sistema numérico decimal B.2 Sistema numérico binário B.3

Leia mais

Fluxogramas. Leandro Tonietto ago-09

Fluxogramas. Leandro Tonietto ago-09 Fluxogramas Leandro Tonietto ltonietto@unisinos.br ago-09 Introdução Planejar, modelar e projetar primeiro, depois fazer (programar). Maiores chances de sucesso na programação Facilita a resolução, pois

Leia mais

MC102 Algoritmos e Programação de Computadores

MC102 Algoritmos e Programação de Computadores MC102 Algoritmos e Programação de Computadores Instituto de Computação UNICAMP Primeiro Semestre de 2014 Roteiro 1 Maior número 2 Soma de n números 3 Fatorial 4 Máximo Divisor Comum (MDC) 5 Números primos

Leia mais

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 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.

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação 1.Ano LCC-MIERSI DCC - FCUP Nelma Moreira Aula 2 Etapas para o desenvolvimento dum programa 1. Perceber o problema 2. Encontrar um procedimento algorítmico para o resolver. Estratégias:

Leia mais

Estruturas de Decisão

Estruturas de Decisão Estruturas de Decisão Professor: Juliano Lucas Gonçalves juliano.goncalves@ifsc.edu.br Agenda Operadores Relacionais Lógicos Estruturas de Decisão Se...Entao Se...Entao...Senao Se...Entao...Senao (encadeados)

Leia mais

Aula 2: Algoritmos: Intuição

Aula 2: Algoritmos: Intuição Aula 2: Algoritmos: Intuição Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Algoritmos: Intuição Programação de Computadores IV 1 / 27 Agenda 1 Revisão

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES Representação de Dados Professor: Airton Ribeiro de Sousa E-mail: airton.ribeiros@gmail.com 1 REPRESENTAÇÃO DE DADOS: SÍMBOLO: Marca visual ou gráfica que representa um objeto que desejamos identificar

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS DISCIPLINA: Lab. de Programação PROF: MSc. Flávio Barros PERÍODO: 2 DATA: Aluno (s): 01 ATIVIDADE / / Revisão de Conteúdo

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES Representação de Dados Professor: Airton Ribeiro de Sousa E-mail: airton.ribeiro@faciplac.edu.br 1 Ao longo dos anos, muitos padrões e convenções foram estabelecidas para determinar certos aspectos da

Leia mais

Algoritmos e Estrutura de Dados. Algoritmos Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Algoritmos Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 3 Conceitos Básicos de Algoritmos Prof. Tiago A. E. Ferreira Definição de Algoritmo Informalmente... Um Algoritmo é qualquer procedimento computacional bem definido

Leia mais

Projecto # 4: HangMan

Projecto # 4: HangMan Projecto # 4: HangMan Entrega: 17 de Junho as 23:59 Para este problema sua missão é escrever um programa que implementa o jogo Hangman. Deve-se ter em conta dois objectivos. Primeiro, o programa é desenhado

Leia mais

Aula 8: Complemento a Um e Complemento a Dois

Aula 8: Complemento a Um e Complemento a Dois Aula 8: Complemento a Um e Complemento a Dois Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Complemento a Um e Complemento a Dois FAC 1 / 40

Leia mais

Laboratório Calculando de Sub-Redes IPv4

Laboratório Calculando de Sub-Redes IPv4 Objetivos Parte 1: Determinar a Divisão de Endereços IPv4 em Sub-Redes Parte 2: Calcular a Divisão de Endereços IPv4 em Sub-Redes Histórico/Cenário A capacidade de trabalhar com sub-redes IPv4 e determinar

Leia mais

Primos... Determinar se um inteiro é primo. 1. Um número é primo se apenas é divisível por ele próprio e por 1.

Primos... 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 mais

Exercícios: comandos condicionais

Exercícios: comandos condicionais Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: comandos condicionais 1. Faça um programa que receba dois números

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre TRABALHO FINAL DE AVALIAÇÃO Gestão

Leia mais

ZS Rest. Manual Avançado. Início v.1. v2011

ZS Rest. Manual Avançado. Início v.1. v2011 Manual Avançado Funcionamento Início v.1 com cartões v2011 1. Índice 2. INTRODUÇÃO... 2 3. INICIAR O ZSRest FrontOffice... 3 1 4. Séries... 4 b) Adicionar Série... 4 i. Tipo de série... 5 c) Modificar

Leia mais

Elementos Básicos de Programação

Elementos Básicos de Programação Capítulo 2 Elementos Básicos de Programação 1. Escreva um programa em Python que pede ao utilizador que lhe forneça dois números (x e y) equeescreveovalorde(x + 3 * y) * (x - y). Oseuprogramadevegerarumainteraçãocomoaseguinte:

Leia mais

1. Múltiplos e divisores

1. Múltiplos e divisores Escola Básica de Santa Marinha Matemática 2009/2010 7º Ano Síntese dos conteúdos Números e operações 1 Múltiplos e divisores Múltiplo de um número é todo o número que se obtém multiplicando o número dado

Leia mais

RESOLUÇÕES DA 2ª FASE

RESOLUÇÕES DA 2ª FASE Res RESOLUÇÕES DA 2ª FASE MODALIDADE PROGRAMAÇÃO QUESTÃO 01. Primeiramente, transforma-se o número 156 em binário. Uma das formas para isso, seria fatorá-lo. Onde teriamos que 156 = 2 3 * 3 * 13 = 2 3

Leia mais

Aula 8 Comandos de Seleção

Aula 8 Comandos de Seleção Aula 8 Comandos de Seleção Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira ronaldo.co@ufu.br Anilton Joaquim da Silva anilton@ufu.br 1 Introdução Até agora não aprendemos a dizer

Leia mais

Binário Decimal

Binário Decimal Sistema Binário Existem duas maneiras de representar uma informação eletrônica: analogicamente ou digitalmente. Uma música qualquer, por exemplo, gravada em uma fita K-7 é uma forma analógica de gravação.

Leia mais

LINGUAGEM C: COMANDOS DE REPETIÇÃO

LINGUAGEM C: COMANDOS DE REPETIÇÃO LINGUAGEM C: COMANDOS DE REPETIÇÃO Prof. André Backes ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição permite que uma sequência de comandos seja executada repetidamente, enquanto determinadas condições

Leia mais

EMGI Programação. Ficha 7 Resolução. Programação 1 Calcular a hipotenusa de um triângulo rectângulo, sabendo as medidas dos seus catetos:

EMGI Programação. Ficha 7 Resolução. Programação 1 Calcular a hipotenusa de um triângulo rectângulo, sabendo as medidas dos seus catetos: Programação 1 Calcular a hipotenusa de um triângulo rectângulo, sabendo as medidas dos seus catetos: variáveis cat1, cat2, hipotenusa : real; escrever ( Escreva a medida do cateto 1: ); ler (cat1); escrever

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 5 Estruturas de Repetição Profa. Marina Gomes marinagomes@unipampa.edu.br 26/04/2017 Engenharia de Computação - Unipampa 1 Aula de Hoje Estrutura de repetição Comando for

Leia mais

7. Introdução à Complexidade de Algoritmos

7. Introdução à Complexidade de Algoritmos 7. Introdução à Complexidade de Algoritmos Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 7. Introdução à Complexidade de Algoritmos Estruturas de Dados 1 / 1 Análise de Algoritmos

Leia mais

Desenho e Análise de Algoritmos CC /2018. Folha 1 - Revisão: Escrita de algoritmos em pseudo-código e verificação de correção

Desenho e Análise de Algoritmos CC /2018. Folha 1 - Revisão: Escrita de algoritmos em pseudo-código e verificação de correção Departamento de Ciência de Computadores FCUP Desenho e Análise de Algoritmos CC2001 2017/2018 Folha 1 - Revisão: Escrita de algoritmos em pseudo-código e verificação de correção Descrição da linguagem

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição Disciplina: Algoritmos e Programação Luciano Moraes Da Luz Brum Universidade Federal do Pampa Unipampa Campus Bagé Email: lucianobrum18@gmail.com Horários de atendimento: (outros

Leia mais

Programação Universidade da Beira Interior Departamento de Informática 2007/08

Programação Universidade da Beira Interior Departamento de Informática 2007/08 Programação Universidade da Beira Interior Departamento de Informática 1. Faça o fluxograma e o respectivo programa que resolva equações de 2º grau (ax 2 +bx+c=0). O programa deverá pedir ao utilizador

Leia mais

Parte I - Expressões lógicas e operadores

Parte I - Expressões lógicas e operadores Lista de Exercícios de Algoritmos e Laboratório de Programação - 01 Parte I - Expressões lógicas e operadores 1. Sendo A=3, B=7 e C=4, informe se as expressões abaixo são verdadeiras ou falsas. a) (A+C)

Leia mais

Laboratório 5 Estruturas de Selecção

Laboratório 5 Estruturas de Selecção Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Laboratório 5 Estruturas de Selecção Disciplina de Introdução à Programação Ano Lectivo 2006/2007 DSI

Leia mais

Capítulo 2. Representação de números em vírgula flutuante

Capítulo 2. Representação de números em vírgula flutuante Capítulo 2 Representação de números em vírgula flutuante Adaptado dos transparentes das autoras do livro The Essentials of Computer Organization and Architecture Números inteiros Os computadores foram

Leia mais

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

Introdução à Lógica de Programação Introdução à Lógica de Programação Não estamos aqui para sobreviver e sim para explorar a oportunidade de vencer adquirindo o saber! (Autor Desconhecido) A lógica é a arte de pensar correctamente e, visto

Leia mais

Aula 6: Aritmética em Bases Não Decimais

Aula 6: Aritmética em Bases Não Decimais Aula 6: Aritmética em Bases Não Decimais Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Aritmética em Bases Não Decimais FAC 1 / 35 Introdução

Leia mais

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012 Capítulo 5: Repetições Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Construção de laços Uma das principais características de um computador é sua capacidade para realizar cálculo e

Leia mais

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas) Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 Lista Obrigatória 02 - Prof. Rafael Oliveira (Deve ser entregue em PDF via Moodle: Escolha apenas 5 exercícios para entrega) Exercício 01

Leia mais

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 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?

Leia mais

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..

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

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 7 04/2014 Zeros reais de funções Parte 1 Objetivo Determinar valores aproximados para as soluções (raízes) de equações da

Leia mais

Universidade Federal do ABC Programação Estruturada Fabrício Olivetti França Lista de Exercícios 02

Universidade Federal do ABC Programação Estruturada Fabrício Olivetti França Lista de Exercícios 02 1 Objetivos da lista Universidade Federal do ABC Programação Estruturada Fabrício Olivetti França Lista de Exercícios 02 Esta lista de exercícios tem como objetivo introduzir funções na linguagem C. Como

Leia mais

Programação de Computadores I

Programação de Computadores I Programação de Computadores I 2018.2 Problema 1: Bissexto Determinar se cada ano digitado é bissexto até encontrar um 0. Um ano é bissexto se é múltiplo de 400 ou é múltiplo de 4, exceto se for múltiplo

Leia mais

Linguagem C Estruturas de Repetição

Linguagem C Estruturas de Repetição Linguagem C Estruturas de Repetição Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Janeiro de 2018 Unidade 07 Linguagem C Estruturas de Repetição 1/18

Leia mais

Teoria de erros. Computação Teoria de erros Porquê?

Teoria de erros. Computação Teoria de erros Porquê? Teoria de erros Computação 003-004 Teoria de erros Porquê? Exemplos 0.^0 -.e-0= 5.698788845643e-06 f(x,y)=333.75y 6 +x (x y -y 6 -y 4 -)+5.5y 8 +x/(y) Matlab f(7767,33096) y -.806e+0 (Matlab) Maple f(7767,33096)

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 2

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

Leia mais

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM PROGRAMAÇÃO DE COMPUTADORES I BCC701 2017-2 Aula Prática 05 Analise os códigos abaixo para o cálculo das médias aritméticas de dois ou mais números quaisquer. Média Aritmética de 2 Números n = 2; media

Leia mais

PROGRAMAÇÃO DE COMPUTADORES I - BCC Vetores e matrizes

PROGRAMAÇÃO DE COMPUTADORES I - BCC Vetores e matrizes PROGRAMAÇÃO DE COMPUTADORES I - BCC701-2014-01 Vetores e matrizes Exercício 1 Implemente uma função chama MEDIA que retorne a média dos valores armazenados em um vetor de números. Em seguida implemente

Leia mais

Engenharia de Software

Engenharia de Software Sumário Engenharia de Software Modelos de desenvolvimento de software Fases de desenvolvimento Programação modular Abordagem top-down e bottom-up Linguagens de programação: Compilação / Interpretação Aplicação

Leia mais

Dispor e organizar folhas de cálculo

Dispor e organizar folhas de cálculo Dispor e organizar folhas de cálculo O Excel fornece várias funcionalidades para o ajudar a trabalhar e visualizar com as folhas de cálculo. Fixar linhas e colunas Pode fixar (ou bloquear) linhas e colunas

Leia mais

Estrutura de Exclusão Múltipla

Estrutura de Exclusão Múltipla Estrutura de Exclusão Múltipla Lista de Exercícios 03 Algoritmos e Linguagens de Programação Professor: Edwar Saliba Júnior IMPORTANTE: Lembre-se! As respostas apresentadas a seguir não são únicas. Ou

Leia mais

Comandos de Repetição

Comandos de Repetição Programação de Computadores I UFOP DECOM 2013 2 Exercícios de Revisão Comandos de Repetição Sumário 1 Testes de Compreensão 1 2 Exercícios de Programação 2 1 Testes de Compreensão 1 Determine o valor de

Leia mais