O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Paradigma Lógico eFuncional
Implementação   Equipe: Deivid Elton Diógenes Ricardo Geraldo Pires Maryvania França
Descrição:   O programa realiza o    cadastro, exibição, procura e exclusão    de turmas de professores.
Cadastrar O código da turma; O nome do professor; A disciplina; O valor da hora aula do professor; Os alunos da turma...
Exibir    Exibe todas as turmas cadastradas------------------------Turmas------------------------Cod: 1Professor: joaoDis...
Procurar por professor   Exibe todas as turmas cadastradas    por professor
Exclusão por turma   Exclui todas as turmas cadastradas    por código
RECURSÃO
Recursão Utiliza-se recursão nas regras exibir e  lista e tamanho./* exibe a lista de alunos*/exibelista([]).exibelista([...
OPERAÇÕES COMLISTAS
Operações com Listas  No adiciona os alunos são inseridos   através de uma lista. Na exibição das turmas há regras que  ...
Operações com Listas...Na geração do salário hora aula:tamanho([], 0).tamanho([_ | R], N) :-tamanho(R, N1),N   is N1+1./* ...
Operações com Listas Na geração do salário hora aula:tamanho([], 0).tamanho([_ | R], N) :-tamanho(R, N1),N  is N1+1./* ca...
BACKTRACKING
Backtracking   O backtracking é evidenciado na    busca, ele acha a turma e força-se a    falhar com o “fail”, para que e...
Backtracking   exibir:-   write(------------------------),   write(Turmas),   write(------------------------),nl,
Backtrackingturma(Codigo,Professor,Disciplina,Hora_aula,  L_Alunos),            write(Cod: ),write(Codigo),nl,            ...
Backtrackingcalculasalario(Hora_aula,L_Alunos,Salario),  write(Salario hora aula:  ),write(Salario),nl,nl,  write(Alunos),...
ESTRUTURA DE DADOS
Estrutura de dados Entrada        e saída de dados (READ e WRITE) ◦ Durante todo o programa se utiliza de leitura e exibi...
Estrutura de dados Base de dados:  ◦ É utilizado o conceito de base de dados :  turma(Codigo,Professor,Disciplina,Hora_au...
PREDICADOSEXTRALÓGICOS
PREDICADOSEXTRALÓGICOS   Tipos de termo:    ◦ Verifica-se o código e o valor hora aula:             write(Digite o codigo...
PREDICADOSEXTRALÓGICOSwrite(Digite a hora aula: ),           read(Hora_aula),           float(Hora_aula),
OPERAÇÕES COM ABASE DE DADOS
Operações com a Base deDados   Utiliza-se os predicados assertz e    retract, na (exibição das turmas, na    busca) e na ...
OBRIGADO!
Próximos SlideShares
Carregando em…5
×

Paradigma Lógico e Funcional

2.389 visualizações

Publicada em

  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Paradigma Lógico e Funcional

  1. 1. Paradigma Lógico eFuncional
  2. 2. Implementação Equipe: Deivid Elton Diógenes Ricardo Geraldo Pires Maryvania França
  3. 3. Descrição: O programa realiza o cadastro, exibição, procura e exclusão de turmas de professores.
  4. 4. Cadastrar O código da turma; O nome do professor; A disciplina; O valor da hora aula do professor; Os alunos da turma [almir,amanda,sergio,Fernanda];
  5. 5. Exibir Exibe todas as turmas cadastradas------------------------Turmas------------------------Cod: 1Professor: joaoDisciplina: aHora aula; 4.55Salario hora aula: 18.2AlunosalmiramandasergioFernanda------------------------Nao ha mais turmas
  6. 6. Procurar por professor Exibe todas as turmas cadastradas por professor
  7. 7. Exclusão por turma Exclui todas as turmas cadastradas por código
  8. 8. RECURSÃO
  9. 9. Recursão Utiliza-se recursão nas regras exibir e lista e tamanho./* exibe a lista de alunos*/exibelista([]).exibelista([X|L]):- write(X),nl,exibelista(L).tamanho([], 0).tamanho([_ | R], N) :-tamanho(R, N1),N is N1+1.
  10. 10. OPERAÇÕES COMLISTAS
  11. 11. Operações com Listas No adiciona os alunos são inseridos através de uma lista. Na exibição das turmas há regras que utilizam lista:/* exibe a lista de alunos*/exibelista([]).exibelista([X|L]):- write(X),nl,exibelista(L)...
  12. 12. Operações com Listas...Na geração do salário hora aula:tamanho([], 0).tamanho([_ | R], N) :-tamanho(R, N1),N is N1+1./* calcula o salario hora aula*/calculasalario(H,L,S) :- tamanho(L,N),S is H * N.
  13. 13. Operações com Listas Na geração do salário hora aula:tamanho([], 0).tamanho([_ | R], N) :-tamanho(R, N1),N is N1+1./* calcula o salario hora aula*/calculasalario(H,L,S) :- tamanho(L,N),S is H * N.
  14. 14. BACKTRACKING
  15. 15. Backtracking O backtracking é evidenciado na busca, ele acha a turma e força-se a falhar com o “fail”, para que ele volte e percorra toda a base de dados.
  16. 16. Backtracking exibir:- write(------------------------), write(Turmas), write(------------------------),nl,
  17. 17. Backtrackingturma(Codigo,Professor,Disciplina,Hora_aula, L_Alunos), write(Cod: ),write(Codigo),nl, write(Professor: ),write(Professor),nl, write(Disciplina: ),write(Disciplina),nl, write(Hora aula; ),write(Hora_aula),nl,
  18. 18. Backtrackingcalculasalario(Hora_aula,L_Alunos,Salario), write(Salario hora aula: ),write(Salario),nl,nl, write(Alunos),nl,nl,exibelista(L_Alunos),nl,n l, write(------------------------), nl, fail, nl.
  19. 19. ESTRUTURA DE DADOS
  20. 20. Estrutura de dados Entrada e saída de dados (READ e WRITE) ◦ Durante todo o programa se utiliza de leitura e exibição de dados utilizando read e write.
  21. 21. Estrutura de dados Base de dados: ◦ É utilizado o conceito de base de dados : turma(Codigo,Professor,Disciplina,Hora_au la,L_Alunos)
  22. 22. PREDICADOSEXTRALÓGICOS
  23. 23. PREDICADOSEXTRALÓGICOS Tipos de termo: ◦ Verifica-se o código e o valor hora aula: write(Digite o codigo: ), read(Codigo), integer(Codigo), write(Digite o professor: ), read(Professor), write(Digite a disciplina: ), read(Disciplina),
  24. 24. PREDICADOSEXTRALÓGICOSwrite(Digite a hora aula: ), read(Hora_aula), float(Hora_aula),
  25. 25. OPERAÇÕES COM ABASE DE DADOS
  26. 26. Operações com a Base deDados Utiliza-se os predicados assertz e retract, na (exibição das turmas, na busca) e na (exclusão da turma), respectivamente.
  27. 27. OBRIGADO!

×