Cap Escrever uma função que aceite como parâmetro um número inteiro e retorne o número que corresponde a trocar os dígitos do parâmetro (por exe

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

Ficheiros binários 1. Ficheiros binários

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

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

Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem Python

Instruções de repetição

Aula 6: Entrada e Saída

Instruções de repetição

Fundamentos de Programação Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte 15 de maio de 2018.

DCC001 - Programação de Computadores. Lista de Exercícios 02 - Estruturas de Dados Homogêneas (Vetores).

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

Folha Prática Tipos de dados estruturados (vetores e marizes) 1. Tipos de dados estruturados (vetores e matrizes)

BCC201 Introdução à Programação ( ) Prof. Reinaldo Silva Fortes. Prática 04 Estruturas de Dados Homogêneas Vetores

Exercícios: Vetores e Matrizes

Exercícios de Repetição

9. imprimir o fatorial do número 10. imprimir o sucessor e o anterior de um número lido 11. Imprimir se um número é primo ou não 12. Imprimir os 100 p

Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C

Matemática Computacional

Programação de Computadores 1 Lista 2. Prof. Álvaro A. F. de Souza DECSI - ICEA - UFOP

UNIVERSIDADE FEDERAL DE PERNAMBUCO Lista de Exercícios / Cálculo Numérico 1ª Unidade

Lista de Exercícios Algoritmos Vetores. 10) Escreva um algoritmo em PORTUGOL que armazene em um vetor todos os números

EXERCÍCIOS DE RECORDAÇÃO DE ALGORITMOS

CPAS FINAL. Colégio Internato dos Carvalhos. 3 de Maio 2007

BAC004 Informática Teórica T2 Professora: Fabiana Costa Guedes Lista 05 Vetores e Matrizes Vetores

Os exercícios abaixo podem ser resolvidos sob a forma de algoritmos ou programas Pascal

1. Programação - Linguagem C /20

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

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

4ª Lista de Exercícios de Programação I

Prática 10 - Funções

Exercícios Repetição

BCC201 Introdução à Programação ( ) Prof. Reinaldo Silva Fortes. Prática 05 Modularização

Algoritmos e Estruturas de Dados. Grupo 1

Exercícios: Recursão

Laboratório de Programação A Exercícios sobre vetores e matrizes

4ª Lista de Exercícios de Programação I

LISTA DE EXERCÍCIOS - ro. 04

Lista de Exercícios 06 Modularização (Procedimentos e Funções)

LINGUAGENS DE PROGRAMAÇÃO

BCC701 Programação de Computadores I Lista de Exercícios 05: Funções Definidas pelo Usuário

ESTRUTURAS DE REPETIÇÃO - PARTE 2

Ficheiros binários 1. Ficheiros binários

Programação das Aulas

Estruturas de Repetição

A. Equações não lineares

Faculdades Integradas Rui Barbosa Programação II Prof. Marcos Antonio Estremote. Exercícios com Vetores e Matrizes

UNIVERSIDADE FEDERAL DO PARANÁ DISCIPLINA DE MÉTODOS NUMÉRICOS 2º SEMESTRE 2004 Professora Aurora T. R. Pozo 1ª LISTA DE EXERCÍCIOS

imprimir seus quadrados.

GEQ Prof. Paulo R. Coelho. Lista para prova

Vetores, Matrizes e Gráficos

Desenho de algoritmos

Lista de exercícios 1 (Cast)

CADERNO DE EXERCÍCIOS ALGORITMOS

Lista de Exercícios 03a Repetição. 1) Escreva um programa que imprima todos os números inteiros de 0 a 50.

Programação de Computadores I BCC 701 Lista de Exercícios Módulo

EXERCÍCIOS DE ESTRUTURA DE REPETIÇÃO - LABORATÓRIO

+ + 3) Fazer um programa, em C++, que calcule e escreva a soma dos 50 primeiros termos da seguinte série:

Lista de Exercícios 5

