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

Documentos relacionados
Ficheiros binários 1. Ficheiros binários

Ficheiros binários 1. Ficheiros binários

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

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

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

GEQ Prof. Paulo R. Coelho. Lista para prova

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

LISTA DE EXERCÍCIOS - ro. 04

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

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

1. Programação - Linguagem C /20

Tabelas de dispersão/hash

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

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014

INF 1620 P1-04/10/03 Questão 1 Nome:

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

Programação de Computadores (2014/15) 11 a folha de Problemas

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

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

Departamento de Informática PUC-Rio INF Estruturas de Dados Lista 2 Completa (Gerada em 8 de maio de 2006)

INF P4-12/12/09 Questão 1 Nome:

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

Programação I A Linguagem C. Prof. Carlos Alberto

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

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 à Programação em C Input / Output

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

Exercícios Repetição

Introdução à Programação

Apontadores/ponteiros

Programação das Aulas

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2

1ª Lista de Exercícios

Aula 11 Oficina de Programação Estruturas. Profa. Elaine Faria UFU

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

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

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

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

INF 1620 P4-06/12/02 Questão 1 Nome:

Algoritmos e Programação

LINGUAGENS DE PROGRAMAÇÃO

INF 1620 P4 30/06/07 Questão 1 Nome:

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

Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007. Programação 2

Linguagem de Programação

Lista de Exercícios revisão de Estruturas de Programação, Funções, Vetores e Classes

LISTA DE EXERCÍCIOS 2

Ficheiros. Capítulo 8

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

1.2 Organização de directórios e ficheiros A linha de comandos

CEFAPA Aplicação Informática

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

a) Implemente uma função que retorne uma aproximação do valor de π, de acordo com a F órmula de Leibniz: ( 1)

Lista de Exercícios STRING LINGUAGEM DE PROGRAMAÇÃO PROF. EDUARDO SILVESTRI.

Exercícios: Arquivos

1ª LISTA DE EXERCÍCIOS

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.

Linguagem C. André Tavares da Silva.

1/24 FICHEIROS DE TEXTO

DEPARTAMENTO DE ENGENHARIA ELECTROTÉCNICA

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

Inteiro Os dados do tipo inteiro são quantidades numéricas inteiras. Os dados deste tipo podem ser constantes, variáveis, funções e expressões.

INF 1620 P1-18/09/04 Questão 1 Nome:

INF 1620 P4 11/12/06 Questão 1 Nome:

cadeia de caracteres (string) INF Programação I Prof. Roberto Azevedo

Aula 2 POO 1 Prática. Profa. Elaine Faria UFU

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída

Introdução à Programação. Strings

Variáveis Compostas Homogêneas Vetores

SISTEMAS OPERATIVOS I

INF 1620 P4-13/12/01 Questão 1 Nome:

Copiar para o ficheiro ArvoreBinaria.h e adaptar as funções associadas às operações sobre árvores binárias (3.1 a 3.12)

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

char* prefixo (char* str, int n);

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

Lista de exercícios 1 (Cast)

4ª Série de Exercícios Variáveis Compostas Homogêneas 1. Faça um algoritmo que leia, via teclado, 10 valores do tipo inteiro e os guarde na memória.

C/C++; biblioteca stdio

Objetivo. Compreender a definição e dominar a implementação de ponteiros em C. Dominar a manipulação de arquivos

Linguagem C: Introdução

Programação. MEAer e LEE. Manipulação de ficheiros de texto. Bertinho Andrade da Costa. Instituto Superior Técnico. 2010/2011 1º Semestre

Disciplina de Algoritmos e Programação

Faculdade de Computação

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.

Apêndice B. Cadeias de Caracteres (Strings)

Sumário. Ficheiros. Ficheiros

Estruturas de Repetição

AULA 13 PROCEDIMENTOS. Disciplina: Algoritmos e POO Professora: Alba Lopes.

1 - Ambiente de desenvolvimento

Ficha de trabalho nº3

Programação Básica. Estrutura de um algoritmo

