A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.1 Octave Ficheiros.

Apresentações semelhantes


Apresentação em tema: "Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.1 Octave Ficheiros."— Transcrição da apresentação:

1 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.1 Octave Ficheiros

2 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.2 Ficheiros (1) Na vossa pasta criar um ficheiro de texto chamado abracadabra (não é preciso ser um ficheiro do octave) Abrir o ficheiro e escrever lá qualquer coisa na primeira linha, por exemplo: bla, ble, etc

3 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.3 Ficheiros (2) Para se fazerem coisas com o conteúdo de um ficheiro é preciso primeiro 'abrir' o ficheiro: [fid,msg]=fopen(nome-do-ficheiro, modo) nome-do-ficheiro: string com o nome do ficheiro para abrir, por exemplo abracadabra.txt modo: uma das seguintes strings: r - se o ficheiro é para ser lido w - se o ficheiro é para ser escrito (substituindo o que lá estiver) a - se o ficheiro é para ser escrito (acrescentando ao que lá estiver)

4 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.4 Ficheiros (3) Ler um caracter do ficheiro: [c1,count] = fscanf(fid,%c,C) Ler dois caracteres do ficheiro: [c1,c2,count] = fscanf(fid,%c %c,C) ou então: v=[ ] for i=1:2 [v(i),count] = fscanf(fid,%c,C)

5 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.5 Ficheiros (4) Para testar se já chegamos ao fim do ficheiro: feof(fid) Devolve 1 ou 0, caso respectivamente já estejamos ou não no fim do ficheiro.

6 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.6 Ficheiros (5) Quando se deixa de usar um ficheiro é necessário fechá-lo: fclose(fid)

7 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.7 Exercício 1 Fazer uma função le_caracteres que retorna uma cadeia com todos os caracteres de um ficheiro juntamente com o comprimento dessa cadeia. function [cadeia,comprimento]=le_caracteres(nome_do_ficheiro)... endfunction

8 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.8 Exercício 2 Fazer uma função conta_vogais que conta o número de vogais num ficheiro. function n=conta_vogais(nome_do_ficheiro)... endfunction c_maiusculo = toupper(c) if index("AEIOU",c_maiusculo) > 0... etc... endif Dica: Para testarmos se um caracter c é uma vogal podemos fazer:

9 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.9 Ler uma matriz de um ficheiro fscanf(fid,formato,[colunas,linhas]) octave:1> [matriz,c]=fscanf(fid,formato,[2,2]); octave:2> matriz'

10 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.10 Exercício 1 Fazer uma função ler_matriz que lê uma matriz de um ficheiro function n=ler_matriz(fid,formato,colunas)... endfunction

11 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.11 Exercício 2 Fazer uma função sel_matriz que selecciona linhas de uma matriz se o valor na coluna 'coluna' está no intervalo [min,max]. function r=sel_matriz(matriz,coluna,min,max)... endfunction

12 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.12 Exercício 3 Fazer uma função med_mat que calcula a média de todos os valores de uma linha de uma matriz function media=med_mat(matriz,linha)... endfunction

13 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.13 Exercício 4 Fazer uma função le_data que lê uma data de um ficheiro e retorna 3 variáveis: dia, mês e ano function [dia,mes,ano]=le_data(fid)... endfunction

14 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.14 Exercício 5 Fazer uma função le_palavras que lê uma sequência de palavras de um ficheiro. A sequência termina com o caracter \t. function seq_palavras=le_palavras(fid)... endfunction

15 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.15 Registos Tal como uma matriz, um registo é um tipo de variável que contém vários valores. >> registo.nome = Carlos; >> registo.numero = 2345; >> registo registo = { nome = Carlos numero = 2345 }

16 Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.16 Ler um registo de um ficheiro Fazer uma função le_registo que lê um registo de um ficheiro de chamadas de telemóvel. O ficheiro é composto de várias linhas e 3 colunas: data, descrição e número de minutos. function registo=le_registo(fid)... endfunction


Carregar ppt "Introdução aos Computadores e à Programação DI-FCT-UNL-2006/2007 Ficheiros 5.1 Octave Ficheiros."

Apresentações semelhantes


Anúncios Google