Resolver esse exercicio

Alguém saberia resolver algum desses dois exercícios? Estou quebrando a cabeça p/ fazer.

  1. Faça um programa em java que recebe uma lista de valores relativos aos preços de uma loja e ordene esses valores em ordem decrescente. Ao final, imprima a lista como foi recebida e depois imprima a lista ordenada.

  2. Faça um programa em java que recebe uma lista com os nomes de alunos e permita que seja realizada uma pesquisa aos nomes dos alunos que estão na lista. Caso o aluno não esteja na lista imprima a mensagem ?aluno não encontrado?. Ao final, imprima a lista com os nomes dos alunos.

[i] opÁ!

vc ja fez algo?
tentou fazer alguma coisa ?

[/i]

Seria demais você postar o que você já fez, para ver se você está ou não no caminho certo?
Pode ser que você esteja quase “nos finalmentes” e falte só um empurrãozinho.

Tentei várias vezes… Só o que acontece… o código já estava tão bagunçado e deletei. Pq pelo o que parece o negocio é simples só que eu devo estar complicando. É assim mesmo? Programar dá tanta dor de cabeça?

a) É a segunda profissão mais estressante (a primeira é a área médica).

b) Caso dê problemas com seu sistema, você não pode alegar que “Deus é que quis assim, e não pôde salvar seu paciente”. Você tem de fazer funcionar de qualquer jeito :stuck_out_tongue:

Podes crer.
Pior que tenho que entregar esses dois exercícios as 7hs na faculdade se não estou frito. Comecei a mexer com PHP em casa e estou indo bem. Estou aprendendo java na faculdade e está complicando minha cabeça.

Se alguém puder me salvar vou agradecer muito.

Abraços

Cara, só uma dica: para ordenar a lista que o seu método recebe use java.util.Collections.sort(List list). Só tome cuidado porque ele vai alterar a sua lista original se você passá-la como parâmetro…

Mais que isso a gente vai fazer o exercício pra você… tenta aí e qualquer dúvida poste o código.

procurar collections e comparator no google… vai te ajudar bastante…

http://www.java2s.com/Code/Java/Collections-Data-Structure/WritingYourownComparator.htm

posta oq vc ta fazendo… naum posso ficar muito de bobeira aqui naum tem como fazer tudo agora… sorry… :frowning:

Só vou dar uma resposta, e provavelmente seu professor não vai aceitar porque uso coisas que estão prontas no Java. É como eu faria em um programa de verdade (só a parte de ordenação em ordem decrescente):

import java.util.*;

class Produto {
    double valor;
    String descricao;
    public Produto (String pDescricao, double pValor) {
        valor = pValor; descricao = pDescricao;
    }
    public String toString() {
        return String.format ("[descricao=%s, valor=%.2f]", descricao, valor);
    }
}

class ComparatorProduto implements Comparator<Produto> {
    // Atenção - esta função tem um bug: dois produtos com o mesmo
    // preço são iguais para esta função. Como corrigir isto?
    public int compare (Produto p1, Produto p2) {
        // Note o sinal de menos aqui
        return - Double.valueOf(p1.valor).compareTo (Double.valueOf (p2.valor));
    }
}

class PrecosLoja {
    public static void main(String[] args) {
        List<Produto> listaProdutos = new ArrayList<Produto>();
        // Produtos lidos de algum lugar - não estou pondo a leitura aqui, isso
        // eu deixo para você fazer no ônibus
        listaProdutos.add (new Produto ("abacaxi", 20.00));
        listaProdutos.add (new Produto ("banana", 12.50));
        listaProdutos.add (new Produto ("caqui", 12.45));
        listaProdutos.add (new Produto ("damasco", 54.45));
        listaProdutos.add (new Produto ("figo", 23.45));
        // Listando os produtos como foram lidos
        System.out.println ("-- Listagem dos produtos --");
        System.out.println (listaProdutos);
        // Agora vamos ordenar os produtos em ordem decrescente de preço,
        // como foi solicitado.
        SortedSet<Produto> precoProdutos = new TreeSet<Produto>(new ComparatorProduto());
        precoProdutos.addAll (listaProdutos);
        // Listando os produtos em ordem decrescente de preço
        System.out.println ("Listagem dos produtos em ordem decrescente de preço");
        System.out.println (precoProdutos);
    }
}
import java.util.*;

/** Aqui supomos que não há alunos com o mesmo nome */
class Aluno {
    String nome;
    double nota;
    public Aluno (String pNome, double pNota) {
        nome = pNome; nota = pNota;
    }
    public String toString () {
        return String.format ("Nome=%s, Nota=%.2f; ", nome, nota);
    }
}

class AlunoComparator implements Comparator<Aluno> {
     public int compare (Aluno a1, Aluno a2) {
         return a1.nome.compareToIgnoreCase (a2.nome);
     }
}

class ListaAlunos {
    public static void main(String[] args) {
        Set<Aluno> alunos = new TreeSet<Aluno>(new AlunoComparator());
        alunos.add (new Aluno ("Luis Inacio", 5.0));
        alunos.add (new Aluno ("Fernando Henrique", 7.0));
        alunos.add (new Aluno ("Gabriel Pensador", 8.0));
        alunos.add (new Aluno ("Mano Brown", 5.0));
        alunos.add (new Aluno ("Gisele Bundchen", 10.0));
        
        Aluno procurado = new Aluno ("Natalia Guimaraes", 10);
        if (!alunos.contains (procurado)) {
            System.out.println ("aluno não encontrado");
        } else {
            System.out.println ("aluno encontrado", procurado);
        }
    }
}