Lista de Exercícios Estrutura de Repetição

Exercícios de ANÁLISE E SIMULAÇÃO NUMÉRICA

Lista de Exercícios de Algoritmos - 04 Para cada um dos exercícios abaixo, faça um programa (em laboratório) que teste a função.

Lista de exercícios de MAT / I

Programação imperativa

Métodos Computacionais em Física

Lista de Exercícios 03a Algoritmos Repetição. 1) Escreva um algoritmo em PORTUGOL que imprima todos os números inteiros de 0 a 50.

MATRIZ DE REFERÊNCIA-Ensino Médio Componente Curricular: Matemática

Lista de Exercícios 02

Questão 1 Exemplo de execução 1 (com N=6): Exemplo de execução 2 (com N=4):

1 Cada linha do triângulo é uma seqüência de fibonacci.

Exercícios de programação

Lista de Exercícios 1

CMP Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira

1ª LISTA DE EXERCÍCIOS

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

Universidade Federal do ABC MCTA Programação Estruturada 2018.Q3

Estruturas de Repetição WHILE e DO- WHILE

Programação de Computadores I 2016 Prof. Marcos UNESP/FEG/DMA

Preparar o Exame Matemática A

UNIFEI - UNIVERSIDADE FEDERAL DE ITAJUBÁ PROVA DE CÁLCULO 1

TÉCNICO DE INFORMÁTICA - SISTEMAS

Exercícios sobre algoritmos

Elementos Básicos de Programação

Alocação dinâmica. PUC-Rio, , INF H: Programação 2 Lista 1: Alocação dinâmica, recursão e estruturas

>>> conta_vogais( testevogais.txt ) { a : 36, u : 19, e : 45, i : 16, o : 28}

Lista de Exercícios 03a Algoritmos Repetição

Elementos Básicos de Programação

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:

Lista de Exercícios de Programação Orientada a Objetos

Álgebra Linear. Curso: Engenharia Electrotécnica e de Computadores 1 ō ano/1 ō S 2006/07

MATEMÁTICA A - 12o Ano N o s Complexos - Equações e problemas Propostas de resolução

Introdução à Computação

Lógica de Programação Módulo I Prof.: Ricardo Lokchin. Fazer os exercícios abaixo na Linguagem C ou em ALGORITMOS.

Após consultar o material de apoio, a bibliografia sugerida ou referências adicionais, responda às questões a seguir:

VETORES Motivação AULA 19

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

Transcrição:

