Projecto de Lógica para Programação. Videoteca em Prolog. ( º semestre)

Documentos relacionados
Variáveis e Tipo de Dados

Cinco sentidos da Economia Social. Américo M. S. Carvalho Mendes

BREVE INTRODUÇÃO À REALIZAÇÃO DE INVESTIGAÇÕES NA AULA DE MATEMÁTICA: APROXIMAÇÃO DO TRABALHO DOS ALUNOS AO TRABALHO DOS MATEMÁTICOS

Rescisão Complementar

CATÁLOGO DE APLICAÇÕES Geração de Guias para ST, DIFAL e FCP

10. Escreva um programa que leia um texto e duas palavras e substitua todas as ocorrências da primeira palavra com a segunda palavra.

Regulamento da Feira de Ciência

1. O Programa. 2. Conteúdo programático

CRC-Nacional Central de Registro Civil de Minas Gerais Certidão Online - Serventia

MTur Sistema Artistas do Turismo. Manual do Usuário

OBJECTIVO. Ligação segura às redes públicas de telecomunicações, sob o ponto de vista dos clientes e dos operadores;

FACULDADE AGES CURSO DE ENFERMAGEM REGULAMENTAÇÃO DAS PRÁTICAS EDUCATIVAS ADMINISTRAÇÃO APLICADA A ENFERMAGEM

UML Diagrama de Caso de Uso Análise e Projeto de Software

Gestão de Mão-de-Obra

COMO CONFIGURAR SUA(S) CONTA(S) NO MICROSOFT OFFICE OUTLOOK

Atividades a desenvolver. 1º Período - 12 de setembro a 17 de setembro

Aula 11 Bibliotecas de função

PROJETO 22ª MOSTRA ESTUDANTIL TECNOLÓGICA Dias 22 e 23 DE OUTUBRO DE 2014 CURSO: GESTÃO EMPRESARIAL

Base de Dados 2013/2014 Trabalho prático Versão 1.0 ( )

SOGILUB.NET MANUAL DO UTILIZADOR

Descrição do serviço. Visão geral do serviço. Escopo dos serviços Copilot Optimize. Copilot Optimize CAA Escopo

Administração de Redes Servidores de Aplicação

Cartografia e Geoprocessamento Parte 1. Geoide, Datum e Sistema de Coordenadas Geográficas

MANUAL DE CANDIDATURA PARA SEDE CONGRESSOS DA OFTALMOLOGIA

Guião da Unidade Curricular Educação a Distância. Programa Doutoral em Multimédia em Educação. 2010/11-1º Semestre

Cadastrar Proposta de Evento

2º Passo Criar a conexão via ODBC (Object DataBase Conection)

INFORMAÇÃO COMPLEMENTAR

REGULAMENTO PREMIAÇÃO MELHOR POSTO ALE

Programação. Para estas funções, é necessário incluir a biblioteca: Seguem as operações mais comuns com arquivos.

AVISO. operações urbanísticas, que evoluirá até à desmaterialização total, num curto espaço de tempo,

1 - Introdução. 2 - Desenvolvimento

SMART CONTROLE DO ESTOQUE DE GONDOLA

Plataforma Web para venda de livros escolares usados

Âmbito do Documento. Modelo de Comunicação. Modelo de Comunicação. Prescrição eletrónica e dispensa de medicamentos para ambulatório hospitalar

Desenho centrado em utilização

De acordo com estes critérios, uma sugestão de formato para nomes de tablespaces no banco de dados Oracle é a seguinte: S_O_T, onde:

Exercícios de Java Aula 17

Substituição de descodificadores antigos

Copyright GrupoPIE Portugal, S.A. Manual Utilizador

Conceitos Importantes de Telecomunicações pela Anatel

A nova metodologia de apuração do DI propõe que o cálculo seja baseado em grupos de taxas e volumes, não mais em operações.

Após o administrador de um site moodle ter criado uma disciplina e designado o seu professor, é gerada uma página relativa a essa disciplina.


Informação Prova de equivalência à frequência Tipo de prova Escrita e Oral

A) O volume de cada bloco é igual à área da base multiplicada pela altura, isto é, 4 1

