Não vou ser ingrato, só estou passando para agradecer pela aulas até o momento você ensina muito..quem dera eu ter um professor na minha faculdade ao menos semelhante... Abs
Nossa em bom que estão ensinando isso hoje... cursos técnicos como processamento de dados ensinavam isso antigamente , hoje viraram faculdades de engenharia de software, Sistemas de informação e etc.. nas matérias como de algoritmos e estruturas de dados, usam muito ordenação e pesquisa.
@@vitorclemen No mundo de TI assuntos que você vê na faculdade as vezes você pode ter visto na escola técnica e até mesmo em videoaulas feitas por pré-adolescentes. Eu estudo em uma Universidade Federal e estou vendo esse mesmo assunto que você viu no ensino médio. Vi Python no primeiro quadrimestre e neste terceiro estou vendo Java.
Rapaz, de todas as aulas que já vi essa foi a melhor .......não fica no bla bla bla e já vai direito ao ponto e explica variavel por variavel ...meus parabéns!
Muito feliz por poder assistir essas aulas, são ótimas! Demorei um pouco para entender o controle, mas assisti várias vezes a mesma aula e depois fiz um teste de mesa com bastante calma e entendi. :)
Show de bola amigo! Tive uma prova sobre esse assunto ontem, e como na hora não lembrava deste método, criei 4 for's para um vetor de 5 espaços, cada um verificando cada índice do vetor e ordenando! é horrível mas funcionou, melhor que errar a questão! mas agora não faço mais isso! valeu!
Cara, você é 10x melhor que meu prof da facul parabéns, eu ouvi sua explicação e depois tentei implementar o bubblesorte sozinho, e o resultado foi perfeito, fiquei bem feliz, pois de início não tinha entendido muito. Obrigado!
Muito bom, obrigado! Deixar registrado aqui, que em 2022 deixei de passar em uma entrevista de vaga do exterior, porque esqueci desse algoritmo, triste. Mas é a vida hehe
Quando assisto suas aulas me sinto até deprimido ao pensar sobre meu professor na faculdade, se fosse pelo menos parecido com a sua didática eu me daria muito melhor, suas aulas me salvam
Muito show. Sugestão: para matar um for (da linha 11, o primeiro) bem como a necessidade do boolean mantendo a ideia e evitar verificações desnecessárias. Só adicionar mais uma linha após a linha 18 j=0; for (int j=0; jnotas[j+1]){ aux=notas[j]; notas[j]=notas[j+1]; notas[j+1]=aux; j=0; } } Ou seja, sempre que ele identificar alguma troca, ele faz um reset no j, e se não for identificado troca, o programa encerra. ;) Mas claro, o objetivo também foi demonstrar um exemplo para utilizar o boolean. (tá valendo).
opa.. faal aí Raul O próximo assunto vai ser métodos em Java e logo após iniciar com após iniciar com a parte da linguagem voltada a objeto propriamente dito.. diria que em máximo 10 vídeos getters e setters vão aparecer
Belíssima aula, tenho acompanhado todas e vou até o final destes tutoriais, sou iniciante e tenho aprendido muito em seu canal. Estou adorando este curso. Esta explicação foi magnifica. Obrigado, parabens.
Obrigado por mais uma aula, você é um excelente professor. Bem, pra mim não ficou muito claro a parte do "controle". Poderia fazer uma review desta parte do programa? Se poder agradeço muito, obrigado!
Cara show de bola vejo todas as suas aulas nota 10. estou aprendendo muito mesmo, seria muito legal se você tive-se uma aula sobre outros algoritmos como o MergeSort que eu achei muito difícil e tenho certeza que com sua ajuda eu vou aprender vlw cara continua assim :D
italo mt show seu canal e suas aulas :D sua didatica é impressionante!! eu tenho uma dúvida.. como agt usa java na criação de jogos (pc, smartphone e tal)
muito bom :D programa ia rodar 6*6 quando fico em ordem parou com break; ótima aula mais você devia te dado mais detalhes como primeiro for roda e faz controle fica verdadeiro e quando tem algo no segundo for faz fica falso e quando não tem nada por causa do primeiro for faz parar devia ter dito que o segredo tava todo ali mais mesmo assim muito obg pela aula :D
Boa noite professor Acho que esse if(controle) {break;} deveria estar dentro das chaves do primeiro for... Do jeito que está no vídeo esse if só é executado depois que terminam os dois for...
Ótimas aulas, obrigado! Já escrevi Bubble Sort anteriormente e enferrujei. Por gentileza, alguém explique a razão de um "for" dentro do outro. Abraços.
O que o loop interno faz é comparar dois valores do vetor cada vez que é executado. Ou seja, se o loop interno for executado 6 vezes (no caso de vetor.length == 6), ele vai percorrer todo o vetor apenas 1 vez, o que na maioria das vezes não vai ser suficiente para ordenar todos os valores. Espero ter ajudado.
É assim o Brasil hoje em dia, o pessoal assiste e nem agradecem pensam que conhecimento é de graça, e que é obrigatório ter aula todas as vezes que necessita. Aí se o RUclips saísse do ar seria o máximo, todos os brasileiros seriam obrigados a ler livros. Porém isso talvez nunca aconteça então agradeçam com like ingratos...
"Professor" bom dia. No Netbeans que utilizo, toda vez que mando executar um programa que desenvolvo, roda o programa anterior. Preciso selecionar o programa com o botão direito do mouse para executá-lo. Como posso resolver isso?
vish.. então cara.. eu ouvi dizer mesmo que tem um fórum hacker na deep web que roda umas vídeo aulas minha :o mas eu não tenho idéia de qual é haha. tem como você me passar o fórum?
nem tenho cara.... mas acho que até sei porque está perguntando isso.. você deve ter visto o link do canal em algum fórum da deep web, foi isso? Um pessoal chegou a comentar que que tinham links pro canal em um fórum da deep :D
Olá muito bom dia, nao entendo o pq usar o v[j+1] eu uso assim for (int i = 0; i < 10; i++) { for (int j = 0; j < 10; j++) { if (vetor[i] < vetor[j]) { aux = vetor[j]; vetor[j] = vetor[i]; vetor[i] = aux; } } } e funciona tranquilo, está errado? Agradeço sua atenção :)
Suas aulas são ótimas, parabéns! Mas, assim como outros aqui nos comentários, também tive dificuldades com o "controle". Afinal, o "if" não roda só se j for maior que j+1? Não entendi a necessidade do controle. Obrigado!
Sim, o "if" só sera executado se j for maior que j+1. A princípio o controle é definido como verdadeiro(true), se o vetor estiver desordenado, ou seja, j>j+1, o programa vai entrar no primeiro "if" e vai redefinir o controle para falso(false), dai não vai executar o comando break que esta dentro do segundo "if". Mas caso se o vetor já estiver ordenado, ou seja j não será maior que j+1, o primeiro "if" não será lido, o que significa que o controle não sera alterado para falso(false), e logo depois no segundo"if" será executado o comando break pois o segundo "if" será verdadeiro(true).
boa tarde, professor. Acredito que tenha um erro no boolean, pois da maneira que foi colocado, os 2 "for" serão executados sempre. Fiz a variavel controle inicializando no primeiro for como "true" sempre, e dentro do if do segundo for, coloquei ela se tornando falsa caso entre, caso não entre, ela irá continuar "true" e quando sair do segundo for, dará o break. segue abaixo o Algoritmo. abraço e está me ajudando muito. package estudos; public class OrdenarBubbleSort { public static void main(String[] args) { int i,j,aux; int[] vetor = {3,5,7,6,1,4,2}; boolean controle; for(i = 0, controle = true; i < vetor.length; i++) { for(j = 0; j < (vetor.length - 1); j++) { if(vetor[j] > vetor[j+1]) { aux = vetor[j]; vetor[j] = vetor[j+1]; vetor[j+1] = aux; controle = false; } } if(controle == true) { break; } } for(i = 0; i < vetor.length;i++) { System.out.println(+vetor[i]+ " "); } } }
+GamercraftBR 43 na verdade eu posicionei o boolean diferente do professor, depois que me toquei disso... Tanto o meu jeito como o do professor dão a mesma coisa! Kkkk valeu mano
Valeu Raul :D hmm cara.. eu não sei fazer jogos em Java.. ainda :D Espero um dia chegar lá mas vou te recomendar um site que acho bacana.. digite no google "zetcode java 2D" tem um tutorial passo a passo :).. o site é inglês mas se estiver difícil de entender só jogar no google tradutor que acho que dá pra pegar a idéia Vlws
Elimine a flag adicionando TAM - i - 1. int i, j, aux; for (i = 0; i < numeros.length - 1; i++) { for (j = 0; j < (numeros.length - i - 1); j++) { if (numeros[j] > numeros[j + 1]) { aux = numeros[j]; numeros[j] = numeros[j + 1]; numeros[j + 1] = aux; } } }
public static void main(String[] args) { Scanner ler = new Scanner(System.in); int i, e; int aux; int v[] = new int[5]; for (e = 0; e < 5; e++) { System.out.println("digite um numero" + (e)); v[e] = ler.nextInt(); } for (e = 0; e < 5; e++) { for (i = e + 1; i < 4; i++) { if (v[e] > v[i]) { aux = v[e]; v[e] = v[i]; v[i] = aux; } } } for (e = 0; e < 5; e++) { System.out.println("ordenado: " + v[e]); } } }
Galera, para evitar interações desnecessárias podemos subtrair "i" na segunda condição ao invés de utilizar o break. Deste modo:
for(int i = 0; i < v.length; i++){
for(int j = 0; j < v.length - 1- i; j++){
System.out.println(j);
if(v[j] > v[j + 1]){
aux = v[j];
v[j] = v[j + 1];
v[j + 1] = aux;
}
}
}
Notem a alteração na condição:
DE: j < v.length - 1
PARA: j < v.length - 1 - i
Estava com muita dificuldade de entender isso na minha faculdade, mas nessa aula ficou tudo esclarecido. Muito obrigado.
Não vou ser ingrato, só estou passando para agradecer pela aulas até o momento você ensina muito..quem dera eu ter um professor na minha faculdade ao menos semelhante... Abs
caraca voce esta estudando isso na faculdade ... eu vejo isso no meu curso técnico junto ao ensino médio kkkk
Nossa em bom que estão ensinando isso hoje... cursos técnicos como processamento de dados ensinavam isso antigamente , hoje viraram faculdades de engenharia de software, Sistemas de informação e etc.. nas matérias como de algoritmos e estruturas de dados, usam muito ordenação e pesquisa.
isso ai foi matéria do meu 1º ano kkk
@@quact-satim7671 Vdd, estou no 1º ano do ensino médio e é esse assunto ae... .java
@@vitorclemen No mundo de TI assuntos que você vê na faculdade as vezes você pode ter visto na escola técnica e até mesmo em videoaulas feitas por pré-adolescentes. Eu estudo em uma Universidade Federal e estou vendo esse mesmo assunto que você viu no ensino médio. Vi Python no primeiro quadrimestre e neste terceiro estou vendo Java.
Estou tendo um bom aproveitamento em meu curso, graças as suas aulas.
Obrigado.
Você é o melhor cara que explica java no youtube, parabéns e só assisto os seus vídeos!!
Rapaz, de todas as aulas que já vi essa foi a melhor .......não fica no bla bla bla e já vai direito ao ponto e explica variavel por variavel ...meus parabéns!
9 anos depois essa aula me ajudou em um processo seletivo , obrigado por compartilhar.
3 anos que eu conheço este canal... Me ajuda sempre que preciso
Tá salvando nesse período de pandemia onde mais se estuda na faculdade para atingir as notas do que pelo conhecimento em si. Obrigado pelo conteúdo!
Muito feliz por poder assistir essas aulas, são ótimas! Demorei um pouco para entender o controle, mas assisti várias vezes a mesma aula e depois fiz um teste de mesa com bastante calma e entendi. :)
Excelente didática. Obrigado pelo conteúdo disponibilizado.
Show de bola amigo! Tive uma prova sobre esse assunto ontem, e como na hora não lembrava deste método, criei 4 for's para um vetor de 5 espaços, cada um verificando cada índice do vetor e ordenando! é horrível mas funcionou, melhor que errar a questão! mas agora não faço mais isso!
valeu!
Cara, você é 10x melhor que meu prof da facul parabéns, eu ouvi sua explicação e depois tentei implementar o bubblesorte sozinho, e o resultado foi perfeito, fiquei bem feliz, pois de início não tinha entendido muito. Obrigado!
Nossa que aula excelente! Parabéns pela didática !
4000 pessoas te viram só 200 te agradeceram OBRIGADO CARA!!!
Muito bom, obrigado! Deixar registrado aqui, que em 2022 deixei de passar em uma entrevista de vaga do exterior, porque esqueci desse algoritmo, triste. Mas é a vida hehe
Claro e objetivo, obrigada pela explicação.
Quando assisto suas aulas me sinto até deprimido ao pensar sobre meu professor na faculdade, se fosse pelo menos parecido com a sua didática eu me daria muito melhor, suas aulas me salvam
Eu voou ver aqui e depois eu ti passo,OK? e suas aulas são muito boas aprendi bastante com elas.
virei fã.me salvou...o que não compreendi em aula consegui neste canal!! parabéns!!
Ajudou muito amigo! estava com umas duvidas e achei seu video e abriu minha mente!
Muito obrigado pela excelente aula.
Agora o bixo pego... Mas é isso ai galera o jeito é ir assistindo as aulas e exercitando até conseguir!
Muito show.
Sugestão: para matar um for (da linha 11, o primeiro) bem como a necessidade do boolean mantendo a ideia e evitar verificações desnecessárias.
Só adicionar mais uma linha após a linha 18 j=0;
for (int j=0; jnotas[j+1]){
aux=notas[j];
notas[j]=notas[j+1];
notas[j+1]=aux;
j=0;
}
}
Ou seja, sempre que ele identificar alguma troca, ele faz um reset no j, e se não for identificado troca, o programa encerra. ;)
Mas claro, o objetivo também foi demonstrar um exemplo para utilizar o boolean. (tá valendo).
Muito bom, não encontrei aula melhor
opa.. faal aí Raul
O próximo assunto vai ser métodos em Java e logo após iniciar com após iniciar com a parte da linguagem voltada a objeto propriamente dito.. diria que em máximo 10 vídeos getters e setters vão aparecer
Estou começando a aprender Java e estou gostando muito das suas aulas
meu Deus mano. 5 anos depois e vc esclareceu uma questão minha. Muito obrigado
Belíssima aula, tenho acompanhado todas e vou até o final destes tutoriais, sou iniciante e tenho aprendido muito em seu canal. Estou adorando este curso. Esta explicação foi magnifica. Obrigado, parabens.
Continue a fazer mais video aulas de java ...
Suas aulas são boas e simples de entender ...
Muito grato mestre e tenho aprendido muito com suas aulas.
Muito bom.
boa didática muito bom cara parabéns
Obrigado pela a ajuda, foi muito útil. Deus abençoe você.
Exelente explicação e principalmente didática. Me fez realmente aprender a lógica deste código. Muito obrigado.
Se alguém ainda tiver alguma dúvida sobre o código é só copiar esse que vou postar agora nos comentários!
int [] numeros = {8,4,1,7,2,3};
int aux;
boolean status;
for(int i=0; inumeros[j+1]){
aux = numeros[j];
numeros[j] =numeros[j+1];
numeros[j+1] = aux;
status=false;
}
System.out.print(numeros[j]+" ");
}
System.out.print(" - ");
if(status){break;};
}
System.out.print("Resultado Final: ");
for (int i = 0; i < numeros.length; ++i) {
System.out.print(numeros[i]+" ");
}
System.out.println("");
Melhor que meu professor da faculdade, valeu cara!!!
estou aprendendo muito meus parabens
Parabéns! Aula e dicção fantástica
que aula sensacional!!!
Cara que aula maravilhosa meu brother!
Muito obrigado, acho que finalmente entendi o conceito!
excelente explicação
Muito obrigada, me ajudou muito!
Valeu cara, vc é uma benção.....
Ótimo vídeo, me ajudou a inverter melhor esse vetor pois eu estava com dificuldade.
Obrigado pela a aula!!
muito obrigado
Muito boa a aula . Ajudou demais , obrigado .
Muito legal Italo suas aulas, estão me ajudando muito, mas nessa aula eu me perdi...
Excelente vídeo.
Muito obrigado , professor ! Deus abençoe .
Aula fantástica, parabéns!
Foi de muita ajuda na prova, muito obrigado!
nossa! genial ajudo d+ no meu trabalho!..
Excelente explicação, bem detalhada, assisti esse vídeo e já me inscrevi no canal, vou assistir as aulas do começo!!!
Obrigado por mais uma aula, você é um excelente professor. Bem, pra mim não ficou muito claro a parte do "controle". Poderia fazer uma review desta parte do programa? Se poder agradeço muito, obrigado!
Tbm tive dificuldades em entender essa parte. ):
ótimas aulas, parabéns. Você poderia deixar links na descrição dos vídeos com exercícios sobre os assuntos, ajudaria mais ainda .
Parabéns pela didática e pelo ótimo trabalho
Cara show de bola vejo todas as suas aulas nota 10.
estou aprendendo muito mesmo, seria muito legal se você tive-se uma aula sobre outros algoritmos como o MergeSort que eu achei muito difícil e tenho certeza que com sua ajuda eu vou aprender
vlw cara continua assim :D
italo mt show seu canal e suas aulas :D sua didatica é impressionante!!
eu tenho uma dúvida.. como agt usa java na criação de jogos (pc, smartphone e tal)
Muito boa aula, tem me ajudado muito. Se puder, faz mais videos falando sobre os outros métodos de ordenação. Valeu ;)
show!
Muito bom !
Muito bom, parabéns!
Aula muito boa, como todas as outras. Mas difícil esse Bubble sort pqp
Gostei mt do video! Parabéns!
gostaria de saber, se vc possui algum video ou me indica algum de BS recursivo!
simples e direto
muito bom cara, valeeeeu !
Juliana Silva: Vc já tá desenvolvendo programa Juliana?
muito bom :D
programa ia rodar 6*6
quando fico em ordem parou com break; ótima aula
mais você devia te dado mais detalhes
como primeiro for roda e faz controle fica verdadeiro e quando tem algo no segundo for faz fica falso e quando não tem nada por causa do primeiro for faz parar devia ter dito que o segredo tava todo ali mais mesmo assim muito obg pela aula :D
pra deixar vetor em ordem crescente alem do Arrays.sort
tem o for
for (i=0; i
eu não sei pra que usar boolean pode usa qual quer coisa ali ate uma int no lugar dele e troca os números de referências
Boa noite professor
Acho que esse if(controle) {break;} deveria estar dentro das chaves do primeiro for...
Do jeito que está no vídeo esse if só é executado depois que terminam os dois for...
Ótimas aulas, obrigado!
Já escrevi Bubble Sort anteriormente e enferrujei.
Por gentileza, alguém explique a razão de um "for" dentro do outro.
Abraços.
O que o loop interno faz é comparar dois valores do vetor cada vez que é executado. Ou seja, se o loop interno for executado 6 vezes (no caso de vetor.length == 6), ele vai percorrer todo o vetor apenas 1 vez, o que na maioria das vezes não vai ser suficiente para ordenar todos os valores. Espero ter ajudado.
Valeu professor! Como faço para ver todas as suas aulas?
italo tem previsão para as aulas de get/set?
É assim o Brasil hoje em dia, o pessoal assiste e nem agradecem pensam que conhecimento é de graça, e que é obrigatório ter aula todas as vezes que necessita. Aí se o RUclips saísse do ar seria o máximo, todos os brasileiros seriam obrigados a ler livros. Porém isso talvez nunca aconteça então agradeçam com like ingratos...
"Professor" bom dia.
No Netbeans que utilizo, toda vez que mando executar um programa que desenvolvo, roda o programa anterior.
Preciso selecionar o programa com o botão direito do mouse para executá-lo.
Como posso resolver isso?
vish.. então cara.. eu ouvi dizer mesmo que tem um fórum hacker na deep web que roda umas vídeo aulas minha :o
mas eu não tenho idéia de qual é haha.
tem como você me passar o fórum?
nem tenho cara.... mas acho que até sei porque está perguntando isso.. você deve ter visto o link do canal em algum fórum da deep web, foi isso? Um pessoal chegou a comentar que que tinham links pro canal em um fórum da deep :D
Manoooooo, showwww!
Professor, eu encontrei o seu canal no forum hacker na deep web,o senhor poderia me passar alguns sites da deep?
Mestre, quando implemento a linha: if(controle){break;}, a ordenação não ocorre mais.
Bom dia!!excelente aulas,estou com um probleminha não consigo ordenar os números,se alguém poder ajudar-me obrigado!!!!!
Olá muito bom dia, nao entendo o pq usar o v[j+1] eu uso assim
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (vetor[i] < vetor[j]) {
aux = vetor[j];
vetor[j] = vetor[i];
vetor[i] = aux;
}
}
}
e funciona tranquilo, está errado?
Agradeço sua atenção :)
Suas aulas são ótimas, parabéns!
Mas, assim como outros aqui nos comentários, também tive dificuldades com o "controle".
Afinal, o "if" não roda só se j for maior que j+1?
Não entendi a necessidade do controle.
Obrigado!
Sim, o "if" só sera executado se j for maior que j+1.
A princípio o controle é definido como verdadeiro(true), se o vetor estiver desordenado, ou seja, j>j+1, o programa vai entrar no primeiro "if" e vai redefinir o controle para falso(false), dai não vai executar o comando break que esta dentro do segundo "if".
Mas caso se o vetor já estiver ordenado, ou seja j não será maior que j+1, o primeiro "if" não será lido, o que significa que o controle não sera alterado para falso(false), e logo depois no segundo"if" será executado o comando break pois o segundo "if" será verdadeiro(true).
Você tem uma versão recursiva?
Cara vc tem algum site na deep web? ou algum site que vc frequenta la de hacker
boa tarde, professor.
Acredito que tenha um erro no boolean, pois da maneira que foi colocado, os 2 "for" serão executados sempre. Fiz a variavel controle inicializando no primeiro for como "true" sempre, e dentro do if do segundo for, coloquei ela se tornando falsa caso entre, caso não entre, ela irá continuar "true" e quando sair do segundo for, dará o break. segue abaixo o Algoritmo. abraço e está me ajudando muito.
package estudos;
public class OrdenarBubbleSort
{
public static void main(String[] args)
{
int i,j,aux;
int[] vetor = {3,5,7,6,1,4,2};
boolean controle;
for(i = 0, controle = true; i < vetor.length; i++)
{
for(j = 0; j < (vetor.length - 1); j++)
{
if(vetor[j] > vetor[j+1])
{
aux = vetor[j];
vetor[j] = vetor[j+1];
vetor[j+1] = aux;
controle = false;
}
}
if(controle == true)
{
break;
}
}
for(i = 0; i < vetor.length;i++)
{
System.out.println(+vetor[i]+ " ");
}
}
}
+GamercraftBR 43 nao existe necessidade de especificar inicialmente sendo que eu atribuo algo dentro do laço de repetiçao
+GamercraftBR 43 na verdade eu posicionei o boolean diferente do professor, depois que me toquei disso... Tanto o meu jeito como o do professor dão a mesma coisa! Kkkk valeu mano
Valeu Raul :D
hmm cara.. eu não sei fazer jogos em Java.. ainda :D
Espero um dia chegar lá
mas vou te recomendar um site que acho bacana.. digite no google "zetcode java 2D"
tem um tutorial passo a passo :).. o site é inglês mas se estiver difícil de entender só jogar no google tradutor que acho que dá pra pegar a idéia
Vlws
O boolean foi desnecessário? Porque eu apaguei do meu código e rodou de boa.
+Caio Brito Não foi desnecessário, isso faz com que o programa seja mais eficiente para não fazer mais testes desnecessários.
Obg
Verdade... isso faz uma diferença grande quando está criando um app rs
ele era pra ter usado o "i" para comparar as casas do vetor... não entendi porque o programa dele rodou.
insertion sort?
Elimine a flag adicionando TAM - i - 1.
int i, j, aux;
for (i = 0; i < numeros.length - 1; i++) {
for (j = 0; j < (numeros.length - i - 1); j++) {
if (numeros[j] > numeros[j + 1]) {
aux = numeros[j];
numeros[j] = numeros[j + 1];
numeros[j + 1] = aux;
}
}
}
No video tem um erro ali no final, nada grande porém você esqueceu de colocar o if(controle == true){ break}
break num laço IF é má prática de programação, não?
o break não foi para o o if e na verdade "if" nem é um laço, foi para o "for" e até por isso funcionou.
Minha mente deu um nó agora
+Higor Elias irei entender é so questao de tempo kk.
Não entendi a necessidade do primeiro for, linha 11.
COMPLICADO ESSE NEGOCIO DE VETOR HEIN..KK
vc não viu nada imagine oop
eu acho oop mais facil do que arrays kskdks
Eu criei um código para que o usuário digite os números:
package aula;
import java.util.Scanner;
public class Bubble_Sort__Arrumador_de_Números_em_ordem_crescente {
public static void main(String args[]){
System.out.println("Arrumador de números em ordem crescente");
System.out.println("Quantos números vc quer organizar ?");
Scanner input = new Scanner(System.in);
int aux2 = input.nextInt();
int[] numeros = new int[aux2];
for(int k = 0; k < (numeros.length); ++k){
System.out.println("Qual o " + (k + 1) + "º" + "número");
numeros[k] = input.nextInt();
}
int aux;
boolean controle;
for(int i = 0; i < numeros.length; ++i){
for(int j = 0; j < (numeros.length - 1); ++j){
if(numeros[j] > numeros[j + 1]){
aux = numeros[j];
numeros[j] = numeros[j + 1];
numeros[j + 1] = aux;
}
}
}
for(int i = 0; i < numeros.length; ++i){
System.out.print(numeros[i] + " ");
}
}
}
public static void main(String[] args) {
Scanner ler = new Scanner(System.in);
int i, e;
int aux;
int v[] = new int[5];
for (e = 0; e < 5; e++) {
System.out.println("digite um numero" + (e));
v[e] = ler.nextInt();
}
for (e = 0; e < 5; e++) {
for (i = e + 1; i < 4; i++) {
if (v[e] > v[i]) {
aux = v[e];
v[e] = v[i];
v[i] = aux;
}
}
}
for (e = 0; e < 5; e++) {
System.out.println("ordenado: " + v[e]);
}
}
}
no lugar do 4 por 5 tbm ai roda perfeito