-
Posts
18 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por claudiocj
-
-
pessoal agradeço a ajuda, mas não tenho ideia de como fazer isso eu queria que fosse assim a pessoal digitasse um palavra "exemplo" e ela fosse trocando de par em par e se for impar a quantidade de letras manteria o no final.
o EXEMPLO FICANDO ASSIM "XEMELPO" ENTENDI.
- 1
-
como faço para usar esse mesmo conceito só que usando par de letras,
segue o código:
algoritmo "ordenação" var vet: vetor [1..4] de inteiro i, j,aux : inteiro inicio Para i <- 1 ate 4 faca escreva("Digite um Valor: ") Leia (vet [i]) FimPara para i <- 1 ate 3 faca para j <- i+1 ate 4 faca se(vet[i] > vet[j]) Entao aux <- vet[i] vet[i] <- vet[j] vet[j]<- aux FimSe FimPara FimPara para i <- 1 ate 4 faca escreva("{",vet[i],"}") Fimpara fimalgoritmo
- 1
-
11 horas atrás, devair1010 disse:
@claudiocj eh nesse caso daria erro , então para resolver você pode colocar o valor que você quiser no vetor até 100 ou mais aí não daria problema . então depois que a pessoa digitar a palavra você pega o tamanho dela usando o comando compr para usar no loop para indo de 1 até o tamanho da palavra e coloca ela no vetor e depois pode fazer do jeito que está no seu código mesmo que funcionará bem .
ixii agora fundiu meu cérebro kkkkk..
vou postar aqui o que eu quero pra ver se fica melhor a compreensão.
Em PETEQS uma string pode ser tratada como um vetor de caracteres. Observe por
exemplo a função inverte(entradas: frase) a seguir que recebe uma string como
parâmetro e retorna uma nova string que é o inverso da string original.função inverte(entradas: frase) início resultado frase para i 1 até tamanho(frase)/2 faça aux frase resultado frase[tamanho(frase)-i+1] resultado[tamanho(frase)-i+1] aux próximo i fim
Na construção desse algoritmo, foi usada a função tamanho(entradas: frase) que
retorna o número de caracteres em uma string.
Considere o seguinte exemplo de uso:programa exemplo início imprima inverte("exemplo") imprima inverte("reviver") fim
A saída do programa seria:
olpmexe reviver
Sua tarefa: Escreva o algoritmo da função trocaPares(entradas: frase) que
recebe uma string como parâmetro e retorna uma nova string em que os pares de letras
consecutivas na string original são invertidas. Se a string de entrada tiver um número
ímpar de letras, a última letra deve permanecer inalterada. A seguir, você pode ver um
exemplo de teste da função:programa exemplo início imprima trocaPares("exemplo") imprima trocaPares("decantador") imprima trocaPares("entre paredes") fim
A saída do programa seria:
xemelpo edactndaro nert eapereds
- 2
-
3 minutos atrás, devair1010 disse:
@claudiocj nesse caso vcê precisa colocar no vetor de caractere todas as letras da palavra , então seria assim :
Algoritmo "vetor de caractere" Var vet : vetor[1..10] de caractere palavra : caractere j,k : inteiro Inicio palavra := "qualquer" para j de 1 ate 8 faca vet[j] := copia(palavra;j;1) fimpara escreval(vet[2]) escreval(vet[5]) Fimalgoritmo
certo se a pessoa digitar uma palavra acima de 10 carácter o acontece?
- 1
-
não consigo acompanhar o raciocino como seria?
- 1
-
22 minutos atrás, devair1010 disse:
@claudiocj essa linha do jeito que você colocou não funciona mesmo não , experimente colocar assim :
se compr(palavra) mod 2 = 0 entao
corrigi e o erro passou para baixo.
adicionado 1 minuto depoiscomo ficaria se eu usasse vetor tem como ?
- 1
- 1
-
16 horas atrás, Simon Viegas disse:Spoiler
Olá.
1#
Como citado por @devair1010, o comando correto ser comp(), em vez de tamanho().
2#
Sobre o erro:
O comando se/entao funciona analisando o valor lógico que está em entre o se e o entao. Algo assim:
se (<"a resultante do que estiver aqui for VERDEIRO">) entao <"faço o quê está dentro se">
Lá no seu código, você utilizou:
Certo? como tem um "()" dentro do outro, faz-se os internos primeiro... logo:
(palavra mod 2 = 0)
Creio eu que você já saiba como funciona essa estrutura... então, "isso" vai resultar em VERDADEIRO ou FALSO. Logo, seria algo como:
(tamanho (<"VERDAEIRO ou FALSO">))
Oras! o que seria "tamanho de VERDADEIRO"? Entende? A expressão não faz sentido... (pelo menos para Visualg).
obs.: lembrando que o comando correto é comp(), e não tamanho().
3#
Analisando, supostamente você queria algo assim:
se (compr(palavra) mod 2 = 0) entao
Ou seja, primeiro pega o comprimento de palavra, depois calcula o resto da divisão por 2, depois compara com 0. Tudo isso vai resulta em VERDADEIRO ou FALSO. Logo, com uma sintaxe válida.
RESUMINDO: se o número for par, eu uso o tamanho da palavra, se não for (é ímpar), subtraio em 1 para o resultado ficar par.
***
Por ai vai...
No aguardo.
Então, mesmo usando esse comando compr, não passa desse ponto. Tentei usar o Portugol, mas não conheço muito bem.
- 1
-
4 horas atrás, Simon Viegas disse:
Por que as variáveis estão com as nomenclaturas TjgFeitos e TjgSofridos? de o
me referi a total de Jogos feitos e total de jogos sofridos
adicionado 2 minutos depois4 horas atrás, Simon Viegas disse:se
realmente é isso mesmo eu tirei e não reparei, o algorítimo rodo perfeitamente então passo despercebido vou corrigir
adicionado 5 minutos depois4 horas atrás, Simon Viegas disse:4#
não sei porque mais se eu botar no singular aparece como não tivesse posto dentro da variável (var) principalmente o empate
adicionado 8 minutos depois4 horas atrás, Simon Viegas disse:3#
esse ponto tive que criar essa variável, pós eu não estava conseguindo o resultado esperado que era jogos sem fazer gols, só consegui dessa maneira "gambiarra"
-
como resolvo esse problema no visual g esta dando erro quando testa. da erro "se (tamanho (palavra mod 2 = 0)) entao" aqui
Var palavra: caractere aux: caractere t:inteiro c, i :inteiro Inicio t <- 0 aux <- "" leia (palavra) se (tamanho (palavra mod 2 = 0)) entao t <- palavra senao t <- tamanho(palavra) -1 fimse enquanto t > 0 faça aux <- palavra[c] palavra [c] <- (palavra [c+1]) palavra [c+1] <- aux t < t-2 c <- c+2 c <- -1 fimenquanto escreval (palavra) Fimalgoritmo
- 1
-
9 horas atrás, Simon Viegas disse:
Oi. Posta o código completo para analisarmos e, também, poder servi de bases para possíveis outros usuários.
No aguardo.
Var pontos :inteiro mediaGols :real vitorias :inteiro saldoGf :inteiro empates :inteiro partida :inteiro JogosSemfg : inteiro TjgFeitos :inteiro golsFeitos :inteiro TjgSofridos :inteiro golsSofridos :inteiro Inicio golsFeitos <- 0 saldoGf <- 0 golsSofridos <- 0 vitorias <- 3 empates <- 1 TjgFeitos <- 0 golsSofridos <- 0 saldoGf <- 0 para partida <- 1 ate 12 faca escreval("Jogo ",partida:1,"?") leia (golsFeitos, golsSofridos) se golsFeitos = 0 entao JogosSemfg <- JogosSemfg + 1 fimse se golsFeitos > golsSofridos entao pontos <- pontos + vitorias fimse se golsFeitos = golsSofridos entao pontos <- pontos + empates fimse JogosSemfg <- golsFeitos - golsSofridos TjgFeitos <- TjgFeitos + golsFeitos TjgSofridos <- TjgSofridos + golsSofridos fimpara saldoGf <- TjgFeitos - TjgSofridos mediaGols <- TjgFeitos / partida escreval("Pontos: ", pontos) escreval("Saldo de Gols: ", saldoGf) escreval("Jogos sem fazer Gols: ", JogosSemfg) escreval("Média de Gols por Jogo: ", mediaGols) Fimalgoritm
código completo. muito obrigado
-
Citação:
SpoilerEm 23/10/2018 às 09:45, Simon Viegas disse:1#
Sobre:
Sugestão de variáveis:
Lembrando que é apenas um esboço. Tente entender para que funciona cada variável. Pode renomear para outras nomenclaturas ao seu gosto... incluir ou remover variáveis... etc....
2#
Então, entenda o "contexto do mundo real". Um algoritmo em Visualg seria uma "representação dele"...
Por exemplo:
Nesse trecho temos:
Temos que 3 é a quantidade de gols feitos pelo time (que está sendo analisado) e 1 a quantidade de gols sofridos
pelo mesmopor ele... pois assim sugere o enunciado:No algoritmo foi sugerido:
Ou seja, golsFeitos é a variável que recebe os "gols feitos pelo time". E golsSofridos, adivinha?
Perceba que a nomenclatura dessas variáveis por si sós já induzem a que elas foram propostas...
Ao fazer isso:
Sem precisar se aprofundar muito, já perceberíamos que está "alterando o placar do jogo"!
Oras! a ideia é que aprenda a aprender que tem algo errado aí!! Entende?
3#
Para efeitos didáticos, vamos supor que o meu time é o Bahia e o primeiro jogo foi contra o Vicitória.
Quanto foi o jogo? 3x1.
Beleza... vamos focar no enunciado (aquilo que foi pedido para ser feito):
Ele quer saber quantos ponto o Bahia conseguiu no campeonato, logo, seria a "soma dos pontos conquistados partida a partida". Como sei quantos ponto ele ganhou nesse primeiro jogo? parte disso já temos:
Certo? aí identificamos qual foi a "categoria" (vitória, empate ou derrota). O que acontece em cada categoria? somaremos os respectivos pontos! Mas onde estão os valores dos pontos? pelo esboço (que supondo que já foi revisado por você), está lá nas constantes... (VITORIA, EMPATE e DERROTA). Já as variáveis, vitorias, empates e derrotas são outra coisa... estes últimos são o "NÚMERO DE...", ou seja, "quantas vitórias o time teve". E não o "VALOR DE...", no caso, "quantos pontos vale" (como citado, está nas constantes).
obs.: se não quiser usar constante, passe para variável, mas entenda que são duas variáveis distintas, como por exemplo: vitoria (valor da vitória) e vitorias (número de vitórias).
Logo, poderia ficar algo como:
se golsFeitos > golsSofridos entao //se fez mais gol que sofreu pontos <- pontos + VITORIA //adiciona os pontos referentes à vitória senao se golsFeitos = golsSofridos entao //se foi fez a mesma quantidade que sofreu pontos <- pontos + EMPATE //adiciona os pontos referentes ao empate senao pontos <- pontos + DERROTA //adiciona os pontos referentes à derrota fimSe fimSe
Faz essas alterações... suponha que só precisa responder essa alínea a) do enuniciado. Testa e ver se está contabilizando os pontos satisfatoriamente.
4#
Vamos pegar outra parte do enunciado...
O que é "um saldo"? o enunciado já disse claramente aí acima...
Então, onde está os gols feitos e gols sofridos pelo time no campeonato? logicamente estão nas variáveis golsFeitos e golsSofridos, correto? Se achou que sim, por favor releia o 2# e 3#!!!
Existe alguma coerência de ser essas duas variáveis??? seria viável as mesmas variáveis que leem o placar de um jogo (que são novos a cada jogo), servirem também para armazenar os somatórios de gols do time (que vai acumulando ao longo do campeonato)? é esse tipo de raciocínio que estou tentando estimular!
Analisando lá variáveis encontramos:
Entende? a escolha das variáveis entra no item 1# desta postagem. Essas variáveis podem ser definidas a medida vai interpretando o enunciado e/ou a medida que vai implementando novos recursos no código etc. "Ah! mas, por exemplo, o nome golsFeitos confundem-me". Ok. Mas veja que foi inserido comentários para tentar explicar para que cada variável serve. "Ah! mas os comentários não estão claros". Então reorganize as variáveis..... Os ajustes podem ser feitos a medida que vai identificando possíveis melhoras... ou aprendendo novos conceitos.. Por exemplo, agora mesmo eu imaginei que poderia usar golCasa e golsVisitante (ou golsTimeCasa e golsTimeVisitante), em vez de golsFeitos e golsSofridos. Por ai vai!!!
Mas emfim. O que seria os "gols pró"? é análogo aos pontos... ou seja, vai acumulando a cada jogo, ex.:
Poderia ser algo como:
para partida <- 1 ate 2 faca escreval("Jogo ",partida:1,"?") leia(golsFeitos) leia(golsSofridos) se golsFeitos > golsSofridos entao //se fez mais gol que sofreu pontos <- pontos + VITORIA //adiciona os pontos referentes à vitória senao se golsFeitos = golsSofridos entao //se foi fez a mesma quantidade que sofreu pontos <- pontos + EMPATE //adiciona os pontos referentes ao empate senao pontos <- pontos + DERROTA //adiciona os pontos referentes à derrota fimSe fimSe golsPro <- golsPro + golsFeitos //atualiza o números de gols pro golsContra <- golContra + golsSofridos //atualiza o números de gols contra fimPara
Então, até o momento (supostamente) está tratando dos pontos e dos gols pro e contra.
O saldo de gols e média só precisam ser calculados quando for usá-los, ou seja, depois de ler todos os jogos.
***
Sugestão: tente ler 2 ou 3 jogos e imprimia APENAS os pontos ganhos, os gols pró e os gols contra.
PS: lembrando que não é interessante tentar fazer tudo de vez. É preferível fazer por partes (poderíamos chamar de "módulos". Faz a letra "A" do enunciado, depois a "B" etc).
Em caso de dúvidas sobre qualquer parte é só perguntar.
No aguardo.
Consegui muito obrigado, ajudou muito.
- 1
-
tentei usar seu 1 exemplo, fiquei enrolado, só que eu não sei como usar essas duas
golsPro :inteiro //total de gols feitos golsContra :inteiro //total de gols sofridos
como esquematizar, usando se e então ?
-
Em 20/10/2018 às 20:08, Simon Viegas disse:
Onde?
Os código que eu postei são esboços... você precisa editar e dar continuidade.
Boa noite, quase resolvi essa questão só não entendo porque gols feito e gols sofrido não subtraem para da o resultado de jogos sem fazer gol.
Algoritmo "PDA" // Disciplina : [Projeto de Desenvolvimento de Algaritimos] // Professor : Antonio Carlos Nicolodi // Descrição : Aqui você descreve o que o programa faz! (função) // Autor(a) : Cláudio Cotrim Jr // Data atual : 21/10/2018 Var pontos :inteiro //total de pontos ganhos mediaGols :real //média de gols por partida vitorias :inteiro //número de vitórias empates :inteiro //número de empates partida :inteiro //número da partida (controlador do para) golsFeitos :inteiro //gols feitos na partida golsSofridos:inteiro //gols sofridos na partida Inicio golsFeitos <- 0 golsSofridos <-0 vitorias <- 3 empates <-1 para partida <- 1 ate 12 faca escreval("Jogo ",partida:1,"?") leia (golsFeitos) leia (golsSofridos) se golsFeitos > golsSofridos entao pontos <- pontos + vitorias senao se golsFeitos = golsSofridos entao pontos <- pontos + empates fimse fimse fimpara golsFeitos <- golsFeitos + 1 golsSofridos <- golsSofridos + 1 mediaGols <- golsFeitos + golsSofridos + partida escreval("Pontos: ", pontos) escreval("Saldo de Gols: ", golsFeitos) escreval("Jogos sem fazer Gols: ", golsFeitos - golsSofridos) escreval("Média de Gols por Jogo: ", mediaGols / 12) Fimalgoritmo
- 1
-
o meu visualg não esta aceitando o se e então
-
começando a entender
-
Estou precisando de ajuda de como resolver isso:
(a) (1.25 ponto) Quantos pontos o time conseguiu no campeonato, sabendo que uma
vitória vale três pontos e um empate um ponto. Uma derrota não conta nenhum
ponto.
(b) (1.25 ponto) O saldo de gols do time. Isto é calcule a diferença entre os gols
feitos e os gols sofridos.
(c) (1.25 ponto) Em quantos jogos o time não fez nenhum gol.
(d) (1.25 ponto) A média de gols que o time fez por jogo.
Os resultados dos jogos devem ser fornecidos no formato indicado abaixo. O primeiro
valor inteiro é número de gols que o time fez e o segundo quantos ele sofreu.
Jogo 1?
3 1
Jogo 2?
1 3
Jogo 3?
2 2
Jogo 4?
1 1
Jogo 5?
0 2
Jogo 6?
2 1
Jogo 7?
0 0
Jogo 8?
2 0
Jogo 9?
2 0
Jogo 10?
1 0
Jogo 11?
0 3
Jogo 12?
3 0
Para os dados mostrados no exemplo acima os resultados impressos pelo algoritmo
devem ser.
Pontos: 21
Saldo de gols: 4
Jogos sem fazer gols: 3
Media de gols por jogo: 1.417Var pontos: inteiro golfeito: inteiro golsofrido: inteiro empate: inteiro saldogols: inteiro mediagol: real i: inteiro vitoria, impate: inteiro Inicio vitoria <- 3 impate <- 1 pontos <- 0 golfeito <- 0 golsofrido <- 0 mediagol <- 0 para i <- 1 até 12 faça se golfeito > golsofrido = vitoria senao impate escreva("Jogo 1: ") leia (golfeito) leia (golsofrido) pontos <- vitoria fimse fimpara escreva("Jogo 2: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 3: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 4: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 5: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 6: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 7: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 8: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 9: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 10: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 11: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreva("Jogo 12: ") leia (golfeito) leia (golsofrido) pontos <- pontos + golfeito escreval("mediagol: ", golfeito*12/2) escreval("pontos : ", vitoria+impate) escreval("Saldo : ", pontos+golsofrido) Fimalgoritmo
- 1
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais
troca pares gerando erro
em Programação - iniciantes
Postado
Algoritmo "troca" Var palavra,troca: caractere t:inteiro v :inteiro funcao trocaPares (v:inteiro):caractere var c:inteiro palavra, aux:caractere inicio v <- compr(palavra) enquanto v > 0 faca //letra ç aux <- aux + copia(palavra;v;1) v <- v-1 fimenquanto palavra := aux retorne palavra fimfuncao Inicio escreva("Digite uma palavra: ") leia (palavra) escreval("Palavra Trocada é: ", troca) Fimalgoritmo
fiz assim só não funciona.
eu fiquei ate perdido já, queria testar no visualg ou no portugol esse algaritimo de troca de letras não inverte.