BinFólio onoracle Instalação e atualizações

Boletim Técnico. CAGED Portaria 1129/2014 MTE. Procedimento para Implementação. Procedimento para Utilização

Sistema de Diagnóstico Médico

Manual de Instalação

PROJECTO EDUCATIVO ANO LECTIVO

Orientação às empresas Respondentes sobre mudanças climáticas em nome dos investidores e membros da cadeia de abastecimento 2014

Mensagem do atendimento ao cliente

PROGRAMA CLIENTE REFERÊNCIA FH REGULAMENTO

PROGRAMA REGIONAL DE EDUCAÇÃO SEXUAL EM SAÚDE ESCOLAR (PRESSE)

SISTEMA OPERACIONAL - WINDOWS PHONE

Actividade Laboratorial Física 12º Ano Condensador Plano

Ficha de trabalho nº2

Controle de Atendimento de Cobrança

Cursos Extracurriculares Ed. Infantil e Fund. I

CARTILHA DE APOIO AO USUÁRIO SIGA

ISO 9001:2008 alterações à versão de 2000

COMPETIÇÔES KIDS E ADULTO DE 04 ANOS AO AVANÇADO; TODAS AS MODALIDADES E CATEGORIAS DE DANÇA

Programa IBP de Bolsas de Mestrado

1 Acesso ao SIIFSE. 1.1 Homepage do SIIFSE. SIIFSE - Manual do Utilizador QREN. O acesso ao Sistema é efectuado através do endereço siifse.igfse.pt.

Projetos, Programas e Portfólios

MANUAL DE INSTALAÇÃO

API de Integração E-Zoop Documentação de uso

As cópias dos contratos, assim como outros documentos do projeto, a seguir relacionados serão fornecidos após celebração do contrato dos serviços:

As Vantagens Competitivas Baseando-se na Redução do Tempo

PM 3.5 Versão 2 PdC Versão 1

DECISÃO EM RECURSO ADMINISTRATIVO N 001- PE 015/2013

UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO DISCIPLINA DE PROJETOS I

Boletim Técnico. esocial 1ª Liberação

DESENVOLVIMENTO DE UM WEB SITE PARA A BASE DE CONHECIMENTOS DO PROGRAMA DE APOIO AOS ACTORES NÃO ESTATAIS ANGOLA

MS-PAINT. PAINT 1 (Windows7)

Descoberta de Conhecimento em Bases de Dados e Mineração de Dados

Pretende-se que ao longo deste ciclo escolar, os alunos consigam adquirir competências básicas nas TIC.

UNIVERSIDADE FEEVALE INCUBADORA TECNOLÓGICA DA FEEVALE (ITEF) SELEÇÃO DE PROJETOS PARA FASE DE PRÉ- INCUBAÇÃO

Guia Sphinx: Instalação, Reposição e Renovação

Processador de Texto Funcionalidades Avançadas

PDF Livre com o Ghostscript

Manual do Novo Pátio. Revenda. Versão 2.0

Microsoft Live Meeting 2007 Manual Para Programar Reuniões

Projecto Cartão de Cidadão

PRÊMIO AUTOMAÇÃO - CATEGORIA DE JORNALISMO

IBOConsole Recuperação do Banco de Dados. Ferramenta de manutenção para recuperação de banco de dados.

Aplicações Clinicas. Patologia Clínica. Luís Lito

Este documento tem como objetivo definir as políticas referentes à relação entre a Sioux e seus funcionários.

Primeira Intervenção (Oradores)

1 Criando uma conta no EndNote

APRESENTAÇÃO. João Pessoa, 22 de outubro de RICARDO VIEIRA COUTINHO Prefeito

Actualização de reports personalidados 1

AGRUPAMENTO DE ESCOLAS DE MARTIM DE FREITAS. Informação/Prova de Equivalência à Frequência. Ano letivo de 2012/2013. Disciplina: Educação Física

Requisitos técnicos de alto nível da URS para registros e registradores

TransactionCentre Guia Referência Rápida Troca de Mensagens. Cancelamento

Descrição do Serviço oferecido* Manutenção Pró-activa

SEMINÁRIO DE AVALIAÇÃO DO PROCESSO DE CAPACITAÇÃO EM MOÇAMBIQUE 27 e 28 de Outubro em Chinhambudzi / Manica 30 e 31 de Outubro 2014 em Maputo

e-manual Premium Manual (partes 1 e 2) DVD do Aluno (oferta ao aluno) Caderno de Atividades Guia do Professor TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO

S3 - Explicação sobre endereço e/ou número de telefone dos EUA

Transcrição:

Prject de Lógica para Prgramaçã Videteca em Prlg (2007-2008 2º semestre) 1. Intrduçã A base de dads BDvip.pl cntém infrmaçã sbre cinema - nmeadamente infrmaçã relativa a actres/realizadres, filmes e Óscares, retirada da IMDB e OSCAR.cm 1 - cdificada em facts em Prlg. Essa infrmaçã pde ser cruzada permitind descbrir que actres cntracenam num dad filme, para quants Óscares fi nmead um dad actr, etc. O prject VIP (VIdeteca em Prlg) tem cm bjectiv a implementaçã de um prgrama em Prlg que permite bter infrmaçã variada sbre cinema cm base na BDvip.pl 2. 2. A base de dads BDvip.pl 2.1 Infrmaçã sbre pessas e suas actividades A base de dads cntém infrmaçã básica sbre pessas cm a seguinte estrutura: pessa(id, nme, an_nasciment, an_mrte). id: inteir que identifica univcamente a pessa (n cnjunt das pessas) nme: string que representa nme pel qual é cnhecida a pessa an_nasciment e an_mrte sã, respectivamente, an de nasciment/mrte da pessa (0000 se as datas sã descnhecidas). Exempl: % A pessa Alfred Hitchcck: % é identificada pel númer 831998, nasceu em 1899 e mrreu em 1980. pessa(831998, Alfred Hitchcck, 1899, 1980). Dad que várias actividades pdem ser assciadas a uma pessa em cinema (actr, argumentista, prdutr, etc.), existe a seguinte estrutura de dads: actividade(id, nme). 1 Respectivamente http://www.imdb.cm/ e http://www.scars.cm/. 2 Para a realizaçã d prject será dada as aluns, para teste, um subcnjunt da base de dads riginal. 1

id: inteir que identifica univcamente uma actividade (n cnjunt das actividades); nme: string que representa nme da actividade. Exempl: % O númer 5 representa a actividade de realizadr actividade(5, realizadr ). 2.2 Infrmaçã sbre filmes A base de dads cntém infrmaçã genérica sbre filmes, cm a seguinte estrutura: filme(id, nme, an_estreia, lugar_tp_250). id: inteir que identifica univcamente filme (n cnjunt ds filmes) nme: string que representa nme d filme an_estreia: an de lançament d filme lugar_tp_250: númer que indica lugar que filme cupa n tp-250 da IMDB (0, se nã está n tp). Exempl: % O filme Rear Windw: % é identificad pel númer 249003; % estreu em 1954; % está n 14º lugar n tp-250 da IMDB. filme(249003, Rear Windw, 1954, 14). 2.3 Infrmaçã sbre as relações entre filmes, pessas e actividades Um realizadr pde fazer váris filmes; um actr pde entrar em váris filmes; um filme pde ter váris realizadres; um filme pde ter váris actres; uma pessa pde entrar num filme cm actr, realizadr, etc. Desde md, existe na base dads a estrutura que se segue, que permite captar essas relações: participa(p_id, f_id, a_id). p_id: id de uma pessa f_id: id de um filme a_id: id de uma actividade. Exempl: %A pessa 831998 tem a actividade 5 n filme 249003 participa(831998, 249003, 5). 2

2.4 Infrmaçã sbre s Óscares A base de dads cntém infrmaçã sbre s Óscares, que é representada pela estrutura que se segue: scar(id, a_id, nme). id: númer que identifica univcamente tip d Óscar (n cnjunt ds óscares) a_id: id da actividade assciada nme: string que representa nme d Óscar. Exempl: % O Óscar de Melhr Realizadr: % é identificad pel númer 6; % está assciad à actividade 5. scar(6, 5, Oscar de Melhr Realizadr ). Os Óscares pdem ser relacinads cm as pessas d seguinte md: nmeada(p_id, f_id, a_id, ganhu?). p_id: id de uma pessa f_id: id de um filme a_id: id da actividade pela qual a pessa fi nmeada para um Óscar ganhu?: blean que indica se Óscar fi ganh u nã (0 se nã; 1 se sim). Exempl: % A pessa 831998: % fi nmeada n filme 249003; % pela sua actividade cm 5; % mas nã ganhu Óscar. nmead(831998, 249003, 5, 0). 3. Funcinalidades a implementar N prject deverã ser implementadas um cnjunt de funcinalidades. Segue-se uma breve descriçã das funcinalidades a implementar, bem cm a cabeça das cláusulas que deverã implementar essa funcinalidade: (1) Quais s filmes em que participu uma dada pessa cm actr/realizadr/...? filmes(p_id, A_id): devlve uma lista cntend s nmes ds filmes em que participu a pessa P_id cm a actividade A_id (0 se a lista fr vazia); (2) Quais s filmes em que participu uma dada pessa (independentemente da actividade desempenhada)? 3

filmes(p_id): devlve uma lista cntend s nmes ds filmes em que participu a pessa P_id (0 se a lista fr vazia). Se uma pessa participu cm actividades diferentes n mesm filme, nme d filme deve aparecer repetid tantas vezes quant essas participações; (3) Qual elenc de um dad filme? elenc(f_id): devlve uma lista cntend s nmes ds actres e actrizes participantes n filme F_id (0 se a lista fr vazia); (4) Quais as nmeações de uma pessa cm uma data actividade (independentemente de s ter ganh u nã)? nmeaca(p_id, A_id): devlve uma lista de pares que têm n primeir argument nme d filme para qual a pessa fi nmeada cm a actividade A_id e n segund tip de Óscar em causa; (5) Para quants Óscares fi nmeada uma dada pessa (independentemente da actividade que desempenha e de s ter ganh u nã)? nmeaces(p_id): devlve númer de Óscares para s quais fi nmeada a pessa P_id (independentemente de s ter ganh u nã); (6) Qual númer de Óscares ganhs pr um dad filme? num_scares_f(f_id): devlve númer de Óscares, efectivamente ganhs pel filme F_id; (7) Qual a pessa que entru em mais filmes cm actr/realizadr/...? participu_em_mais_filmes(a_id): devlve par que tem n primeir argument nme da pessa que participu em mais filmes cm A_id e n segund númer de filmes em que participu. Em cas de empate, devlve um qualquer ds pares empatads; (8) Quais s filmes em que cntracenam um u mais actres? cntracenam(lista_p_ids): devlve uma lista cntend s Ids ds filmes em que participaram tdas as pessas cujas P_ids estã na lista nã vazia Lista_P_ids (0 se nã existe tal filme); (9) Qual a pessa mais bem ctada n tp-250? bem_ctad: devlve um par que tem n primeir argument nme da pessa mais bem ctada n tp-250 e n segund a sua ctaçã. Este cálcul é feit smand, para cada psiçã cupada na tabela, (250 psiçã cupada), independentemente da actividade da pessa n filme. Se uma pessa nã entru em nenhum filme d tp-250, tem -1. Em cas de empate, é devlvida a pessa mais nva. (10) Qual par actr/realizadr mais bem ctad n tp-250? bem_ctads: devlve tripl cntend n primeir argument nme d actr mais bem ctad n tp-250, n segund argument nme d realizadr mais bem ctad n tp-250 e n terceir a sma das respectiva ctações. O cálcul das ctações é 4

