Baixe o app para aproveitar ainda mais
Prévia do material em texto
Trabalho de Fundamentos em Linguagens e Teoria da Computação PARTE 1 Há diversas maneiras de conceber o que é “programar um computador”, cada uma delas usando diferentes conceitos e abstrações. O nome dado tradicionalmente a cada uma destas diferentes concepções de programação é “paradigma de programação”. Sendo assim: 1.1) Explique qual a ideia central de cada um dos quatro paradigmas de programação fundamentais das últimas três décadas. 1.2) Pesquise e informe, para 10 (dez) linguagens de programação atuais de livre escolha, qual o paradigma de programação predominante em cada uma delas. 1.3) Selecione 1 (uma) linguagem de programação diferente das convencionais já estudadas (C, C++, Java) e analise-a dentro de seu respectivo paradigma de programação, identificando as características que a enquadram em seu modelo de programação. PARTE 2 Sobre os paradigmas de programação imperativo e orientado a objetos: 2.1) Como qualquer modelo, um programa de computador é uma abstração da realidade. a) Defina o que é a abstração do fenômeno sendo modelado. b) Compare os paradigmas OO e imperativo em termos de abstração. 2.2) Escreva um programa usando a linguagem imperativa de programação PASCAL que leia um número inteiro, subtraia 10 e determine se o resultado é maior que zero ou não. Sobre os paradigmas de programação funcional e lógico: 2.3) Avalie as seguintes expressões, usando a notação lambda ou o interpretador Scheme: a) (λ(x y) (+(* 2 x) (* 3 y))) 1 2) b) (NULL? ‘(A B C D E)) c) (CAR ‘(A (B C) D E)) d) (CDR ‘(A (B C) D E)) 2.4) Escreva uma função Scheme, usando DEFINE, que calcule o menor valor de dois números. 2.5) Considerando o seguinte programa Prolog: nasceu(ana, brasil). nasceu(yves, frança). idioma(brasil , portugues). idioma(frança, frances). idioma(inglaterra, ingles). estudou(ana, frances). estudou(ana, ingles). estudou(yves; ingles). fala(A,C) :- nasceu(A,B) , idioma(B,C). fala(D,E) :- estudou(D,E). Responda: ?- fala(ana, portugues) ?- fala(yves,X) ?- fala(yves,frances) 2.6) Escreva a instrução “joao gosta de qualquer um que goste de vinho” na forma de uma regra em Prolog. Instruções: 1- O trabalho pode ser feito em dupla. Trabalhos idênticos serão desconsiderados. 2- O trabalho deve data, nome completo dos aluno, curso, além de ser apresentado com clareza e organização. 3- Data da entrega: 26/06/2014 Forma de entrega: impresso; na sala de aula, para a professora
Compartilhar