1. Introdução. Profs. gerais (também definidos em. departamento/subdepartamento dos grupos

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2002/ Valores

Métodos Computacionais em Física

Programação de Computadores II Lista de Exercícios 01

Programação: Vetores

Curso de Formação O uso pedagógico do Excel

Transcrição:

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. Deve mostrar o número de vezes que a palavra existe no ficheiro. Nota: use o ficheiro de texto texto.txt que se encontra na página web da disciplina. 3. Implementar um programa que conte o número de linhas de um ficheiro, usando a) fgetc, b) fgets. 4. Implementar: a) Uma função que permita copiar um ficheiro para um outro. b) Uma função que anexe um ficheiro ao final de outro. 5. Considere que o ecrã tem 25 linhas. Implementar um programa que leia um ficheiro de texto (nome passado via linha de comandos) usando fgets e o escreva no terminal de forma a que o texto do ficheiro seja visto um um ecrã de cada vez. O programa deve esperar que o utilizador prima <enter> para mostrar o ecrã seguinte. Esta funcionalidade deve ser implementada sob a forma de função. 6. Suponha que as linhas de um ficheiro 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 2 2 1 3 2-1 significa que a tarefa Polimento envolveu 0 trabalhadores no 1º dia útil do mês, 1 no 2ª 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 envolveram mais trabalhadores nas tarefas; qual o dia em que se terminaram mais tarefas; qual a tarefa que ocupou mais trabalhadores. Nota: usar o ficheiro tarefas.txt que se encontra na página web da disciplina. 7. Pretende-se obter estatísticas de ocorrências de letras em textos na língua portuguesa. Para tal, criar um programa que leia o ficheiro de texto texto.txt (encontra-se na página web da disciplina) 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. 8. Uma revista musical organiza, semanalmente, uma pesquisa de opinião sobre a popularidade de discos. Os resultados da pesquisa estão guardados no ficheiro discos.txt (encontra-se na página web da disciplina), com a seguinte informação por linha: nome do autor, nome do

Ficheiros de texto 2 disco, discos vendidos. Escrever um programa que leia esta informação para um vetor de registos e escreva os discos que têm vendas superiores a um certo valor. 9. 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 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 e determinar a cidade a ser escolhida como sede. 10. Implementar um programa que: a) Se se chamar ordem devolve a maior palavra (usando a ordem alfabética rato é maior que elefante ) dos argumentos fornecidos. Tome esta opção como sendo a opção por omissão; b) Se se chamar conta devolve o número de argumentos com que foi invocado; c) Se se chamar lista manda para a sa ıda standard os seus argumentos. 11. Escreva um programa que permita construir uma lista de todas as palavras contidas num ficheiro, assim como o número de ocorrências de cada uma delas. 12. Escreva um programa que solicite um valor inteiro ao utilizador e apresente os múltiplos desse valor que estiverem presentes no ficheiro de texto multiplos.txt. 13. Implementar um programa que simule o funcionamento do comando wc do sistema Unix com a restrição que as opções aceites são -l, -w e -c para respectivamente linhas, palavras e caracteres. Assume-se que a entrada é a entrada standard se nenhum ficheiro for indicado na linha de comando. 14. Considere o ficheiro de texto dados1.txt (encontra-se na página web da disciplina) que deverá conter uma pauta com a seguinte informação (em 4 linhas seguidas): número do aluno, nome do aluno, classificação da frequência, classificação do exame. Escreva um programa que crie outro ficheiro, contendo o nome do aluno e a classificação final, correspondente à melhor das duas notas. Deve ainda filtrar os alunos com classificação final igual ou superior a 10. 15. 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 função que leia um elemento deste tipo (passado por parâmetro). b) Implemente uma função que escreva componentes do stock num ficheiro stock.txt até o utilizador especificar um número de ordem igual a zero.

Ficheiros de texto 3 16. Considere o ficheiro de texto dados2.txt (encontra-se na página Web da disciplina). Os dados guardados neste ficheiro são estruturas do seguinte tipo: struct { int BI; char nome[100]; float peso, altura; }; Utilizando funções implemente um programa que: a) Liste o conteúdo do ficheiro. b) Solicite ao utilizador uma letra e copie todos os registos cujo campo nome comece por essa letra para o ficheiro de texto $_inicial.txt (onde $ representa a letra escolhida pelo utilizador). c) Apresente o campo nome para o registo com o valor de peso mais elevado. d) Acrescente um novo registo (campos introduzidos pelo utilizador) ao ficheiro de texto dados2.txt. 17. Altere o programa anterior de forma a que o programa permaneça em ciclo e, através dum menu, o utilizador possa escolher qual a tarefa a realizar. 18. Implementar um programa que use uma estrutura que permita guardar o nome, a morada e o número de telefone duma pessoa. Deve permitir, através de um menu, ler dados para uma estrutura desse tipo que sejam automaticamente guardados num ficheiro. O programa deve permitir mostrar o conteúdo do ficheiro da seguinte forma: ********** Registo 1 Nome : Morada : Telefone : ********** Registo 2 Nome : Morada : Telefone :... Assim, o menu deve ter as seguintes opções: inserir dados, mostrar dados, terminar. O menu, a inserção de dados e a exibição dos dados devem ser implementados usando funções.