mesm que implementad na funcinalidade (9), mas desta vez, em cas de empate, é devlvid tripl cm actr mais nv. 4. Detalhes da implementaçã 4.1.1 Ferramenta Vai ser usad swi-prlg (ferramenta cm a qual vai ser avaliad prject). Infrmaçã sbre swi-prlg pde ser cnsultada em http:/www.swi-prlg.rg/, nde se pdem também bter as ferramentas para as várias platafrmas. 4.1.2 Regras a implementar e frmat ds resultads Os aluns terã de implementar n ficheir vip.pl (e apenas neste ficheir) um cnjunt de regras cujas cabeças sã as apresentadas na secçã 3 e que implementam as funcinalidades aí descritas. Nte que: O códig a entregar deve estar ÚNICA e EXCLUSIVAMENTE n ficheir vip.pl; O ficheir vip.pl nã deve carregar a BDvip.pl. Em relaçã a frmat de saída, n cas de resultad ser uma lista, este deverá ter a seguinte frma: e 1... e n + cada e i cupa a PRIMEIRA psiçã da linha na linha imediatamente a seguir a últim e i, existe um (e um só) + N cas em que resultad é um par (a 1, a 2 ), um tripl (a 1, a 2, a 3 ), u uma lista de pares [(a 1, a 2 ),... (a n, a n+1 )] resultad deverá ter a frma: a 1 a 2... a n a n+1 + cada a i cupa a PRIMEIRA psiçã da linha cada númer u nme de actr/actriz/realizadr/filme cupa uma linha na última linha existe um (e um só) +. PROJECTOS QUE NÃO RESPEITEM ESTE FORMATO DE SAÍDA SERÃO CLASSIFICADOS COM ZERO NA EXECUÇÃO! 5

4.1.3 Cm testar prgrama Supnd que as cláusulas anterirmente discutidas estã definidas em vip.pl e que está igualmente definid ficheir teste.pl cm seguinte cnteúd: start :- carregadads, testes. carregadads :- ['BDvip.pl'], [ vip.pl ]. testes :-... a seguinte linha de cmand 3 : swipl -s teste.pl -g start -t halt > resultads.txt permitirá guardar s resultads d prgrama n ficheir resultads.txt. Para pder testar seu prgrama ficheir teste.pl está dispnível, assim cm ficheir resultads.txt que cntém s resultads relativs a esses testes. 5. Relatóri O relatóri deverá ter um máxim de 5 páginas (ver template em anex) e um máxim de 10 000 caracteres (incluind espaçs). Este relatóri deverá incluir: uma breve descriçã da implementaçã de cada funcinalidade e a mtivaçã para as decisões tmadas; uma breve descriçã ds principais prblemas encntrads a lng da realizaçã d prject e uma explicaçã das respectivas sluções. 6. Infrmações imprtantes 6.1 Grups Serã aceites grups de 2 e 3 aluns. 6.2 Avaliaçã IMPLEMENTAÇÃO Ctaçã (sbre 20 valres) 15 valres Avaliaçã - Avaliaçã Autmática (12 valres); - Qualidade d códig (3 valres). RELATÓRIO Ctaçã (sbre 20 valres) 5 valres Avaliaçã - Será tida em cnta a qualidade d relatóri em relaçã as seguintes pnts: rganizaçã, clareza e qualidade da escrita. 3 A chamada a Prlg varia nas diferentes platafrmas (pr exempl, para windws deve usar-se plcn.exe, em linux deve usar-se pl e em Mac (ppc) deve usar-se /pt/lcal/bin/swipl). 6

Ntas: Cas se detectem cópias s aluns terã 0 n prject e nã pderã fazer LP este semestre. 6.3 Prcess de entrega Descriçã Frmat de entrega - NUM-GRUPO.zip (ex: 71.zip) que deverá cnter: O ficheir vip.pl; O relatóri em frmat.pdf. - Papel: O códig de vip.pl; O relatóri de acrd cm a template dada. Data de entrega - NUM-GRUPO.zip Até às 15h de 28 de Mai de 2008 (quarta-feira) - Papel Até às 15h de 28 de Mai de 2008 (quarta-feira) Md de entrega - NUM-GRUPO.zip (e NÃO RAR!!!!!!) Através d Fénix - Papel Repgrafia d DEI (Alameda) Secretariad d DEI (Tagus) das 10h-12h30 e 14h-16h Penalizaçã (sbre 20 valres) O desrespeit pr qualquer um destes frmats levará à nã avaliaçã d prject. - 2 valres se entregue até 24 hras de atras; - 4 valres se entregue até 48 hras de atras; - Nã serã aceites prjects a partir das 48 hras de atras. O nã cumpriment d md de entrega levará à nã avaliaçã d prject. 7