Preciso de ajuda Bubble Sort - strings

1. Preciso de ajuda Bubble Sort - strings

Fernando Bruno de Oliveira
fbruno

(usa Ubuntu)

Enviado em 22/06/2022 - 20:31h

Preciso fazer um código que permita o usuário digitar 10 numeros OU strings e ordenar com o método BUBBLE SORT. A parte dos números está executando bem, mas a ordenação das strings não funciona! Alguém pode me ajudar??

Abaixo segue o código que rascunhei:

#!/bin/bash

echo "Digite N para números ou S para strings:"
read -n1 opcao
case $opcao in
"N" | "n") {

# Entrada dos números
echo
echo -e "\nDigite os números aqui:"
for (( i = 0; i < 10; i++ ))
do
read num[$i]
done

# Bubble Sort
for (( i = 0; i < 10 ; i++ ))
do
for (( j = $i; j < 10; j++ ))
do
if [ ${num[$i]} -gt ${num[$j]} ]; then
t=${num[$i]}
num[$i]=${num[$j]}
num[$j]=$t
fi
done
done

# Números na ordem
echo -e "\nNúmeros organizados pelo método Bubble Sort: "
for (( i=0; i < 10; i++ ))
do
echo ${num[$i]}
done
}

;;


"S" | "s") {

# Entrada das palavras
echo
echo -e "\nDigite as palavras aqui:"
for (( i = 0; i < 10; i++ ))
do
read plv[$i]
done

# Bubble Sort
for (( i = 0; i < 10; i++ ))
do
for (( j = $i; j < 10; j++ ))
do
if [ ${plv[$i]} > ${plv[$j]} ] ; then
t=${plv[$i]}
plv[$i]=${plv[$j]}
plv[$j]=$t

fi
done
done

# Palavras na ordem
echo -e "\nPalavras organizadas pelo método Bubble Sort: "
for (( i= 0; i < 10; i++ ))
do
echo ${plv[$i]}
done
}

;;

*)
echo
echo -e "\nOpção inválida."
echo -e "Finalizando.\n"

esac


  


2. Re: Preciso de ajuda Bubble Sort - strings

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 23/06/2022 - 14:35h

Bruno, boa tarde.
[ ${plv[$i]} > ${plv[$j]} ]
Esse teste não funciona, e a sintaxe está errada....
Voce deve atribuir um número para cada letra da palavra e testar cada um deles com os da próxima palavra.

______________________________________________________________________
Att.: Marcelo Oliver
______________________________________________________________________







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts