Escreva um algoritmo que leia 10 valores numéricos e exiba-os em ordem crescente. Utilize a técnica de ordenação Bubble Sort para ordenar os valores.

Algortimo de ordenação Bubble SortFala galera da Programação, tudo bem com vocês? Hoje vocês vão ver comigo como montar um algoritmo para a ordenação de valores usando a técnica do Bubble Sort.

Para realizar o Bubble Sort, siga os seguintes passos:

  • Compare os elementos adjacentes da lista.
  • Se eles estiverem em ordem errada (o primeiro é maior que o segundo), troque-os de posição.
  • Repita o processo até que nenhuma troca seja necessária, indicando que a lista está ordenada.

Ao final, exiba os valores ordenados.

 

Vamos a um exemplo em algoritmos

Algoritmo diferenca_valores
Declare valor1, valor2, diferenca como real

Escreva "Digite o primeiro valor: "
Leia valor1

Escreva "Digite o segundo valor: "
Leia valor2

Se valor1 > valor2 Então
   diferenca <- valor1 - valor2
Senão
   diferenca <- valor2 - valor1
FimSe

Escreva "A diferença entre os valores é: ", diferenca

FimAlgoritmo

Explicação do algoritmo

Este algoritmo utiliza a técnica de ordenação Bubble Sort para ordenar 10 valores numéricos digitados pelo usuário. Primeiro, é feita a leitura dos valores em um vetor.

Em seguida, utiliza-se um loop duplo para comparar cada par de valores e, se o valor da posição i for maior que o valor da posição j, troca-se as posições dos valores.

Esse processo é repetido até que todos os valores estejam ordenados. Por fim, os valores são exibidos em ordem crescente.

 

Vamos ver Bubble Sort em Python?

# leitura dos 10 valores
valores = []
for i in range(10):
    valor = float(input(f"Digite o {i+1}º valor: "))
    valores.append(valor)

# algoritmo Bubble Sort para ordenação crescente
for i in range(len(valores)):
    for j in range(len(valores)-1):
        if valores[j] > valores[j+1]:
            valores[j], valores[j+1] = valores[j+1], valores[j]

# exibição dos valores ordenados
print("Valores em ordem crescente:")
for valor in valores:
    print(valor)

 

Explicação do código Python

Primeiramente, o programa lê os 10 valores numéricos através de um loop for. Em seguida, é realizado o algoritmo Bubble Sort para ordenar os valores em ordem crescente.

O Bubble Sort funciona comparando os elementos adjacentes da lista, e caso um seja maior que o outro, eles são trocados de posição. Esse processo é repetido até que a lista esteja completamente ordenada.

Por fim, é exibida a lista ordenada em ordem crescente utilizando outro loop for.

 

Sugestão de resposta em C / C++

#include <stdio.h>

int main()
{
    int vetor[10], i, j, aux;

    // Lendo os valores
    for(i=0; i<10; i++){
        printf("Digite o %do valor: ", i+1);
        scanf("%d", &vetor[i]);
    }

    // Ordenando com Bubble Sort
    for(i=0; i<9; i++){
        for(j=i+1; j<10; j++){
            if(vetor[i]>vetor[j]){
                aux = vetor[i];
                vetor[i] = vetor[j];
                vetor[j] = aux;
            }
        }
    }

    // Exibindo em ordem crescente
    printf("\nValores em ordem crescente: ");
    for(i=0; i<10; i++){
        printf("%d ", vetor[i]);
    }

    return 0;
}

Explicação do código em C / C++

No código acima, primeiro declaramos um vetor de tamanho 10 e duas variáveis auxiliares do tipo inteiro para auxiliar na ordenação. Em seguida, utilizamos um loop for para ler os valores digitados pelo usuário e armazená-los no vetor.

