Buscar

GRA0246 ESTRUTURA DE DADOS Atividade A1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

GRA0246 ESTRUTURA DE DADOS
Atividade A1
// ENUNCIADO
// Implemente um programa para cadastro de alunos de uma disciplina utilizando a linguagem Java, seguindo os seguintes critérios: 
// PARTE 1
// 1.1. Criar uma estrutura heterogênea (array) do tipo string para cadastrar o nome de 25 alunos;
// 1.2. Garantir que a estrutura seja totalmente preenchida
// importar bibliotecas necessárias
import java.util.Arrays;
import java.util.Scanner;
public class AtividadeA1 {
    // declarar o array "alunos", que receberá os nomes dos alunos cadastrados
    public static void main(String[] args) {
        // na criação do array "alunos", deve ser passada a quantidade de elementos que o array receberá
        String[] alunos = new String[25];
        // para garantir que a estrutura seja totalmente preenchida, será utilizada a iteração for
        for(int i = 0; i< alunos.length; i++) {
            Scanner nome = new Scanner(System.in);
            System.out.println("Digite o nome do(a) aluno(a) " + (i + 1) + ":");
            alunos[i] = nome.nextLine();}
        // impressão dos resultados
        System.out.println("");
        System.out.println("Lista de alunos:");
        System.out.println(Arrays.toString(alunos));
        System.out.println("");
// Ao executar o programa, serão solicitados os nomes dos 25 alunos a serem cadastrados
// Ao final do programa, é exibido o array com os nomes dos 25 alunos cadastrados
// [alunos[1], alunos[2], alunos[3], ..., alunos[25]]
//
// PARTE 2
// Após implementar o programa e preencher o array com o nome dos alunos, cadastre mais 5 novos alunos.
        // declarar array que recebe lista dos novos alunos:
        String[] novos_alunos = new String[5];
        // realizar a iteração para receber os nomes dos novos alunos
        System.out.println("Cadastro de 5 novos alunos");
        for(int i = 0; i< novos_alunos.length; i++) {
            Scanner nome_novo_aluno = new Scanner(System.in);
            System.out.println("Digite o nome do(a) novo(a) aluno(a) " + (i + 26) + ":");
            novos_alunos[i] = nome_novo_aluno.nextLine();}
        // declarar array para receber a lista consolidada, e concatenar as duas listas por meio do método arraycopy
        String[] nova_lista = new String[30];
        System.arraycopy(alunos, 0, nova_lista, 0, 25);
        System.arraycopy(novos_alunos, 0, nova_lista, 25, 5);
        // impressão dos resultados
        System.out.println("");
        System.out.println("Nova lista de alunos:");
        System.out.println(Arrays.toString(nova_lista));
        }
}
// Qual a dificuldade de inserir os novos alunos nessa estrutura de dados? Justifique a sua resposta direcionando aos conceitos de gerenciamento de memória. 
// A dificuldade de inserir os novos 5 alunos ocorre porque, em Java, a estrutura array é uma estrutura estática. Uma estrutura de dados estática possui tamanho fixo, que deve ser declarado no código.
// Diferente do que ocorre com as estruturas dinâmicas, que possuem tamanho variável, quando uma variável estática é criada, seu tamanho não pode ser alterado até que o programa seja finalizado (VIEIRA, 2022).
// Dessa forma, no nosso caso, uma vez que o array original foi declarado com 25 alunos, não pode ser mais alterado para a inclusão dos novos 5 alunos.
// Como forma de contornar esse problema, a opção adotada foi criar um novo array para receber a lista dos 5 novos alunos e, em seguida, criar um terceiro array correspondente à lista completa.
// A concatenação das duas listas foi realizada por meio do método "arraycopy", que copiou os dados dos dois arrays no terceiro array resultante.
//
// Referências bibliográficas:
// VIEIRA, A P S B. ESTRUTURA DE DADOS: UNIDADE 1 – ESTRUTURA BÁSICA DE DADOS. Apostila da disciplina Estrutura de Dados GRA 0246. Universidade Anhembi Morumbi, 2022.
Visualização do terminal:
Digite o nome do(a) aluno(a) 1:
Jonas
Digite o nome do(a) aluno(a) 2:
Hannah
Digite o nome do(a) aluno(a) 3:
Ines
Digite o nome do(a) aluno(a) 4:
Daniel
Digite o nome do(a) aluno(a) 5:
Martha
Digite o nome do(a) aluno(a) 6:
Magnus
Digite o nome do(a) aluno(a) 7:
Mikkel
Digite o nome do(a) aluno(a) 8:
Ulrich
Digite o nome do(a) aluno(a) 9:
Katharina
Digite o nome do(a) aluno(a) 10:
Tronte
Digite o nome do(a) aluno(a) 11:
Jana
Digite o nome do(a) aluno(a) 12:
Helene
Digite o nome do(a) aluno(a) 13:
Agnes
Digite o nome do(a) aluno(a) 14:
Franziska
Digite o nome do(a) aluno(a) 15:
Elisabeth
Digite o nome do(a) aluno(a) 16:
Peter
Digite o nome do(a) aluno(a) 17:
Charlotte
Digite o nome do(a) aluno(a) 18:
Helge
Digite o nome do(a) aluno(a) 19:
Bernd
Digite o nome do(a) aluno(a) 20:
Greta
Digite o nome do(a) aluno(a) 21:
Bartosz
Digite o nome do(a) aluno(a) 22:
Regina
Digite o nome do(a) aluno(a) 23:
Aleksander
Digite o nome do(a) aluno(a) 24:
Claudia
Digite o nome do(a) aluno(a) 25:
Egon
Lista de alunos:
[Jonas, Hannah, Ines, Daniel, Martha, Magnus, Mikkel, Ulrich, Katharina, Tronte, Jana, Helene, Agnes, Franziska, Elisabeth, Peter, Charlotte, Helge, Bernd, Greta, Bartosz, Regina, Aleksander, Claudia, Egon]
Cadastro de 5 novos alunos
Digite o nome do(a) novo(a) aluno(a) 26: 
Doris
Digite o nome do(a) novo(a) aluno(a) 27: 
Noah
Digite o nome do(a) novo(a) aluno(a) 28: 
Silja
Digite o nome do(a) novo(a) aluno(a) 29: 
Jennipher
Digite o nome do(a) novo(a) aluno(a) 30: 
Nils
Nova lista de alunos:
[Jonas, Hannah, Ines, Daniel, Martha, Magnus, Mikkel, Ulrich, Katharina, Tronte, Jana, Helene, Agnes, Franziska, Elisabeth, Peter, Charlotte, Helge, Bernd, Greta, Bartosz, Regina, Aleksander, Claudia, Egon, Doris, Noah, Silja, Jennipher, Nils]

Mais conteúdos dessa disciplina