Ficheiros de texto 4 19. Altere o programa anterior de forma a que seja possível: a) Alterar dados dum registo, indicando o número do registo a alterar; b) Apagar um registo, indicando o número do registo a apagar (tem de acrescentar um campo à estrutura original que lhe indique se o registo é válido ou foi apagado); c) Ver apenas um registo do ficheiro, indicando o seu número. Implemente estas funcionalidades sob a forma de funções. Devem estar disponíveis através do menu do programa. 20. Para se representar as medições de uma dada experiência de laboratório, usa-se a estrutura registo definida da seguinte forma: struct registo { }; int ref; double var; int tm; em que o campo ref representa o número de referência da medição, var e tm representam os valores medidos em duas variáveis da experiência, respetivamente. Considere que dispõe de ficheiros de texto (disponíveis na página web da disciplina) cujo conteúdo é constituído por uma ou mais estruturas registo. A informação existente nos ficheiros representa medições de uma dada experiência de laboratório. Implementar um programa que: a) aceite um parâmetro na linha de comando que representa o nome do ficheiro de entrada com o formato descrito; b) determine a média dos valores de cada uma das variáveis da experiência; c) determine a medição com o melhor (menor) coeficiente de aproximação, sendo este dado pela expressão: 1 var mvar mvar tm mtm mtm, em que mvar e mtm representam as médias calculadas anteriormente e que se assume serem diferentes de zero; d) imprima as médias calculadas e os dados da medição com o melhor coeficiente de aproximação. 21. Considere que o ficheiro de texto medicoes01.txt possui informação representada por uma ou mais estruturas do tipo registo (exercício 20). Implementar um programa que: a) aceite um parâmetro na linha de comando que represente o nome de um ficheiro de entrada com o formato acima descrito; b) imprima no ecrã os registos constantes nesse ficheiro, em modo textual, na forma de uma tabela e de acordo com o formato apresentado no ficheiro fbin.txt.

Ficheiros de texto 5 22. Considere que o ficheiro de texto medicoes02.txt possui informação representada por uma ou mais estruturas do tipo registo (exercício 20). Implementar um programa que: a) forneça dois ou mais valores pela linha de comando, sendo que o primeiro representa o nome do ficheiro de entrada, com o formato acima descrito, e os restantes são números de ordem de registos (o primeiro registo tem o número de ordem 1); b) imprima no ecrã os registos pretendidos. 23. As notas dos alunos da disciplina de Programação estão guardadas no ficheiro de texto "dados3.txt". Cada linha deste ficheiro contém a seguinte informação: número de aluno e nota final obtida (por esta ordem). Implementar um programa em C para determinar a nota média obtida na disciplina. Para tal, construir e usar as seguintes funções: a) função para ler do ficheiro um vetor de inteiros com as notas dos alunos. b) função para calcular a soma das notas obtidas pelos alunos (usar o vetor). int SomaNotas (int V[], int N); 24. As notas dos alunos da disciplina de Programação estão guardadas no ficheiro de texto "dados3.txt". Cada linha deste ficheiro contém a seguinte informação: número de aluno e nota final obtida (por esta ordem). Implementar um programa em C para determinar a nota média obtida na disciplina pelos alunos aprovados. Para tal, construir e usar as seguintes funções: a) função para ler do ficheiro um vetor de inteiros com as notas obtidas pelos alunos. b) função para calcular a soma das notas dos alunos aprovados (usar o vetor). int SomaNotasAprovados (int V[], int N); 25. As notas dos alunos da disciplina de Programação estão guardadas no ficheiro de texto "dados4.txt". Cada linha deste ficheiro contém a seguinte informação: número de aluno, nota dos trabalhos práticos (TP) e nota do teste escrito (T) (por esta ordem). Implementar um programa em C para determinar o número de alunos aprovados na disciplina. Para tal, construir e usar as seguintes funções: a) função para ler do ficheiro um vetor de inteiros com as notas finais (TP+T) dos alunos. b) função para calcular o número de alunos aprovados (usar o vetor). int CalcularAprovados (int V[], int N);