Ajuda com exercício Java

Alguém pode me ajudar a fazer esse exercicio? Não sou bom em Java.

Segue:

Escreva um programa em Java que leia uma sequência N de números inteiros

(negativos, positivos e o zero) para um vetor. No início do programa é solicitado ao

usuário (pelo teclado) qual é a quantidade de elementos que serão lidos para o vetor

e depois disso os números são lidos para o vetor.

a) Calcule e retorna o valor da maior diferença entre dois elementos distintos no vetor.

b) Verifica se o vetor está em ordem crescente, e retorna true caso esteja e false caso contrário.


Isso foi o que consegui fazer até agora, o que seria a “primeira parte”:

public class Main {

public class static void main(String[] args) {

Scanner s = new Scanner( System.in);

int tamanho = Integer.parseInt( s.nextLine() );

int[] array = new int[tamanho];

}

}

Agora você faz um for de 0 até o tamanho do array.
Dentro dele vc vai pedindo que o usuário digite os números e vá guardando no array.

Fiz dessa forma, será que está correto?

private static Boolean verificaOrdenacao(int[] tamanho) {
	int i = 0;
	
	if (tamanho[i] <= tamanho[i + 1]) {
		i++;
		return true;
	}
	
	return false;

Mas não tem nenhum FOR nesse método verificaOrdenacao. Tenta seguir a sugestao do @RoinujNosde.

1 curtida

Fala galera! fiz um for como vocês falaram, alguém pode me dar um help e dizer onde estou errando? segue:

public class Main {
	
	public class static void main(String[] args) {
		Scanner s = new Scanner( System.in);
		
		int tamanho = Integer.parseInt(s.nextLine());
		int[] array = new int[tamanho];
	}
	
	Public class static void main(String[] args) {
		int verifica (int array[], int tamanho) {
			if (tamanho > 1)
				for (i = 1; i < tamanho; i++) {
					if (array[i - 1] > array[i])
						return 0;
					
					return 1;
				}
		}
	}

Bom dia pessoal sou novato em Java tou a fazer um tarefa e preciso de ajuda!
o professor me passou isso.
Construa um programa que calcule a multiplicação de dois números apenas utilizando a operação soma

import java.util.Scanner;

public class Exercicio2 {

public static void main(String[] args) {
	
Scanner entrada = new Scanner(System.in);        
        
int num1;
int num2;
        
System.out.print("Digite o primeiro número: ");
num1 = entrada.nextInt();

System.out.print("Digite o segundo número: ");
num2 = entrada.nextInt();

System.out.println(num1 + " * " + num2 + " = " + (num1 * num2) );
}

}

sera que e correto?

@Joao_Filipe1 não está correto, vc deve utilizar apenas soma (+), não multiplicação (*).
E crie outro tópico, o seu problema não tem relação com este.

2 curtidas

No meu caso acredito que precisaria colocar como Boolean na parte do for?
help…

@JacksonT você tá colocando o carro na frente dos bois.
Já fez a parte de pedir os números ao usuário e guardar num array?
Depois vc faz a verificação da ordem.

2 curtidas

Fala mano, decidi refazer do 0, utilizei o for e o while, coloquei a parte de pedir numeros ao usuario e guardar num array.
Não tenho certeza se está correto ainda pois acredito que fiz de uma maneira bem “bagunçada”.

Segue:

Class Main {
    public static void main(String[] args) {
    Scanner leitor = new Scanner(System.in);
    System.out.println("Digite a quantidade de elementos que serão lidos:");
    int tp = leitor.nextInt();
    int vet[] = new int[tp];
    criaVet(tp, vet);
    diferença = valorMaior(vet);
    System.out.println("A diferença é " + diferença);

    }

    public static void criaVet(int tamanho,int [] vet) {
    for(int i = 0; i < tamanho; i++) {
    Scanner leia = new Scanner(System.in);
    System.out.println("Digite um valor: ");
    vet[i] = leia.nextInt();

    }
    }

    public static void main(String[] args) {
    while(i < tp) {
    if(vet.get(i) == vet.get(tp - 1)) {

    return true;

    } else {
    if (vet.get(i) > vet.get(i + 1)) {
    return false;

    }
    }
    i++;
    }
    return true;

    }

Essa variável tamanho não é necessária. A partir do vetor vc pode pegar o tamanho dele: vet.length

Já esse método não faz sentido.

Declara um método public static int diferenca(int[] vetor) {} para fazer o cálculo da diferença.

Já consegui fazer quase todo exercício, falta apenas a parte B, que estou com dificuldade ainda.

O que eu teria que fazer para ver se o vetor está em ordem crescente e retornar true se sim e false se não? um for?

Segue as partes que já fiz e testei:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
    Scanner leitor = new Scanner(System.in);
    System.out.println("Digite a quantidade de elementos que serão lidos:");
    
int num = leitor.nextInt();
int v[] = new int[num];
diferenca = vmaior(v);

for(int i=0; i < v.length; i++){
  System.out.print("v["+i+"] ");
  v[i] = leitor.nextInt();

}

for (int i = 0; i < v.length; i++) {
  System.out.print(v[i]+ " ");
}
System.out.println();

int vmaior = v[0];
int vmenor = v[0];

for(int i = 0; i < v.length; i++) {
  if(v[i] > vmaior) {
    vmaior= v[i];
  }
  if(v[i] < vmenor){
    vmenor=v[i];
  }
}
System.out.println("O maior valor do vetor é: " +vmaior);
    {

Utilize um for, percorra todo o vetor e cada vez que percorrer você deve salvar uma variável (fora do laço de repetição) com o nome de ultimoValor. Dentro do for() você irá por um if que irá verificar se valorAtual > UltimoValor, caso passe pelo IF é porque está crescente, caso durante as repetições não passe pelo if já pode retornar false.

Boa tarde galera to precisando de ajuda em uma questão de java sou novo em programação

Criar um algoritmo que solicite ao usuário algumas opções e efetue as operações conforme detalhado abaixo:

"Favor informar uma operação que deseja executar: "

i - Preencher o vetor
p - Pesquisar um valor no vetor
a - Alterar um determinado valor no vetor

OBS1.: Caso seja escolhida a opção “p” , solicitar o valor que deseja procurar. Informar ao usuário se localizou ou não;
OBS2.: Caso seja escolhida a opção “a” , solicitar a posição a ser alterada;

OBS3: A opção “i”, é para caso se deseje alterar todo o vetor, porém ele já deve ser criado com valores.
OBS4: O vetor precisa ser de duas dimensões.

@WolfWhiter

No seu caso, é melhor cirar um tópico a parte para tirar sua dúvida. Não esqueça de dizer qual é a dúvida. Vc colocou apenas o que precisa ser feito.

Ahhh oky, obrigado!!