Tenho que criar um algoritmo, mas estou com dificuldades...
Escreva um procedimento PETEQS chamado iniciais(entradas: lista[], k)
que recebe dois parâmetros como entrada: um vetor de strings e um número inteiro k.
Seu procedimento deve examinar as strings no vetor recebido e imprimir as letras que
são as iniciais de pelo menos k strings no vetor. Em outras palavras, se k ou mais strings
no vetor começarem com a mesma letra, essa letra deverá fazer parte do conjunto de
letras impressas. Você pode considerar que todas as palavras no vetor de entrada são
compostas apenas por letras minúsculas.
Exemplo: Considere um vetor de entrada chamado lista contendo as seguintes strings:
lista = ["quando", "vou", "bar", "em", "bar", "viro", "a",
"mesa", "berro", "bebo", "e", "brigo", "que",
"viagem"]
Cinco palavras na lista começam com "b", três com "v", duas com "e", duas com "q",
uma com "a" e uma com "m". Portanto, a chamada iniciais(lista, 2), deveria
imprimir:
b
e
q
v
A chamada iniciais(lista, 3), deveria imprimir:
b
v
As chamadas iniciais(lista, 4), ou iniciais(lista, 5), deveriam imprimir:
b
A chamada iniciais(lista, 6) não deveria imprimir nenhuma letra.
Dica: Penso que ajudaria criar em sua função a variável local alfabeto. Algo como:
procedimento iniciais(entradas: lista[], k)
início
alfabeto ['a', 'b', 'c', 'd', 'e',
'f', 'g', 'h', 'i', 'j',
'k', 'l', 'm', 'n', 'o',
'p', 'q', 'r', 's', 't',
'u', 'v', 'w', 'x', 'y', 'z']
# o restante do seu código vai aqui...
Fim
Em sua solução, considere a existência em PETEQS das funções tamanho() e
charAt() cuja documentação é mostrada a seguir:
função tamanho(entradas: v[])
Retorna o número de elementos no vetor v recebido como parâmetro.
Exemplos:
imprima tamanho(["quando", "vou", "bar", "em", "bar"])
# imprimiria 5
função charAt(entradas: str, pos)
Retorna o caractere na posição pos da cadeia de caracteres str passada como
parâmetro.
Exemplo:
imprima charAt("CEDERJ", 3)
# imprimiria D
ALGORITMOS E IMPLEMENTAÇÕES ⇒ Procedimento em PETEQS
Moderador: [ Moderadores TTB ]