Ir para conteúdo

POWERED BY:

Arquivado

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

TCHE

[Resolvido] armazenamento em vertoes

Recommended Posts

pessoal é o seguinte, na verdade ja estou ate constrangido de postar, pq nesse forum so apareci meu nick de usuario parece q apenas eu tenho dulvidas ñ vejo ninguem postando suas dulvidas, acho q ja estou abusando muito qualquer coisa podem pedir pro dar um tempo, pq de instrutor so tenho o forum.

 

mesmo assim

 

tenho que fazer um algoritmo que leia e monte dois vetores 1 e 2 de N posições com números reais positivos. Depois de montados procure por cada elemento do vetor 1 no vetor 2 e armazene as suas respectivas posições ( somente do primeiro número achado ) em um vetor 3, sendo que os elementos do vetor 1 que não forem encontrados no

vetor 2 deverão ter como valor o número zero no vetor 3

 

algem me dar essa força eu pensei assim

 

CODE
var

cont, cont_2, conta, cont_3: inteiro

vet_1: vetor [1..10] de real

vet_2: vetor [1..10] de real

vet_3: vetor [1..10] de real

inicio

cont:= 1

cont_2 := 1

enquanto cont<= 10 faca

leia (vet_1 [cont])

cont:= cont + 1

fimenquanto

enquanto cont_2 <= 10 faca

leia (vet_2 [cont_2])

cont_2 := cont_2 + 1

fimenquanto

cont_2 := 1

cont:= 1

conta:= 1

cont_3:= 1

enquanto conta <=10 faca

se(vet_2 [cont_2])= (vet_1 [cont])entao

vet_3 [cont_3] := vet_1 [cont]

fimse

cont_2 := cont_2 + 1

cont:= cont + 1

conta := conta + 1

cont_3 := cont_3 + 1

fimenquanto

fimalgoritmo

 

mas ele ñ armazena os primeiro numeros encontrados so o últmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

TCHE perceba q no seu algoritmo o valor sera comparado com apenas um outro valor!

veja c isso te ajuda:

para i de 1 até vet_1 faça
   para j de 1 até vet_2 faça
	  se (vet_1[i] = vet_2[j]) então
		 vet_3[x] = i 
	  senão
		 vet_3[x] = 0
	  fim_se
	  x <- x + 1
   fim_para
fim_para
Olha TCHE vow te explicar:

Para percorrer todo o vetor2 com 1 numero do Vetor1 você terá q ter dois 'loops' para isso!

se achar jogo o valor de 'i' q seria a posição q esta o numero igual no vetor3, senaum joga 0 no vetor3

e incrementa o indice 'x' para q ele aponte para a proxima casa do vetor3!!

 

qlqr duvida volte a postar http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

 

Q isso cara abuse do fórum!! é bom ver q tem pessoas interessadas como você!

  Citar

pessoal é o seguinte, na verdade ja estou ate constrangido de postar, pq nesse forum so apareci meu nick de usuario parece q apenas eu tenho dulvidas ñ vejo ninguem postando suas dulvidas, acho q ja estou abusando muito qualquer coisa podem pedir pro dar um tempo, pq de instrutor so tenho o forum.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e sera digitado dessa maneira o meu copilador e o visualg da erro

 

para i de 1 até vet_1 faça

Compartilhar este post


Link para o post
Compartilhar em outros sites

ops, no lugar de vet_1 e vet_2 coloque 10, pois é o valor q você definiu de tamanho do vetor!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

velho agora o ninho de se eu ñ coloquei

pq mesmo se colocar ele vai dar 0

e ainda todos os outros seria 0

 

 

senao 
vet_3 [z] = 0

outra coisa seria ele esta armazenado a posição e ñ o numero armazenado. é isso mesmo?

 

 

CODE
var

i, x, z: inteiro

vet_1: vetor [1..10] de real

vet_2: vetor [1..10] de real

vet_3: vetor [1..10] de real

inicio

i:= 1

x:= 1

z:= 1

enquanto i <= 10 faca

leia (vet_1 )

i:= i + 1

fimenquanto

enquanto x <= 10 faca

leia (vet_2 [x])

x:= x + 1

fimenquanto

i:= 1

para i de 1 ate 10 faca

x:= 1

z:= 1

para x de 1 ate 10 faca

se (vet_1 = vet_2 [x]) entao

vet_3 [z] := i

fimse

x:= x + 1

z:= z + 1

fimpara

i:= i + 1

fimpara

fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim ele esta jogando a posição, bem foi oq você disse q tinha q fazer!!

veja c assim fica melhor para você:

para i de 1 até 10 faça
   aux <- 0
   para j de 1 até 10 faça
	  se (vet_1[i] = vet_2[j]) então
		 vet_3[x] <- i
		 x <- x + 1
		 aux <- 1
	  fim_se
   fim_para
   Se (aux <> 1) então 
   vet_3[x] <- 0
   x <- x + 1
   fim_se
fim_para
aux é uma variavel auxiliar para dizer c o numero foi encontrado ow naum no vetor2

Compartilhar este post


Link para o post
Compartilhar em outros sites

entao meu algoritmo esta certo

valeu pela dica eu tenho outra duvida mais é com matriz

vou posta em um novo topico,

Compartilhar este post


Link para o post
Compartilhar em outros sites

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif beleza pode abrir outro tópico!

 

e assim o seu naum esta correto pois, c ele naum acha o número no vetor ele naum joga 0, e você não precisa incrementar o 'i' dentro do laço 'para' ele faz isso automatico!!

olhe o ultimo algoritmo q postei, ele atende o seu enunciado!

qlqr duvida naum deixe de postar!

 

[]'s

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.