Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

danielswater

[Resolvido] Ordem crescente em vetor

Recommended Posts

e ai galera beleza?

seguinte, fiz um algoritmo para colocar em ordem crescente. a logica ta certa mas o visualg da um erro dizendo que o vetor[4] nao existe

 

alguem pode me da uma luz?

 

segue o codigo:

algoritmo "semnome"
// Função :
// Autor :
// Data : 12/11/2009
// Seção de Declarações
var
vet: vetor[0..3] de inteiro
i, aux, ultima: inteiro
inicio
// Seção de Comandos
para i de 0 ate 3 passo 1 faca
   escreva("digite um numero ")
   leia( vet[i])
fimpara

i <-0
ultima<-3

enquanto ultima <> 0 faca
   enquanto i <> ultima faca
      se vet[i] > vet[i+1] entao
         aux <- vet[i]
         vet[i] <- vet[i+1]
         vet[i+1] <- aux
      fimse
      i <- i+1
   fimenquanto
   i <-0
   ultima <- -1
fimenquanto


fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara vai ter um momento que i vai valer 3, sendo somado com mais 1, ira valer 4. vet[i+1]

 

Sendo que foi declarado só ate 3. [0..3]

 

Para melhor compreensão acho melhor começar do 1 e não ter o <>.

 

Tipo assim:

 

algoritmo "daniel"

var num : vetor[1..4] de inteiro

x, j, k : inteiro

 

inicio

 

para x de 1 ate 4 faca

leia(num[x])

fimpara

 

para x de 1 ate 3 faca

para j de x + 1 ate 4 faca

se (num[x] > num[j]) entao

k <- num[x]

num[x] <- num[j]

num[j] <- k

fimse

fimpara

fimpara

 

para x de 1 ate 4 faca

escreval(num[x])

fimpara

fimalgoritmo

 

 

Abraços. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

o leoanrdo brigadao cara, funcionou certinho

agora mais uma duvida aproveitando a ocasiao

 

to fazendo um algoritmo para localizar um determinado numero no vetor, so que da o mesmo problema, segue:

algoritmo "semnome"
// Função :
// Autor :
// Data : 12/11/2009
// Seção de Declarações 
var
vet: vetor[1..3] de inteiro
i, busca: inteiro
inicio
// Seção de Comandos
para i de 1 ate 3 passo 1 faca
escreva ("digite um numero ")
leia(vet[i])
fimpara

<-0
escreva("digite um numero para ser procurado ")
leia (busca)

enquanto (vet[i] <> busca) e (i <=3) entao
i <- i+1
fimenquanto

se vet[i] = busca entao
escreva ("o numero foi encontrado")
senao
escreva ("o numero nao foi encontrado")
fimse

fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só estava faltando uma variavel para ser atribuido o valor 1, é no enquanto... um faca.

 

algoritmo "semnome"

// Função :

// Autor :

// Data : 12/11/2009

// Seção de Declarações

var

vet: vetor[1..3] de inteiro

i, busca : inteiro

inicio

 

para i de 1 ate 3 passo 1 faca

leia(vet)

fimpara

 

escreva("digite um numero para ser procurado ")

leia (busca)

i <- 1

 

enquanto (vet <> busca) e (i <= 2) faca

i <- i + 1

fimenquanto

 

se (vet = busca) entao

escreva ("o numero foi encontrado")

 

senao

escreva ("o numero nao foi encontrado")

 

fimse

 

fimalgoritmo

 

Brother uma forma massa de encontrar o erro é dar um F8, ae você pode ver passo-a-passo e analisar o que esta acontecendo no quadro abaixo (onde tem escopo, nome..). :P

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só estava faltando uma variavel para ser atribuido o valor 1, é no enquanto... um faca.

 

algoritmo "semnome"

// Função :

// Autor :

// Data : 12/11/2009

// Seção de Declarações

var

vet: vetor[1..3] de inteiro

i, busca : inteiro

inicio

 

para i de 1 ate 3 passo 1 faca

leia(vet)

fimpara

 

escreva("digite um numero para ser procurado ")

leia (busca)

i <- 1

 

enquanto (vet <> busca) e (i <= 2) faca

i <- i + 1

fimenquanto

 

se (vet = busca) entao

escreva ("o numero foi encontrado")

 

senao

escreva ("o numero nao foi encontrado")

 

fimse

 

fimalgoritmo

 

Brother uma forma massa de encontrar o erro é dar um F8, ae você pode ver passo-a-passo e analisar o que esta acontecendo no quadro abaixo (onde tem escopo, nome..). :P

 

[]'s

 

 

nossa cara como nao pensei nisso antes kkkkkkkk...ou melhor...como nao vi isso antes

de qualquer forma valeu me velho

 

pode fechar o topico

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.