Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Criação da classe maior e menor números

Na classe foi utilizada variáveis de maior e menor que utilizam números gerados pelo Javascript.

Como funciona essa função?

Tem um curso de Java de algoritmos que tem exercício parecido com esse, poderia ter um curso de Javascript com os exercicios do Java, porque tem diferença de linguagem e também acho que facilitaria para entender melhor criação de classes no Javascript.

4 respostas

Oi Gisele, tudo bem? Desculpa, não entendi bem, você queria um curso de javascript com exercicios de java para poder fazer um comparativo de como as coisas são feitas nas duas linguagens, é isso?

Desculpa, às vezes eu faço perguntas sem explicar direito, sabe quando a dúvida está clara pra você, mas você não consegue explicar.

É que assim, eu tenho visto que para trabalhar com programação as pessoas pedem algoritmos e eu comecei a estudar o curso daqui que é com Java, aí eu comecei a fazer o de testes com Jasmine que funciona com Javascript e eu vi que o objetivo é o mesmo, mas a construção de algumas coisas no código mudam bastante.

Por exemplo, no exemplo de maior e menor no Javascript, foram utilizados métodos para criar o número minimo e máximo se eu entendi direito e no Java não foi utilizado nenhum método da linguagem para chegar num valor mínimo ou máximo.

Aí eu fiquei na dúvida, que se não tivesse esse métodos do Javascript, como eu chegaria num valor mínimo e máximo?

Me refiro a isso:

Javascript

            menor = Number.MAX_VALUE;
            maior = Number.MIN_VALUE;

Java

public class TestaMenorPreco {

    public static void main(String[] args) {
        Produto produtos[] = {
                new Produto("Lamborghini", 1000000),
                new Produto("Jipe", 46000),
                new Produto("Brasília", 16000),
                new Produto("Smart", 46000),
                new Produto("Fusca", 17000)
        };    

    int maisBarato = buscaMenor(produtos, 0, 4);

        System.out.println(maisBarato);
        System.out.println("O carro," +         produtos[maisBarato].getNome() + ", mais barato custa " + produtos[maisBarato].getPreco());

    }

    private static int buscaMenor(Produto[] produtos, int inicio , int termino) {
        int maisBarato = 0;
        for(int atual = 0; atual <= termino; atual ++){
            if(produtos[atual].getPreco() < produtos[maisBarato].getPreco()){
                maisBarato = atual;
            }
        }
        return maisBarato;
    }

Em alguns testes às vezes não é pedido nada específico de uma linguagem e eu fico com dúvida em como chegar no resultado sem o que é especifico de cada linguagem.

solução!

O problema que vejo é questão de contexto Gisele. Descobrir o menor valor e o maior valor entre valores já existentes é simples, voce só precisa comparar o primeiro valor com o proximo e pronto. Mas e quando estes valores não são conhecidos? É mais complicado definir o valor base a ser testado, por isso se usa o maximo e minimo.

Os testes não devem pedir algo em específico da linguagem, mas sim ao que o teste visa testar. Compreenda que testes nunca vão pedir algo especifico da linguagem, mas sim da funcionalidade que voce deseja testar. O recurso da linguagem voce é quem escolhe qual e como vai usar. Entende? É essa mais ou menos sua dúvida?

Sim, era isso, o último teste que eu fiz foi bem específico, era um código em C. Só que eu nunca estudei C, e era sobre a diferença de x++ e ++x. Então eu estou aprendendo C, java e javascript...