Ir para o conteúdo
Comebeer

alteracao duma posicao

Mensagens Recomendadas

Comebeer    0
Comebeer

boas!

tenho uma duvida: gostaria de saber como posso alterar um dos caracteres da lista em baixo dando a sua posicao e o novo caracter por exemplo

troca (0,2) % [".....","-----","-.-..","_-_-_","....."] = [".....","-----","%.-..","_-_-_","....."]

se der jeito tenho o que devolve o carater da x posicao

get (x,y) list = (list !! x) !! y

agradecia uma ajuda  :-[

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
SexPistolsPT    1
SexPistolsPT

é fácil:

troca (x,y) c p = take y p ++[take x (p!!y) ++ [c] ++ drop (x+1) (p!!y)] ++ drop (y+1) (p!!y)

onde c é o novo char e p a lista em questão.

em take y p vais retirar todos os elementos até à linha onde vais mudar o char

em take x (p!!y) vais tirar todos os elementos da linha y em questão até à posição x do elemento a retirar

[c] juntas o novo elemento

drop (x+1) (p!!y) voltas a colocar todos os elementos dessa linha a seguir ao elemento que trocaste

drop (y+1) (p!!y) junta todas as linhas seguintes à linha onde estava o elemento a alterar

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade