Jump to content

Não consigo mostrar se o elemento digitado consta na lista e se sim ,mostrar os indices que eles estão dentro da lista, caso aparece mais de uma ocorrencia.


CAIOG94

Postagens Recomendadas

n= int(input("Digite quantidade de valores para a Lista A: "))

A=[]

i=0

QTDE=0

while i<n :

X = int(input("Digite o elemento {} da lista A: ".format(i+1)))

A.append(X)

QTDE = QTDE + 1

i = i + 1

N = int(input("Digite um numero aleátorio: "))

if N in A:

   for N in A:

x=0

N = 0

print("\n O elemento {} consta na posição {} ".format(X, i-1))

N=N+1

i = i + 1

x = x + 1

else: print("\n O elemento {} não consta na lista A ".format(N))

print("\n\nFim do Programa")

Link to comment
Compartilhe em outros sites

oi!

Não entendi muito bem o código, pois no python a identação é o que define o escopo, acho que seria melhor um print. Entretanto, eu vi que vc faz um "for N in A", mas já existe uma variavel chamada N, isso aqui vai causar problemas pois vc está substituindo o N anterior.

Eu acredito que é mais facil usar um List Comprehension, fica bem facil de entender

Sua lista é A, vamos chamar de minha_lista, pra facilitar

o valor para procurar na lista chama-se N, vamos chamar de valor_procurar_na_lista

base fazer um:

indices = [i for i, x in enumerate(minha_lista) if x == valor_procurar_na_lista]

 

agora seu indice é um array com todos os indices que contem aquele elemento 

 

se isso nao resolver, manda um print do código e do erro pra ficar mais facil de entender, ou coloca o código 100% identado (acho que o print vai ser mais facil)

Link to comment
Compartilhe em outros sites

Boa Tarde!  segue o print do codigo. Realmente tentei usar o que me informou para usar array ,mas nao consegui.

 

enunciado do exercicio: 

Escreva um programa que leia do teclado um número inteiro N e em seguida preencha uma lista com N 
elementos aleatórios. Em seguida, o programa deve ler um número inteiro X e informar se o valor de X 
está na lista, bem como em qual posição. Se houver mais de uma ocorrência de X na lista, todas devem 
ser informadas.

image.png

image.png

Link to comment
Compartilhe em outros sites

2 horas atrás, CAIOG94 disse:

Boa Tarde!  segue o print do codigo. Realmente tentei usar o que me informou para usar array ,mas nao consegui.

 

enunciado do exercicio: 

Escreva um programa que leia do teclado um número inteiro N e em seguida preencha uma lista com N 
elementos aleatórios. Em seguida, o programa deve ler um número inteiro X e informar se o valor de X 
está na lista, bem como em qual posição. Se houver mais de uma ocorrência de X na lista, todas devem 
ser informadas.

image.png

image.png

@geovaniif

  • Curtir 1
Link to comment
Compartilhe em outros sites

tem um pequeno erro de lógica no seu algoritmo, vou tentar explicar:

Vou verifica se o valor que quer procurar está na lista, fazendo o "if N in A". Até aqui ok.

Em seguida, você itera sobre a lista A, printando todos os valores, esse é o problema, você nem está verificando se o valor que está olhando realmente é o N, dessa forma ele só printa tudo. Segue uma pequena alteração que fiz e funcionou como deveria (eu corei umas coisas pra facilitar, coloquei os inputs diretos ao invés de ficar perguntando pro usuário, só pro código ficar menor)

 

image.png

 

 

 

sobre a minha sugestão anterior, funciona sim e acredito que seja mais elegante. Também fiz ela para exemplo. 

image.png

O legal dessa solução é que ela é menor e pode ver que a gente cortou um monte de variavel que nao precisa mais rsrs.

Qualquer dúvida é só chamar!

Link to comment
Compartilhe em outros sites

Muito obrigado @geovaniif. No caso a unica diferença, seria que no exercicio pede para inserir a quantidade de elementos que a lista terá e quais serão eles . o Else esta ok, mas no if quando eu peço pra mostrar a posicao do 3 na lista{3,4,3,3} mostra a posição errado dos 2 ultimos 3, mostrando assim

elemento 3 na posicao 0

elemento 3 na posicao 1 - correto elemento 3 na posicao 2

elemento 3 na posicao 2 - correto elemento 3 na posicao 3

 

ou outra situação que quando pede

image.pngimage.pngimage.pngimage.png

Link to comment
Compartilhe em outros sites

Crie uma conta ou entre para comentar 😀

Você precisa ser um membro para deixar um comentário.

Crie a sua conta

Participe da nossa comunidade, crie sua conta.
É bem rápido!

Criar minha conta agora

Entrar

Você já tem uma conta?
Faça o login agora.

Entrar agora


×
×
  • Create New...