Skip to content

PvMeira/TrabalhoAlgoritimosIII-01

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TrabalhoAlgoritimosIII-01

Sejam arquivos texto que descrevem matrizes utilizando o seguinte formato:

linhas colunas dados da linha 0 dados da linha 1 ... dados da linha (colunas - 1)

onde,

linhas, representa o número de linhas da matriz;
colunas, representa o número de linhas da coluna;
dados, represantam os dados de cada célula de uma linha da coluna, podendo ter o valor 0 (zero) ou 1 (um)

como por exemplo, o arquivo

6 5
000000
011000
011010
000010
000010

que contém uma matriz de 6 linhas por 5 colunas, que pode ser armazenada na forma:

 | 0 | 0 | 0 | 0 | 0 | 0 |
 | 0 | 1 | 1 | 0 | 0 | 0 |
 | 0 | 1 | 1 | 0 | 1 | 0 |
 | 0 | 0 | 0 | 0 | 1 | 0 |
 | 0 | 0 | 0 | 0 | 1 | 0 |

Crie dois programas onde, dado um desses arquivos representando matrizes, sejam capazes de:

a) Contar o número de "ilhas" formadas por grupos de 1 conectados na horizontal ou vertical;
b) Criar uma estrutura que permita localizar as ilhas na matriz.

Os grupos de 1 que formam ilhas devem estar conectados apenas na horizonta ou vertical, e não na diagonal. Por exemplo a seguinte matriz possui apenas uma ilha:

0000 0110 0110 0000

Já o exemplo a seguir mostra duas ilhas:

0000 0100 0010 0000

A avaliação do trabalho será realizada executando o programa para uma série de arquivos, e comparando a saída do programa com uma saída esperada. Esta avaliação automatizada está disponível apenas para o item "a".

Por exemplo, dada o arquivo:

4 4 1100 1100 0010 0000

O resultado esperado é:

2

O trabalho deve entregue até a 10a. aula do semestre (Prova 1), e a apresentação será realizada na 11a. aula.

O trabalho pode ser realizado em grupos de 2 até 3 alunos.

Apenas um dos alunos deve entregar o trabalho. O código deve, obrigatoriamente, estar disponível em um repositório do Github, o qual deve ser indicado na entrega do trabalho.

Serão avaliados a correção das tarefas, a qualidade do algoritmo (consumo de memória e tempo de execução), a qualidade do código, e a utilazação correta do controle de versão (git).

São disponibilizados alguns arquivos para testes de desenvolvimento, contendo um exemplo de matriz e o resultado esperado para aquela matriz. Na avaliação do trabalho, serão utilizados arquivos diferentes, portanto crie seu algoritmo para que funcione independente dos dados de entrada, respeitado o formato de arquivo.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages