Ir ao conteúdo
  • Cadastre-se
Raphael Góes

Suporte em atividade

Recommended Posts

Preciso criar esse codigo em Java, porém eu não sei nem por onde começar, eu não entendo nada que meu professor me fala:

A atividade consiste em criar uma classe que represente uma memória simples, para armazenar números inteiros positivos, que permite as seguintes operações: colocar um elemento na primeira posição livre da memória, caso ela não esteja cheia; retirar o elemento da última posição da memória, caso ela não esteja vazia; alterar um elemento já existente na memória; e pesquisar se um elemento existe na memória, determinando a sua posição na memória.

 

Essa classe usará um vetor como estrutura de dados de suporte para armazenar seus elementos. Para evitar processar elementos inexistentes, a classe memória possui um contador que indica o número de elementos úteis armazenados, ou seja, um indicador da posição do último elemento da memória onde foi escrita a informação. A atualização deste contador é de responsabilidade das operações de inserção e remoção.

 

A classe deve ter os seguintes atributos e operações:

private int [] memoria; // elementos da memória
private int nElem; // número de elementos armazenados na memória

public Memory ( int tamanho) // construtor da classe
public int size () // indica o número de elementos armazenados
public int dimension () // indica a capacidade de armazenamento
public int getElement (int pos) // retorna o elemento na posição passada
public void setElement (int pos, int val) // modifica um valor numa posição específica
public boolean isEmpty () // método que testa se a memória está vazia
public boolean isFull () // método que testa se a memória está cheia
public void insert (int val) // método de inserção primeira posição vazia
public int delete() // remoção do último elemento
public int search (int val) // método de pesquisa de um valor (retorna a posição)
public String toString () // método de impressão de todos os valores da memória

 

 

Observação: o aluno deve criar programa para testar a classe Memory criada, ou seja, criar uma classe que tenha um método main() para testar todas as operaçõessobre um objeto da classe Memory. Dessa forma, o aluno desenvolverá duas classes um chamada Memory e outra TestMemory que contém o método main().

Editado por Simon Viegas
Ao postar um código, favor inserir na tag CODE (botão <>)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá ... olhando os atributos e os métodos você tem que perceber o seguinte:

O Construtor recebe o tamanho da memória, então se você chamar new Memory(7), o sistema vai criar um array dessa forma

memoria = new int[7]; //7 foi o valor passado no construtor, basta alterar
nElem = 0; //Inicializa o numero de elementos da estrutura ...

Sempre que você adicionar um novo elemento, você vai colocar na posicao nElem (afinal ele guarda a quantidade de elementos) e depois disso soma um nesse atributo.

Remover é um caso um pouco complicado. você precisa fazer um loop regressivo, da última posição para a primeira, e descobrir qual o valor desse campo. Retorne esse valor, mas não esqueça de substituir o valor por algum valor padrão, como 0;

no mais, já é um bom norte, tente fazer pelo menos ele incluir e remover e qualquer dúvida, poste o código para a gente tentar ajudar nas dúvidas.

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×