Ir ao conteúdo
  • Cadastre-se

Suporte em atividade


Posts recomendados

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().

Link para o comentário
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.

 

 

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...