Home › Fóruns › Programação Básica › exer 61
Marcado: exerc 61
- Este tópico contém 10 respostas, 7 vozes e foi atualizado pela última vez 1 ano, 9 meses atrás por Tutora Jessica.
-
AutorPosts
-
-
15 de abril de 2022 às 10:17 #91364Daniel Moreira GarciaParticipante
bom dia
na minha solução do exercício 61 eu declarei a variavel que recebe a primeira letra como cadeia para usar a caixa_alta , e usei o extrair_subtexto.
funcionou perfeitamente então minha duvida é ….minha solução foi diferente e esta certa ou foi gambiarra.??escreva(“\nos nomes abaixo comecam com vogais\n”)
para (inteiro c=0;c<U.numero_elementos(nom);c++) {
primeiro1=T.extrair_subtexto(nom[c], 0, 1)
primeiro1=T.caixa_alta(primeiro1)
se (primeiro1==”A” ou primeiro1==”E” ou primeiro1==”I” ou primeiro1==”O” ou primeiro1==”U”) {
escreva(“[“+ c +”]=”+ nom[c] +” “) -
16 de abril de 2022 às 10:08 #91433IcaroFilhoModerador
Bom dia Daniel,
Você não fez nenhuma gambiarra, apenas dividiu em etapas o processo.
Excelente trabalho e bons estudos. -
22 de julho de 2022 às 21:19 #98067Rafael Cipriano da SilvaParticipante
A biblioteca de Texto especificamente a função
posicao_texto()
, me retorna a posição do caracter que eu preciso em um número inteiro. Mas como eu faço para que escreva o nome com o caracter desejado? -
23 de julho de 2022 às 12:32 #98092WEYNNE LIMAParticipante
Fiz um pouco diferente utilizando cadeia ao invés de caracter, para utilizar a função caixa_alta que funciona apenas com cadeia.
programa { inclua biblioteca Texto --> txt inclua biblioteca Util --> u funcao inicio() { escreva("{ EXERCÍCIO 061 - Analisando Nomes }\n") cadeia nome[6] inteiro tot1 = 0, tot2 = 0, tot3 = 0 para (inteiro p = 0; p < u.numero_elementos(nome); p++) { escreva("Nome para a posição [" + p + "]: ") leia(nome[p]) } u.aguarde(500) escreva("======= " + u.numero_elementos(nome) + " NOMES CADASTRADOS COM SUCESSO =======") u.aguarde(500) escreva("\n------------------ ANALISANDO -----------------") u.aguarde(1000) escreva("\nNomes com menos de 6 letras:\n") para (inteiro p = 0; p < u.numero_elementos(nome); p++) { se (txt.numero_caracteres(nome[p]) < 6) { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot1++ } } u.aguarde(500) escreva("TOTAL = " + tot1) escreva("\n-----------------------------------------------") u.aguarde(500) escreva("\nNomes que começam com vogal:\n") para(inteiro p = 0; p < u.numero_elementos(nome); p++) { se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == "A") { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot2++ } se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == "E") { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot2++ } se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == "I") { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot2++ } se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == "O") { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot2++ } se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == "U") { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot2++ } } u.aguarde(500) escreva("TOTAL = " + tot2) escreva("\n-----------------------------------------------") u.aguarde(500) escreva("\nNomes que possuem letra S:\n") para (inteiro p = 0; p < u.numero_elementos(nome); p++) { se (txt.posicao_texto("S", txt.caixa_alta(nome[p]), 0) != -1) { u.aguarde(500) escreva("[" + p + "] = " + nome[p] + " ") tot3++ } } u.aguarde(500) escreva("TOTAL = " + tot3) escreva("\n-----------------------------------------------") escreva("\n\n") } }
programa
{
inclua biblioteca Texto –> txt
inclua biblioteca Util –> u
funcao inicio()
{
escreva(“{ EXERCÍCIO 061 – Analisando Nomes }\n”)cadeia nome[6]
inteiro tot1 = 0, tot2 = 0, tot3 = 0para (inteiro p = 0; p < u.numero_elementos(nome); p++) {
escreva(“Nome para a posição [” + p + “]: “)
leia(nome[p])
}
u.aguarde(500)
escreva(“======= ” + u.numero_elementos(nome) + ” NOMES CADASTRADOS COM SUCESSO =======”)
u.aguarde(500)
escreva(“\n—————— ANALISANDO —————–“)
u.aguarde(1000)
escreva(“\nNomes com menos de 6 letras:\n”)
para (inteiro p = 0; p < u.numero_elementos(nome); p++) {
se (txt.numero_caracteres(nome[p]) < 6) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot1++
}
}
u.aguarde(500)
escreva(“TOTAL = ” + tot1)
escreva(“\n———————————————–“)
u.aguarde(500)
escreva(“\nNomes que começam com vogal:\n”)
para(inteiro p = 0; p < u.numero_elementos(nome); p++) {
se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == “A”) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot2++
}
se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == “E”) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot2++
}
se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == “I”) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot2++
}
se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == “O”) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot2++
}
se (txt.extrair_subtexto(txt.caixa_alta(nome[p]), 0, 1) == “U”) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot2++
}
}
u.aguarde(500)
escreva(“TOTAL = ” + tot2)
escreva(“\n———————————————–“)
u.aguarde(500)
escreva(“\nNomes que possuem letra S:\n”)
para (inteiro p = 0; p < u.numero_elementos(nome); p++) {
se (txt.posicao_texto(“S”, txt.caixa_alta(nome[p]), 0) != -1) {
u.aguarde(500)
escreva(“[” + p + “] = ” + nome[p] + ” “)
tot3++
}
}
u.aguarde(500)
escreva(“TOTAL = ” + tot3)
escreva(“\n———————————————–“)
escreva(“\n\n”)
}
}` -
23 de julho de 2022 às 13:22 #98094ROSANGELA MENDESParticipante
Eu fiz assim e deu certo!
inteiro totLS =0 //total letras s
escreva(“Nomes que possuem a letra S… “)
para (inteiro pos =0; pos < Util.numero_elementos(nome); pos++){
se (Texto.posicao_texto(“S”, Texto.caixa_alta(nome[pos]),0)!= -1){
escreva(“[“, pos, “]=”, nome[pos], ” “)
Util.aguarde(500)
totLS++
}
}
escreva(“\n—–> TOTAL = “, totLS) -
23 de julho de 2022 às 15:45 #98100Rafael Cipriano da SilvaParticipante
Obrigado, era só esse exercício que precisava terminar. Cheguei tinha esquecido que dava para usar uma função da biblioteca dentro de outra!
-
28 de janeiro de 2023 às 00:17 #109485Tatiana Azer MalufParticipante
Boa noite
Segue exercício para correção:programa { inclua biblioteca Util inclua biblioteca Texto funcao inicio() { cadeia vet [6] inteiro tot = 0 para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { escreva ("Nome para a posição [" + pos + "]: ") leia (vet [pos]) tot++ } escreva ("\n===== " + tot + " NOMES CADASTRADOS COM SUCESSO =====") Util.aguarde (300) escreva ("\n\n---------- ANALISANDO ----------") Util.aguarde (300) escreva ("\nNomes com menos de 6 letras: ") Util.aguarde (300) para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { se (Texto.numero_caracteres (vet [pos]) < 6) { escreva ("\n[" + pos + "] = " + vet [pos] + " ") Util.aguarde (200) } } escreva ("\n-------------------------------------") escreva ("\nNomes que começam com vogal: ") para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { se (Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'A' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'E' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'I' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'O' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'U') { escreva ("\n[" + pos + "] = " + vet [pos] + " ") Util.aguarde (300) } } escreva ("\n-------------------------------------") escreva ("\nNomes que possuem a letra S: ") para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { se (Texto.posicao_texto ("S", Texto.caixa_alta (vet [pos]), 0) != -1) { escreva ("\n[" + pos + "] = " + vet [pos] + " ") Util.aguarde (300) } } escreva ("\n\n") } }
-
28 de janeiro de 2023 às 00:26 #109486Tatiana Azer MalufParticipante
Perdão, segue com os totais:
programa { inclua biblioteca Util inclua biblioteca Texto funcao inicio() { cadeia vet [6] inteiro tot = 0, tot1 = 0, tot2 = 0, tot3 = 0 para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { escreva ("Nome para a posição [" + pos + "]: ") leia (vet [pos]) tot++ } escreva ("\n===== " + tot + " NOMES CADASTRADOS COM SUCESSO =====") Util.aguarde (300) escreva ("\n\n---------- ANALISANDO ----------") Util.aguarde (300) escreva ("\nNomes com menos de 6 letras: ") Util.aguarde (300) para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { se (Texto.numero_caracteres (vet [pos]) < 6) { escreva ("\n[" + pos + "] = " + vet [pos] + " ") Util.aguarde (200) tot1++ } } escreva (" Total = " + tot1) escreva ("\n-------------------------------------") escreva ("\nNomes que começam com vogal: ") para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { se (Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'A' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'E' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'I' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'O' ou Texto.obter_caracter (Texto.caixa_alta (vet [pos]), 0) == 'U') { escreva ("\n[" + pos + "] = " + vet [pos] + " ") Util.aguarde (300) tot2++ } } escreva (" Total = " + tot2) escreva ("\n-------------------------------------") escreva ("\nNomes que possuem a letra S: ") para (inteiro pos = 0; pos < Util.numero_elementos (vet); pos++) { se (Texto.posicao_texto ("S", Texto.caixa_alta (vet [pos]), 0) != -1) { escreva ("\n[" + pos + "] = " + vet [pos] + " ") Util.aguarde (300) tot3++ } } escreva (" Total = " + tot3) escreva ("\n\n") } }
-
30 de janeiro de 2023 às 10:33 #109586Tutora JessicaModerador
Ola Tatiane, esta com alguma dúvida?
-
30 de janeiro de 2023 às 13:39 #109593Tatiana Azer MalufParticipante
Meu código ficou um pouco diferente do professor, está correto assim?
-
30 de janeiro de 2023 às 15:22 #109595Tutora JessicaModerador
Olá Tatiana, se esta funcionando conforme pedido pelo exercício, sim esta correto.
Cada um tem sua própria forma de programar, e nenhuma esta errada.
Se atente sempre a fazer exatamente o que o exercício manda e veja os vídeos com os exercícios sendo feitos para ter ideia de outras formas de código.
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.