Cap 1 - Escreva um programa que leia um número real e escreva, separadamente, a sua parte inteira e a sua parte fraccionária. - Escreva um programa que leia um número real e positivo e o converta para um inteiro por arredondamento, escrevendo o resultado. 3 - Escreva um programa que determine o perímetro e área de uma circunferência cujo raio é especificado pelo utilizador. Considere π = 3.1416. 4 - Escreva um programa que leia um número inteiro positivo constituído por, no máximo, dois algarismos, e escreva em linhas separadas os caracteres que representam os dois algarismos do número. (Note que o código de '0' é (int) '0'.) 5 - Escreva um programa que leia uma letra maiúscula e escreva a minúscula correspondente. (Sugestão: note que a diferença de códigos entre as minúsculas e maiúsculas se pode representar por (int) 'a' - (int) 'A'.) 6 - Construa um programa que leia um número inteiro e escreva os valores dos seus bytes constituintes. Recorra a apontadores. O programa deve também efectuar a verificação do resultado da decomposição em bytes. (Lembre-se que o valor do byte correspondente a um carácter c é (int)c.) Cap 3 1 - Escreva um programa que converta informação quantitativa em informação qualitativa sobre altura das pessoas. Utilize as seguintes regras. Uma pessoa com menos de 1.3 m é baixíssima. Uma pessoa com altura entre 1.3 m e 1.6 m é baixa. Uma pessoa com altura entre 1.6 m e 1.75 m é mediana. Uma pessoa com altura entre 1.75 m e 1.9 m é alta. Uma pessoa com altura superior a 1.9 m é altíssima. - Construa um programa que leia um número inteiro positivo e escreva um certo número de asteriscos no ecrã conforme o valor lido. Se o valor estiver no intervalo [0,10[ escreve um asterisco, se estiver em [10,0[ escreve dois asteriscos, etc. 3 - Pretende-se determinar o capital acumulado ao fim de n anos de um capital inicial c i actualizado a uma taxa de juro anual constante, j. Os valores de c i e j são especificados pelo utilizador. Escreva um programa com esta finalidade. 4 - Escreva um programa que leia uma sequência de números inteiros terminada por dois números consecutivos iguais. O programa escreve, então, a média dos números da sequência. 5 - Escreva um programa que leia uma sequência de números inteiros até entrar 0 ou atingir um valor máximo de valores lidos, nmax, a especificar. Nesse momento o programa deve escrever a média, o máximo e o mínimo dos números lidos. 6 - Escreva um programa que leia um número inteiro e calcule a soma dos seus dígitos. 7 - Calcular, com um programa apropriado, o valor das seguintes séries, com n a especificar pelo utilizador: 1 1 1 Q ( n) = 1 + + + K + 4 9 n 1 1 1 A( n) = 1 + K + ( 1) 3 4 n+ 1 1 n

Cap 4 1 - Escrever uma função que aceite como parâmetro um número inteiro e retorne o número que corresponde a trocar os dígitos do parâmetro (por exemplo, entra 579 e sai 975; ver Programa 3.11). - Use a função anterior para construir um programa que leia números inteiros sucessivos determinando se cada número lido é capicua. A leitura termina quando se especifica 0. 3 - O seno de x pode ser calculado usando o desenvolvimento em série de Taylor: 3 5 7 n 1 x x x n+ 1 x sen( x) = x + +... + ( 1), n = 1,,3, 3! 5! 7! (n 1)! Escreva e teste uma função que implemente o seno de x usando este desenvolvimento em série, até um termo tal que o seguinte tem um valor abaixo de uma tolerância especificada. (O teste do programa deve ser feito por comparação com a função prédefinida sin(x).) 4 - Escreva um programa que leia caracteres sucessivos a partir do teclado até especificar '.'. Para cada carácter lido o programa deverá escrever o carácter cujo código é o do lido incrementado de k unidades. O valor de k é especificado pelo utilizador antes de iniciar a entrada da sequência de caracteres. Defina uma função apropriada para a determinação do carácter a escrever. 5 - Implementar uma função para o cálculo de a x (parábola), que tem como parâmetros de entrada o valor a e o valor do ponto x. Utilizar a função num programa que apresenta os valores da função num determinado intervalo definido pelo utilizador. O utilizador deve também definir o incremento a utilizar nesse cálculo. 6 - Escrever uma função que simule o lançamento de um dado. Esta função não tem qualquer parâmetro de entrada e retorna 1,, 3, 4, 5 ou 6. Utilize essa função num programa que simula n lançamentos de um dado (n definido pelo utilizador) e apresenta no final quantas vezes saiu a face seis. Cap 5 1 - Escrever e testar uma rotina que troque os elementos de um vector em posição simétrica face ao seu centro. Assim, por exemplo, 0, 3, 5,, 1, 5,, 1 fica 1,, 5, 1,, 5, 3, 0. - Escrever um programa que determine o histograma, média e desvio padrão de um vector de reais, x. O histograma representa, num vector apropriado, o número de ocorrências dos n elementos de x em cada um de k intervalos de largura (max(x) min(x))/k. O desvio padrão, s, é uma medida de dispersão dos elementos de x em torno da média, x, e é n ½ definido como s = ( = ( x ) /( 1)) i 1 i x n. 3 - Usar a função rand para gerar n valores no intervalo [0, 1], com n a especificar pelo utilizador. Seguidamente, determinar o histograma dos valores gerados, usando a rotina do problema anterior, para k intervalos k 10. (Se a distribuição dos números for uniforme o histograma é quase horizontal para n elevado.) 4 - Escreva e teste um procedimento que elimine os elementos repetidos de um vector ordenado de inteiros. 5 - Escreva e teste uma função que determina se uma string é nula. 6 - Pretende-se substituir numa string a ocorrência de cada dígito decimal pelo seu nome em português. Escrever um programa com este objectivo. (Exemplo: dada a string Havia 4 valores, especificamente 5, 9, 3 e 0. O resultado final tinha 10 dígitos queremos obter

Havia quatro valores, especificamente cinco, nove, três e zero. O resultado final tinha dez dígitos.) 7 - Implementar e testar uma rotina que inverte a ordem dos caracteres de uma string. Usar a rotina para determinar se uma dada string é capicua. 8 - Escrever e testar uma função que verifique se uma matriz quadrada N N pode representar uma matriz de distâncias entre pares de N pontos. Para isso a matriz deve obedecer às seguintes condições: a) os elementos da diagonal principal são nulos; b) a matriz é simétrica; c) o valor do elemento (i, j) não excede a soma dos valores dos elementos (i, k) e (k, j), para qualquer k. Cap 7 1 - Escrever e testar uma biblioteca de rotinas para operar com polinómios. A biblioteca deve conter as seguintes rotinas: leitura e escrita de um polinómio; adição de polinómios; valor de um polinómio para um certo valor da variável independente. - Construir uma biblioteca disponibilizando as seguintes rotinas de operações com vectores de inteiros unidimensionais: leitura; escrita; somatório. Com essa biblioteca escrever um programa que leia uma matriz M N de 0's e 1's e determine os vectores que contêm a soma de 1's ao longo das linhas e das colunas da matriz. 3 - Escrever e testar uma rotina recursiva que implemente a função factorial. Lembre-se que factorial(n) = nfactorial(n - 1). 4 - Escrever e testar uma rotina recursiva que implemente a função x n para x real e n inteiro. 5 - Escrever e testar uma função recursiva para calcular o máximo divisor comum (mdc) entre dois números inteiros, notando que mdc(x, y) = x se y = 0, senão mdc(x, y) = mdc(y, mod(x, y)). (mod(x, y) é o resto da divisão de x por y.) Cap 8 1 - Escrever e testar uma rotina que para uma data completa de um certo dia (registo), forneça a data do dia k dias à frente ou atrás do dia especificado. - Os números complexos são representados por pontos no plano, designando-se uma componente (normalmente segundo a coordenada horizontal) por parte real, e a outra componente por parte imaginária do complexo. Escrever e testar uma biblioteca de rotinas para operar com complexos. A biblioteca deve conter rotinas de leitura e escrita de complexos, soma de complexos, determinação do módulo e argumento angular de um complexo. Notas: um complexo z com componentes x (parte real) e y (parte imaginária) escreve-se z = x + iy; dados os complexos u = a + ib e v = c + id a soma é u + v = (a + c) + i(b + d); o módulo e argumento angular de z correspondem ao módulo e argumento angular do vector da origem a (x, y). 3 - Determinar as soluções de equações do tipo "ax^ + bx + c = 0". O programa deve usar um registo para os coeficientes e para as raízes, devendo estar preparado para publicar os valores das raízes, quer sejam reais quer sejam complexas. 4 - Uma empresa de electrodomésticos pretende informatizar os dados relativos aos artigos de que dispõe para venda. a) Defina um registo, artigo, adequado à representação de um artigo, contendo a seguinte informação: designação do artigo (televisor, rádio, máquina de lavar

roupa, etc.), marca e modelo (por exemplo, Blabla S-30), fornecedor, preço, quantidade disponível em armazém. b) Escreva uma função que leia um elemento do tipo artigo, passado por parâmetro. c) Considere que a informação sobre os artigos da empresa, em número n < 10000, foi lida para um vector global de elementos do tipo artigo. Escreva uma função que retorne o número total de artigos de uma certa marca e modelo a especificar. d) Implemente um procedimento que ordene todos os produtos em stock pela sua quantidade. e) Implemente um procedimento que liste todos os produtos cuja existência em stock é inferior a 10 unidades Cap 9 1 - Escreva e teste um programa que leia uma sequência de números inteiros positivos, terminada com zero, e a guarde num vector v dimensionado durante a execução do programa. Seguidamente, o programa deverá percorrer os elementos do vector e substituilos pela média (v[i - 1] + v[i] + v[i + 1])/3. Nas extremidades a média é de dois elementos. - Escreva e teste um programa que leia um vector com um número de elementos, n, a especificar pelo utilizador. Seguidamente, expandir o vector para n-1 elementos, criando elementos extra entre os já existentes e preenchidos com valores interpolados linearmente a partir dos valores que os rodeiam. 3 - Pretende-se obter um vector de strings com o máximo de 100 strings, lidas do teclado, cada uma com menos de 80 caracteres. Escreva um programa para este efeito, tal que no final se disponha de um vector que contém apenas strings não repetidas. 4 - Pretende-se uma rotina que crie um vector de números reais contendo apenas valores lidos pelo teclado até o utilizador entrar uma entrada correspondente à string nula. Testar a rotina. Cap 10 1 - Suponha que as linhas de um ficheiro de texto contêm a designação de uma tarefa realizada durante um mês, seguida de quantos trabalhadores estiveram envolvidos nessa tarefa em cada um dos dias úteis do mês. Um valor negativo significa que a tarefa foi terminada. Exemplo: Polimento 0 1 1 3-1 significa que a tarefa Polimento envolveu 0 trabalhadores no 1º dia útil do mês, 1 no ª dia útil, etc., e terminou no 8º dia útil. Escrever e testar um programa que leia o ficheiro e calcule: qual o dia em que se trabalharam mais tarefas; qual o dia em que se terminaram mais tarefas; qual a tarefa que ocupou mais trabalhadores. - Pretende-se obter estatísticas de ocorrências de letras em textos na língua portuguesa. Para tal, criar um programa que leia um ficheiro de texto e obtenha médias de ocorrências de todas as letras do alfabeto. Ter em conta que todas as letras devem ser convertidas para o mesmo caso (maiúscula ou minúscula), todas as vogais acentuadas devem ser convertidas para não acentuadas e todas as cedilhas devem ser retiradas dos cês com cedilha.

3 - Uma revista musical organiza, semanalmente, uma pesquisa de opinião sobre a popularidade de discos. Os resultados da pesquisa são guardados num ficheiro de texto, discos.txt, com a seguinte informação por linha: nome do disco, nome do autor, discos vendidos. Escrever um programa que leia esta informação para um vector de registos e escreva os discos que têm vendas superiores a um certo valor. 4 - Uma empresa possui representantes em várias cidades e pretende implantar a sua sede numa delas, de acordo com o critério: o custo anual das deslocações dos representantes das várias cidades à cidade sede deverá ser o menor possível. a) Escrever um programa que crie um ficheiro binário contendo a seguinte informação: nome da cidade; coordenadas da cidade (x, y); número de deslocações por ano dos representantes da cidade. b) Completar o programa por forma a ler o ficheiro binário e determinar a cidade a ser escolhida como sede. 5 - Considere um programa de gestão de stocks em que cada componente do stock é identificado pelo nome, número de ordem e preço. a) Defina um tipo de registo, tstock, adequado à representação de um componente do stock e implemente uma rotina que leia um elemento deste tipo (passado por parâmetro). b) Implemente um procedimento que escreva componentes do stock num ficheiro de texto, stock.dat, até o utilizador especificar um número de ordem igual a zero.