Em seguida, utilizamos a técnica de ordenação Bubble Sort para ordenar os valores do vetor em ordem crescente. Para isso, utilizamos dois loops for aninhados: o primeiro percorre o vetor até o penúltimo elemento e o segundo percorre o vetor a partir do elemento seguinte ao elemento do primeiro loop até o último elemento. Dentro desses loops, comparamos os valores adjacentes e, se o valor do elemento atual for maior do que o valor do próximo elemento, fazemos a troca entre eles.

Por fim, utilizamos outro loop for para exibir os valores do vetor já ordenados em ordem crescente.

 

Sugestão de Resposta em Javascript

// lê os 10 valores
let valores = [];
for (let i = 0; i < 10; i++) {
  valores[i] = parseInt(prompt(`Digite o valor ${i+1}:`));
}

// ordena os valores com Bubble Sort
for (let i = 0; i < valores.length - 1; i++) {
  for (let j = 0; j < valores.length - i - 1; j++) {
    if (valores[j] > valores[j+1]) {
      let temp = valores[j];
      valores[j] = valores[j+1];
      valores[j+1] = temp;
    }
  }
}

// exibe os valores ordenados
console.log("Valores em ordem crescente:");
for (let i = 0; i < valores.length; i++) {
  console.log(valores[i]);
}

Explicando o código em Javascript

Conforme o código acime, usamos um loop para ler os 10 valores digitados pelo usuário e armazená-los em um array chamado valores. Em seguida, implementamos o algoritmo de ordenação Bubble Sort com outro par de loops, onde comparamos cada par de elementos e os trocamos de lugar caso estejam fora de ordem.

Por fim, exibimos os valores em ordem crescente no console. É importante notar que, ao usar o console.log(), os valores aparecerão na ordem em que foram digitados. Para exibir na ordem correta, é preciso usar alguma técnica de formatação de saída.

 

Exemplo de resposta em Pascal / Delphi / Lazarus

Para Pascal / Delphi / Lazarus publicamos no site Show Delphi.

Acessar o Exemplo em Pascal / Delphi / Lazarus.

 

Beleza pessoal? Neste post vimos mais a respeito do algoritmo de ordenação Bubble Sort e espero que possa ajudar nos seus estudos.

Dúvidas ou sugestões em outras linguagens? Deixe o seu comentário!

Um abraço e até o próximo post! Valeu!

  • Publicado por Giovani Da Cruz
  • 39 views
  • 0 comentarios
  • 22 de abril de 2023

 

Está gostando do conteúdo?
Considere pagar um cafezinho para nossa equipe!

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Posts Relacionados a Categoria Algoritmos com Laços

Continue aprendendo

Aumente o seu conhecimento
Crie um algoritmo e um programa que leia 5 números e escreva o maior e o menor desses 5 números, nessa ordem.
29 de abril de 2024
Crie um algoritmo e um programa que leia 5 números e informe o maior número
10 de abril de 2024
Crie um algoritmo e um programa que solicite ao usuário digitar seis números inteiros. O programa deverá somar os valores pares informados e mostrar o resultado desta soma na tela.
18 de fevereiro de 2024
Crie um algoritmo e um programa em que solicite ao usuário digitar sete números inteiros. O programa deverá contar e mostrar na tela a quantidade de valores ímpares informados.
15 de fevereiro de 2024
Crie um algoritmo e um programa que leia 5 números e mostre o maior e o menor.
5 de fevereiro de 2024
Crie um programa e um algoritmo para listar os 1000 primeiros números primos.
23 de janeiro de 2024
Crie um programa e um algoritmo para listar os 4 primeiros números perfeitos.
19 de janeiro de 2024
Crie um programa e um algoritmo para listar os 1000 primeiros números felizes.
4 de dezembro de 2023
Crie um algoritmo e um programa para descobrir os 100 primeiros naturais que possuam raízes quadradas inteiras
28 de novembro de 2023
Exercício de algoritmo: Sequência de Fibonacci
24 de novembro de 2023