Baixe o app para aproveitar ainda mais
Prévia do material em texto
Questão 1 (1,6 pontos) Dada a Backus-Naur Form (BNF): <E> ::= <E> + <E> | <T> <T> ::= <T> * <T> | <F> <F> ::= ( <E> ) | <D> <D> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 Analise, detalhadamente, a expressão abaixo: 1 + 2 * ( 3 + 4 * 5 ) DESENVOLVIMENTO: <E> ::= 1+2*(3+4*5) <E>+<E> <T>+<E> <F>+<E> <D>+<E> 1+<E> 1+<T> 1+<T>*<T> 1+<F>*<T> 1+<D>*<T> 1+2*<T> 1+2*<F> 1+2*(<E>) 1+2*(<E>+<E>) 1+2*(<T>+<E>) 1+2*(<F>+<E>) 1+2*(<D>+<E>) 1+2*(3+<E>) 1+2*(3+<T>) 1+2*(3+<T>*<T>) 1+2*(3+<F>*<T>) 1+2*(3+<D>*<T>) 1. Associação Carioca de Ensino Superior Centro Universitário Carioca MODELOS DE LINGUAGEM DE PROGRAMAÇÃO Aluno: Carolyne Rodrigues Santana Matrícula: 2016200472 Turma: 861 1+2*(3+4*<T>) 1+2*(3+4*<F>) 1+2*(3+4*<D>) 1+2*(3+4*5) RESULTADO: 1+2*(3+4*5) Questão 2 (1,6 pontos) Implementar um programa em R para: a. Gerar dados aleatórios que sigam a distribuição NORMAL com média 1000 e desviopadrão 5 em um vetor de 10 posições b. Imprima: média, desvio-padrão, mediana e moda dos dados. DESENVOLVIMENTO: x <- rnorm(10, mean = 1000, sd = 5) mean(x) sd(x) median(x) subset(table(x),table(x)==max(table(x))) RESULTADO: Média = 997.5496 Desvio-padrão = 3.648988 Mediana = 999.0849 Moda = 991.363638745585 993.176080445374 994.280010261094 995.724546319786 998.764742315583 999.405132924868 999.435299849407 1000.17122137775 1001.10872695842 1002.06683911386 Questão 3 (1,6 pontos) Obter o resultado de: (λy.(λx. yxxy)A ) B DESENVOLVIMENTO: (λy.(λx. yxxy)A)B (λx. AxxA)B ABBA RESULTADO: ABBA Questão 4 (1,6 pontos) Dada a lista a=[10, 2, 5, 20, 3], desenvolver uma função lambda em python para encontrar o maior elemento PAR. DESENVOLVIMENTO: a=[10, 2, 5, 20, 3] par = filter(lambda valor: valor % 2 == 0, a) print(max(par)) RESULTADO: 20 Questão 5 (1,6 pontos) Seja o trecho de código em C abaixo: int *p; void f(){ int b= *p; a=10; b= b+a; } Faça a análise do código sob a perspectiva das propriedades legibilidade, redigibilidade e confiabilidade. RESULTADO: Legibilidade = é legível, porque possue boa estrutura. Regibilidade = tem regibilidade pois as variáveis declaradas não podem assumir qualquer valor, elas possuem valores específicos pra cada variável. A linguagem C tem facilidade em permitir a decodificação de comandos complexos. Confiabilidade = não é confiável, pois ela não permite verificar automaticamente erros de tipos durante a compilação ou execução. Questão 1 (1,6 pontos) 1 + 2 * ( 3 + 4 * 5 ) Questão 2 (1,6 pontos) (λy.(λx. yxxy)A ) B Questão 4 (1,6 pontos) Questão 5 (1,6 pontos)
Compartilhar