TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Lista Scheme

Por:   •  13/3/2016  •  Trabalho acadêmico  •  785 Palavras (4 Páginas)  •  377 Visualizações

Página 1 de 4

01.Crie um programa Scheme para adicionar um a cada elemento de uma lista.

Exemplo :

Entrada : (soma-1 '(4 9 3))

Saída : (5 10 4)

-Resposta:

------------------------------------------------------------------------

(define(soma-1 x)

(if(null? x)

'()

(cons (+ 1 (car x)) (soma-1(cdr x)))))

------------------------------------------------------------------------

02.Crie um programa Scheme para inluir um valor ao final de uma lista.

Exemplo :

Entrada : (inclui-valor 4 '(9 8 7))

Saída : (9 8 7 4)

------------------------------------------------------------------------

-Resposta:

(define (inclui-valor x lista)

(append lista (list x)))

------------------------------------------------------------------------

03.Crie um programa Scheme para retornar a posição de um elemento em uma lista,

caso ele seja encontrado na lista, caso nao, retorne falso.

Exemplo :

Entrada : (retorna-posicao 9 '(1 4 9))

Saída : 3

------------------------------------------------------------------------

-Resposta:

(define (retorna-posicao e lst)

(if (null? lst)

-1

(if (eq? (car lst) e)

1

(if (= (retorna-posicao e (cdr lst)) -1)

-1

(+ 1 (retorna-posicao e (cdr lst)))))))

------------------------------------------------------------------------

04.Crie um programa Scheme que recebe uma lista e retorna a média dos seus elementos.

Exemplo :

Entrada : (media '(2 4 6))

Saída : 4

------------------------------------------------------------------------

-Resposta:

(define (media lista)

(/ (apply + lista) (length lista)))

------------------------------------------------------------------------

05.Crie um programa scheme que receba um número natural e retorne uma lista

iniciando de zero, até este número natural.

Exemplo : (retnat 4)

Saída : (0 1 2 3 4)

------------------------------------------------------------------------

-Resposta:

(define (retnat numero)

(if(null? numero)

0

(reversa (lista numero))

)

)

(define(lista x)

(if(< x 0)

'()

(cons x (lista(- x 1))))

)

(define (reversa lista)

(reverse lista))

;APPENDNEW;

(define (appendNew lista1 lista2)

(if (null? lista1)

lista2

(cons (car lista1) (appendNew (cdr lista1) lista2))

)

)

------------------------------------------------------------------------

06.Crie um procedimento Scheme que substitua todas as ocorrências do

primeiro átomo pelo segundo átomo.

Exemplo : (substitui 1 2 '(3 1 2 4 1 6))

Saída : (3 2 2 4 2 6)

------------------------------------------------------------------------

...

Baixar como (para membros premium)  txt (4.4 Kb)   pdf (57.5 Kb)   docx (11 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no TrabalhosGratuitos.com