Lógica para Computação
|
|
- Lídia Lima Dinis
- 8 Há anos
- Visualizações:
Transcrição
1 Lógica para Computação Prof. Celso Antônio Alves Kaestner, Dr. Eng. celsokaestner (at) utfpr (dot) edu (dot) br
2 Especificação de programas Engenharia de Requisitos: como entender e modelar um problema real para obter uma solução computacional; Engenharia de Software: é uma área da Computação voltada à especificação, desenvolvimento e manutenção de sistemas de software, com aplicação de tecnologias e práticas de gerência de projetos e outras disciplinas, visando organização, produtividade e qualidade. 2
3 Especificação de programas Uma tarefa típica em Computação: problema real Modelagem problema computacional 3
4 Especificação de programas Especificações em linguagem natural exigem que se assuma o significado de diversos termos, e por isto são imprecisas / vagos / inconsistentes permitindo diversas interpretações; Este é um problema amplamente estudado em Engenharia de Software, que busca de métodos e formalismos tenta eliminar / reduzir este problema. 4
5 Especificação de programas Visão operacional de um programa: dados de entrada programa dados de saída Programas como transformadores de estados: 1 = {v 1 1,v v 1 m} = {v 2 1,v v 2 m} = {v n 1,v n 2...v n m}... 5
6 Especificação de programas Especificação de propriedades de programas: Exemplo: dados dois valores (x e y) inteiros maiores ou iguais a 10 calcular sua soma (z); Especificação 1: sobre o estado inicial: x 10 y 10 sobre o estado final: z = x + y 6
7 Especificação de programas Especificação de propriedades de programas: Exemplo: dados dois valores (x e y) inteiros maiores ou iguais a 10 calcular sua soma (z); Especificação 2 (superespecificação): sobre o estado inicial: x 10 y 10 (x + y) 0 sobre o estado final: z = x + y z 20 7
8 Especificação de programas Especificação de propriedades de programas: Exemplo: dados dois valores (x e y) inteiros maiores ou iguais a 10 calcular sua soma (z); Especificação 3 (especificação pouco clara): sobre o estado inicial: x 10 (x + y) (10 + x) sobre o estado final: z = x + y 8
9 Especificação de programas Especificação de propriedades de programas: Exemplo: dados dois valores (x e y) inteiros maiores ou iguais a 10 calcular sua soma (z); Especificação 4 (especificação incompleta): sobre o estado inicial: x 10 sobre o estado final: z = x + y 9
10 Especificação de programas Especificação de propriedades de programas: Exemplo: dados dois valores (x e y) inteiros maiores ou iguais a 10 calcular sua soma (z); Especificação 5 (não é especificação...): sobre o estado inicial: x 10 y 10 sobre o estado final: z = x + y z < 10 10
11 Especificação de programas Vantagens de se ter uma especificação definida por formalismo matemático: 1. Precisão: a linguagem matemática é precisa e identifica um significado único para cada propriedade; 2. Verificação de consistência: a linguagem matemática nos possibilita verificar inconsistências nas especificações quando há propriedades contraditórias sobre um mesmo objeto; 11
12 Especificação de programas 3. Simulação: especificações em algumas linguagens matemáticas podem ser parcialmente executáveis, auxiliando a verificação; 4. : após a construção de um programa é possível de forma automática ou semiautomática verificar se esta é uma solução (ou satisfaz) a especificação do problema. 12
13 Especificação de programas Pode-se usar o Lógica Matemática como linguagem de especificação; Ver na referência (da Silva, Finger, de Melo) às páginas 165 a 169 o uso da Lógica Matemática como linguagem de especificação. 13
14 Especificação de programas Sistematização das propriedades de programas: 1. Pré-condições: válidas sobre os dados de entrada; 2. Pós-condições: válidas sobre os dados de saída; 3. Invariantes: válidas sempre, durante toda a execução do programa. 14
15 Especificação de programas Exemplo: fatorial. 1 se n=0 n! = 1 se n=1 n*(n-1)! se n>1 PRE: n 0 POS: fat = n! fat > 0 INV: fat > 0 15
16 Os erros são comuns em programação; O funcionamento correto de um programa depende também dos dados fornecidos ao programa, isto é, se sua variação foi corretamente prevista; Deseja-se verificar se o programa desenvolvido atende à especificação e corrigi-lo se for o caso. 16
17 Exemplo: (Merge) dadas duas seqüências ordenadas de inteiros produzir nova seqüência ordenada que entrelace os números das duas seqüências: Entradas: V1 = {1,3,6,9} e V2 = {2,3,3,7,10} Saída: V3 = {1,2,3,3,6,7,9,10} 17
18 void merge(int V1[],V2[],V3[],t1,t2) {int p1=0,p2=0,p3=0; while(t1+t2>0) {if (V1[p1] > V2[p2]) {V3[p3]=V2[p2]; p2=p2+1; t2=t2-1;} else {V3[p3]=V1[p1]; p1=p1+1; t1=t1-1;} p3++;} } 18
19 Erro: se uma das seqüências for vazia há uma comparação indevida: if (v1[p1] > V2[p2]) Numa execução real haveria erro. Para a correção... Novo programa 19
20 void merge(int V1[],V2[],V3[],t1,t2) {int p1=0,p2=0,p3=0; while(t1>0 && t2>0) {if (V1[p1] > V2[p2]) {V3[p3]=V2[p2]; p2=p2+1; t2=t2-1;} else {V3[p3]=V1[p1]; p1=p1+1; t1=t1-1;} p3++;} } 20
21 Agora a comparação só ocorre se houver elementos nas listas; Porém: quando uma lista termina deixa-se de colocar os elementos restantes da outra lista na lista de saída. Um novo erro é introduzido ao se corrigir o erro inicial. Para a correção... Novo programa 21
22 void merge(int V1[],V2[],V3[],t1,t2) {int p1=0,p2=0,p3=0; while(t1>0 && t2>0) {if (V1[p1] > V2[p2]) {V3[p3]=V2[p2]; p2=p2+1; t2=t2-1;} else {V3[p3]=V1[p1]; p1=p1+1; t1=t1-1;} p3++;} ; (continua) 22
23 while (t1>0) {V3[p3]=V1[p1]; p1=p1+1; t1=t1-1; p3++;} while (t2>0) {V3[p3]=V2[p2]; p2=p2+1; t2=t2-1; p3++;} } O programa agora está OK. 23
24 Se tantos erros ocorrem em um programa tão simples, como proceder no caso de sistemas complexos? Como determinar se um programa está correto? Solução: minimizar os erros, por meio de alguns procedimentos. 24
25 Procedimentos utilizados para verificação: 1. Inspeção: segue-se a lógica do programa em busca de situações incorretas ou não previstas; 2. Teste de programas: alguns casos de teste são selecionados, em conjunto com dados de teste, sobre os quais o programa é executado e os resultados são verificados; não garante a correção total do programa. 25
26 Estratégias para produzir programas corretos (pg. 183): 1. Síntese: dada um especificação, um programa P é construído de forma automática ou semi-automática, por meio de transformação da especificação em P; 2. Verificação: Dada uma especificação e um programa P, mostrar que P é um modelo para (P satisfaz ). 26
27 Uso da verificação formal na prática: 1) Análise: Dado um programa P, encontrar uma especificação que defina o problema para o qual P é a solução; 2) Correção: Dados uma especificação e um programa P que não satisfaz, construir P que satisfaça e que seja próximo a P; 3) Otimização: Dada uma especificação e um programa P que satisfaz, obter P equivalente a P que seja ótimo sob determinada medida de complexidade. 27
28 Exemplo de uma linguagem de programação (pg. 186); Um programa sequencial é basicamente um transformador de dados do estado inicial ao estado final; Semântica operacional: indica o funcionamento de cada comando como transformador de estados; 28
29 Semântica operacional (notação): <C,> A execução de C sobre o estado produz o estado ; Exemplo: <x:=e, > [m/x] 29
30 Tripla de Hoare: <> P <> para todo estado que satisfaz, se a execução de P sobre termina produzindo um estado que satisfaz ; Prova de programas: construir um sistema de provas para asserções do tipo - <> P <>? 30
31 Correção parcial: <> P <> é satisfeita sob correção parcial se para todos os estados que satisfazem o estado resultante da execução de P satisfaz, se P parar; Correção total: <> P <> é satisfeita sob correção total se para todos os estados que satisfazem o estado resultante da execução de P satisfaz e é garantido que P pára. 31
32 Correção parcial de programas (pg. 195); Sistema de inferência com regras de Hoare para a linguagem de programação apresentada, sob a forma de uma lógica e suas regras de inferência (pg. 196); Exemplos de provas (pg. 200 em diante). 32
9 Comandos condicionais
9 Comandos condicionais Um comando condicional é uma instrução empregada quando se deseja criar um desvio, isto é, a opção de executar-se ou não um determinado trecho de código, segundo uma condição. Em
Leia maisEstruturas de Repetição
Estruturas de Repetição Lista de Exercícios - 04 Algoritmos e Linguagens de Programação Professor: Edwar Saliba Júnior Estruturas de Repetição O que são e para que servem? São comandos que são utilizados
Leia maisProf. Vania Gimenez.Notas de aula Lógica de programação- Este material não substitui os livros indicados no site no link bibliografia.
Prof. Vania Gimenez.Notas de aula Lógica de programação- Este material não substitui os livros indicados no site no link bibliografia. ---------------------------------------------------------------- Comandos
Leia maiscompreender a importância de cada estrutura de controle disponível na Linguagem C;
Aula 3 Estruturas de controle Objetivos Esperamos que, ao final desta aula, você seja capaz de: compreender a importância de cada estrutura de controle disponível na Linguagem C; construir programas em
Leia maisConstrução de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014.
Construção de Compiladores Capítulo 1 Introdução José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2014.1 1/21 1 Linguagens de programação 2 Compilação 2/21 Layout 1
Leia maisOrientação a Objetos. Conceitos Iniciais Introdução a Linguagem Java. Gil Eduardo de Andrade
Orientação a Objetos Conceitos Iniciais Introdução a Linguagem Java Gil Eduardo de Andrade Conceitos: Orientação a Objeto Introdução Abordagem típica no desenvolvimento de sistemas complexos; Consiste
Leia maisProgramação: Estruturas de seleção
Programação de Computadores I Aula 07 Programação: Estruturas de seleção José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/53 Valores booleanos Os valores booleanos
Leia maisFaculdade de Computação
UNIVERSIDADE FEDERAL DE UBERLÂNDIA Faculdade de Computação Disciplina : Teoria da Computação Professora : Sandra Aparecida de Amo Lista de Exercícios n o 2 Exercícios sobre Modelos de Máquinas de Turing
Leia maisINSTITUTO TECNOLÓGICO
PAC - PROGRAMA DE APRIMORAMENTO DE CONTEÚDOS. ATIVIDADES DE NIVELAMENTO BÁSICO. DISCIPLINAS: MATEMÁTICA & ESTATÍSTICA. PROFº.: PROF. DR. AUSTER RUZANTE 1ª SEMANA DE ATIVIDADES DOS CURSOS DE TECNOLOGIA
Leia maisRelatório Trabalho Prático 2 : Colônia de Formigas para Otimização e Agrupamento
Relatório Trabalho Prático 2 : Colônia de Formigas para Otimização e Agrupamento Ramon Pereira Lopes Rangel Silva Oliveira 31 de outubro de 2011 1 Introdução O presente documento refere-se ao relatório
Leia mais1. Os métodos Não-Paramétricos podem ser aplicados a uma ampla diversidade de situações, porque não exigem populações distribuídas normalmente.
TESTES NÃO - PARAMÉTRICOS As técnicas da Estatística Não-Paramétrica são, particularmente, adaptáveis aos dados das ciências do comportamento. A aplicação dessas técnicas não exige suposições quanto à
Leia maisLÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti http://ead.celsomasotti.com.br
LÓGICA DE PROGRAMAÇÃO Professor Celso Masotti http://ead.celsomasotti.com.br Ano: 2015 1 HTML & PHP em Ambiente Web PARTE II Sumário I Decisão... 4 Operadores de Comparação... 6 II IF ELSEIF ELSE... 7
Leia maisProf. Me. Marcos Echevarria
Prof. Me. Marcos Echevarria Já vimos que existem vários tipos de testes de software que podemos usar para que nossos sistemas tenham uma qualidade maior. Além disso, esses testes podem ser executados em
Leia maisQualidade de Software
Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br A qualidade de software é responsabilidade de todos os participantes envolvidos no desenvolvimento de software.
Leia maisRecursividade. Aula 9
Recursividade Aula 9 Em matemática vários objetos são definidos apresentando-se um processo que os produz. Ex PI (circunferência/diâmetro) Outra definição de um objeto por um processo é o fatorial de um
Leia maisMATEMÁTICA A - 12o Ano Probabilidades - Triângulo de Pascal Propostas de resolução
MATEMÁTICA A - 12o Ano Probabilidades - Triângulo de Pascal Propostas de resolução Exercícios de exames e testes intermédios 1. A linha do triângulo de Pascal em que a soma dos dois primeiros elementos
Leia maisBusca em Memória. Secundária
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Busca em Memória Secundária e Gomes da Costa yandre@din.uem.br 1 Busca de um item em uma massa de dados que não cabe na memória principal; Procura-se
Leia maisO ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO
O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO Prof. Leugim Corteze Romio Universidade Regional Integrada URI Campus Santiago-RS leugimcr@urisantiago.br Prof.
Leia maisQuímica Molecular. Este é um programa feito em Javascript que permite explorar alguns aspetos da química
Química Molecular Introdução Este é um programa feito em Javascript que permite explorar alguns aspetos da química molecular, como a utilização de símbolos e fórmulas químicas para representar moléculas,
Leia maisJavaScript (ou JScript)
1. Introdução JavaScript (ou JScript) Uma linguagem como o JavaScript permite criar interfaces interativas na web (permite a interação do usuário). Para desenvolver web sites interativos precisamos de
Leia maisGBD PROF. ANDREZA S. AREÃO
GBD PROF. ANDREZA S. AREÃO Dado, Informação e Conhecimento DADO: Estímulos captados pelos sentidos humanos; Símbolos gráficos ou sonoros; Ocorrências registradas (em memória, papel, etc.); Indica uma situação
Leia maisMódulo 1: Contextualização
Módulo 1: Contextualização Este trabalho, tem o objetivo de auxiliar os alunos das disciplinas de Introdução a Programação de Computadores, para cursos de Engenharia e de Automação, em seus estudos e no
Leia maisINTRODUÇÃO À LINGUAGEM C++
INTRODUÇÃO À LINGUAGEM C++ 1 - VARIÁVEIS Variáveis espaço de memória reservado para armazenar tipos de dados, com um nome para referenciar seu conteúdo. Observações importantes Todas as variáveis devem
Leia maisTestando e Comparando Valores
Testando e Comparando Valores A Instrução if Um dos recursos mais importantes de uma linguagem de computador é a capacidade de testar e comparar valores, permitindo que seu programa se comporte diferentemente
Leia maisAnálise e Projeto de Software
Análise e Projeto de Software 1 Mundo Real Modelagem Elicitação Análise Problemas Soluções Gap Semântico Mundo Computacional Elicitação de Requisitos Análise de Requisitos Modelagem dos Requisitos 2 Projeto
Leia maisO professor vai utilizar o computador no estúdio, apresentando o ambiente Excel.
1 Licenciatura em Matemática Introdução a Computação/ 4.º Período Transmissão: 02/10/07 (terça-feira) Aula 4.3 P3 / Marden Tempo: 20:45 / 21:20 (35 ) 1. Unidade 02: Automação: Word, Excel e Power Point.
Leia maisEngenharia de Software II
Engenharia de Software II Aula 14 Revisão http://www.ic.uff.br/~bianca/engsoft2/ Aula 14-07/05/2006 1 Processo de Software Qual é a diferença entre uma atividade de arcabouço e uma atividade guarda chuva?
Leia maisEngenharia de Software. Tema 1. Introdução à Engenharia de Software Profa. Susana M. Iglesias
Engenharia de Software Tema 1. Introdução à Engenharia de Software Profa. Susana M. Iglesias Sistemas Computacionais Automatiza ou apóia a realização de atividades humanas (processamento da informação)
Leia maisProblemas de Otimização. Problemas de Otimização. Solução: Exemplo 1: Determinação do Volume Máximo
UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA CIVIL DISCIPLINA: CÁLCULO DIFERENCIAL E INTEGRAL I Eemplo 1: Determinação
Leia maisAlgoritmo Iterativo. Dilema do Martelo x Edifício. O Martelo. O Edifício 01/06/2014. Dilema das ações x declarações
Algoritmo Iterativo Fernando Cardeal Parece com o processo de seguir uma estrada: Como chegar à estrada? Como se manter na estrada? Como saber que chegou ao destino para sair da estrada? Como fazer tudo
Leia mais6. Programação Inteira
Pesquisa Operacional II 6. Programação Inteira Faculdade de Engenharia Eng. Celso Daniel Engenharia de Produção Programação Inteira São problemas de programação matemática em que a função objetivo, bem
Leia mais7. Estrutura de Decisão
7. Estrutura de Decisão Neste tipo de estrutura o fluxo de instruções a ser seguido é escolhido em função do resultado da avaliação de uma ou mais condições. Uma condição é uma expressão lógica. A classificação
Leia maisProgramação científica C++
Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 4 Aluno que não sabe programar int main() { cout
Leia maisEstruturas de Dados Aula 15: Árvores 17/05/2011
Estruturas de Dados Aula 15: Árvores 17/05/2011 Fontes Bibliográficas Livros: Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo 13; Projeto de Algoritmos (Nivio Ziviani): Capítulo
Leia maisPrincípios do teste de software
Teste de Software Princípios do teste de software Conforme a Lei de Pareto, 80% dos erros podem ser localizados em 20% do projeto, geralmente nos módulos principais do sistema; A atividade de teste não
Leia mais/*(Atenção: Em se tratando de uma lista estaticamente alocada, temos utilizado a estratégia de passa o tamanho máximo do vetor.)*/
========================TDA.H #include "info.h" #define TRUE 1 #define FALSE 0 #define INI_LISTA 1 #define OK 1; #define NOK -1; typedef struct nolista{ info dados; struct nolista *prox; struct nolista
Leia maisAlgoritmos e Programação
Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti
Leia mais3 Qualidade de Software
3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo
Leia maisCapítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.
Capítulo 8. CICLOS OBJETIVOS DO CAPÍTULO Conceito de ciclo Comandos do FORTRAN: DO END DO, EXIT 8.1 programa8a.f90 Para inicializar as atividades deste capítulo, deve-se executar: 1) Para acessar o programa
Leia maisCurva ABC. Cada uma destas curvas nos retorna informações preciosas a respeito de nossos produtos
Curva ABC A curva ABC tem por finalidade determinar o comportamento dos produtos ou dos clientes. Podemos desenvolver diversos tipos de curvas ABC contendo os seguintes parâmetros: 1. Produto X Demanda
Leia maisUm Exemplo de Refatoração. Prof. Alberto Costa Neto DComp/UFS alberto@ufs.br
Um Exemplo de Refatoração Prof. Alberto Costa Neto DComp/UFS alberto@ufs.br Exemplo Programa para calcular e imprimir o valor devido por um cliente de uma vídeo locadora Filme códigopreço:int 1 * * 1 Locação
Leia maisCOMANDO DA AERONÁUTICA ESCOLA DE ESPECIALISTAS DE AERONÁUTICA SUBDIVISÃO DE ADMISSÃO E DE SELEÇÃO
Questão : 45 71 79 A questão 45 do código 04, que corresponde à questão 71 do código 20 e à questão 79 do código 88 Nº de Inscrição: 4020557 Considere as tabelas abaixo: Pessoal e Endereco: Pessoal Endereco
Leia maisCEDERJ - CENTRO DE EDUCAÇÃO SUPERIOR A DISTÂNCIA DO ESTADO DO RIO DE JANEIRO
CEDERJ - CENTRO DE EDUCAÇÃO SUPERIOR A DISTÂNCIA DO ESTADO DO RIO DE JANEIRO MATERIAL DIDÁTICO IMPRESSO CURSO: Física DISCIPLINA: Informática para o Ensino de Física CONTEUDISTA: Carlos Eduardo Aguiar
Leia maisSistemas de Apoio à Decisão
Sistemas de Apoio à Decisão Processo de tomada de decisões baseia-se em informação toma em consideração objectivos toma em consideração conhecimento sobre o domínio. Modelar o processo de tomada de decisões
Leia maisAbertura do Ano. Este documento pretende auxiliar na Abertura do Ano nos diversos Módulos do software Primavera.
Abertura do Ano Este documento pretende auxiliar na Abertura do Ano nos diversos Módulos do software Primavera. Esta configuração aplica-se na Criação de Séries, Abertura do Ano em Recursos Humanos, Criação
Leia maisFilas com prioridade - Introdução (1)
AED Algoritmos e Estruturas de Dados LEEC - 2004/2005 Filas com Prioridade Filas com prioridade - Introdução (1) Filas com prioridade (Priority Queues) usadas em diversas aplicações: Despacho (scheduler)
Leia maisIntrodução à Programação. Armazenamento de Grande Quantidade de Informação Usando Vetores
Introdução à Programação Armazenamento de Grande Quantidade de Informação Usando Vetores Armazenando Grande Quantidade de Informação Como armazenar tanta informação? Vetores! 2 Tópicos da Aula Hoje, aprenderemos
Leia maisRoteiro. MC-102 Aula 01. Hardware e dispositivos. O que é um computador? Primeiro Semestre de 2008 3 A linguagem C
Roteiro Introdução à Programação de Computadores 1 Instituto de Computação Unicamp 2 Primeiro Semestre de 2008 3 O que é um computador? Computador: o que computa, calculador, calculista. (dicionário Houaiss).
Leia maisMicroeconomia II. Cursos de Economia e de Matemática Aplicada à Economia e Gestão
Microeconomia II Cursos de Economia e de Matemática Aplicada à Economia e Gestão AULA 1.2 Conceitos de Equilíbrio em jogos não-cooperativos na forma normal Isabel Mendes 2007-2008 Na aula teórica 1.1 mostrámos
Leia maisUso da linguagem de especificação SDL como alternativa ao diagrama de estados proposto pela linguagem UML
Uso da linguagem de especificação SDL como alternativa ao diagrama de estados proposto pela linguagem UML Carla Geovana Macário Marcos Chaim carla@cnptia.embrapa.br, chaim@cnptia.embrapa.br Novembro -
Leia maisc. Técnica de Estrutura de Controle Teste do Caminho Básico
1) Defina: a. Fluxo de controle A análise de fluxo de controle é a técnica estática em que o fluxo de controle através de um programa é analisado, quer com um gráfico, quer com uma ferramenta de fluxo
Leia maisMétodos de Pesquisa em Memória Primária
Algoritmos e Estrutura de Dados II Métodos de Pesquisa em Memória Primária Prof Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Pesquisa Por pesquisa (procura ou busca) entende-se o ato
Leia maisLógica Computacional
Aula Teórica 3: Sintaxe da Lógica Proposicional António Ravara Simão Melo de Sousa Departamento de Informática, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa Departamento de Informática,
Leia maisEngenharia de Software II
Engenharia de Software II Aula 28 Revisão para a Prova 2 http://www.ic.uff.br/~bianca/engsoft2/ Aula 28-28/07/2006 1 Matéria para a Prova 2 Gestão de projetos de software Conceitos (Cap. 21) Métricas (Cap.
Leia maisSumário. 1. Instalando a Chave de Proteção 3. 2. Novas características da versão 1.3.8 3. 3. Instalando o PhotoFacil Álbum 4
1 Sumário 1. Instalando a Chave de Proteção 3 2. Novas características da versão 1.3.8 3 3. Instalando o PhotoFacil Álbum 4 4. Executando o PhotoFacil Álbum 9 3.1. Verificação da Chave 9 3.1.1. Erro 0001-7
Leia maisLinguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação
Linguagem C: variáveis, operadores, entrada/saída Prof. Críston Algoritmos e Programação Linguagem C Linguagem de uso geral (qualquer tipo de aplicação) Uma das linguagens mais utilizadas Foi utilizada
Leia mais3.4 Representação física: alocação encadeada (dinâmica) Ptlista - variável ponteiro externa que indica o início da lista.
3.4 Representação física: alocação encadeada (dinâmica) As posições de memória são alocadas (ou desalocadas) na medida em que são necessárias (ou dispensadas). Os nós de uma lista encontram-se aleatoriamente
Leia maisPor que usar o Poka-Yoke no Lean Seis Sigma?
Por que usar o Poka-Yoke no Lean Seis Sigma? Por Cristina Werkema O Poka-Yoke termo japonês que significa à prova de erros (error proofing ou mistake proofing) consiste em um conjunto de procedimentos
Leia maisIntrodução à Engenharia de Computação
Introdução à Engenharia de Computação Tópico: O Computador como uma Multinível José Gonçalves - Introdução à Engenharia de Computação Visão Tradicional Monitor Placa-Mãe Processador Memória RAM Placas
Leia maishttp://www.matematica.br/programas/icg. 5. Uma lousa denominada EPI (registrador de endereço de próxima instrução).
Universidade de São Paulo Instituto de Matemática e Estatística DCC Leônidas O. Brandão 1 Computador à Gaveta O objetivo deste texto é introduzir os primeiros conceitos de algoritmos a partir de um modelo
Leia mais1 CIRCUITOS COMBINACIONAIS
Curso Técnico em Eletrotécnica Disciplina: Automação Predial e Industrial Professor: Ronimack Trajano 1 CIRCUITOS COMBINACIONAIS Um circuito digital é dito combinacional quando em um dado instante de tempo
Leia maisCURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 4º PERÍODO 7º MÓDULO AVALIAÇÃO A3 DATA 15/10/2009 ENGENHARIA DE SOFTWARE 2009/2 GABARITO COMENTADO QUESTÃO 1: Analise as afirmações
Leia maisINDAGAR E REFLECTIR PARA MELHORAR. Elisabete Paula Coelho Cardoso Escola de Engenharia - Universidade do Minho elisabete@dsi.uminho.
INDAGAR E REFLECTIR PARA MELHORAR Elisabete Paula Coelho Cardoso Escola de Engenharia - Universidade do Minho elisabete@dsi.uminho.pt Este trabalho tem como objectivo descrever uma experiência pedagógica
Leia maisAula 14: Instruções e Seus Tipos
Aula 14: Instruções e Seus Tipos Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Instruções e Seus Tipos FAC 1 / 35 Conceitos Básicos Diego Passos
Leia maisINF 1010 Estruturas de Dados Avançadas
INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 1 Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um
Leia maisListas (Parte 2) Túlio Toffolo tulio@toffolo.com.br www.toffolo.com.br. BCC202 Aula 10 Algoritmos e Estruturas de Dados I
Listas (Parte 2) Túlio Toffolo tulio@toffolo.com.br www.toffolo.com.br BCC202 Aula 10 Algoritmos e Estruturas de Dados I Listas Encadeadas Características: Tamanho da lista não é pré-definido Cada elemento
Leia maisP r o g r a m a ç ã o d e C o m p u t a d o r e s 1 o S e m - 2 0 1 3 P r o f. A n d r é A m a r a n t e L u i z L A B 5 tag %2d while printf PE1:
Inteligência É a faculdade de criar objetos artificiais, especialmente ferramentas para fazer ferramentas. Henri Bergson. WHILE Além dos comandos if-else e switch, o controle de fluxo de um programa pode
Leia maisDepartamento de Informática
Introdução aos Computadores e Programação Instituto Politécnico de Viseu Escola Superior de Tecnologia Engenharia Civil 1º Ano - 2º Semestre Departamento de Informática Ficha de Trabalho n.º 2 Soluções
Leia maisActividade 2 Intensidade da luz
Actividade 2 Intensidade da luz Conceitos matemáticos Materiais Representação gráfica dos dados Comparação de previsões de dados Relações: o quadrado do inverso Origens de erro e respectivos efeitos Conceitos
Leia maisÍndice. 1. Tipos de Atividades...3 2. O Trabalho com Leitura...4. 2.1. Estratégias de Leitura... 4. Grupo 5.4 - Módulo 7
GRUPO 5.4 MÓDULO 7 Índice 1. Tipos de Atividades...3 2. O Trabalho com Leitura...4 2.1. Estratégias de Leitura... 4 2 1. TIPOS DE ATIVIDADES Atividades de sondagem: estão relacionadas às atividades de
Leia maisIntrodução à Programação. João Manuel R. S. Tavares
Introdução à Programação João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de
Leia maisEstruturas de repetição (Ciclos)
Introdução Vamos começar por tentar resolver os seguintes exercícios com base nos conhecimentos Que já temos até agora. Problema 1: Escreva um programa em ANSI-C que escreve os primeiros 10 números inteiros
Leia maisLÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO
LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Também chamado de estrutura de seleção múltipla (caso). Assim como o if-else, o switch também é uma estrutura de seleção. O if-else realiza o teste
Leia maisExercícios práticos - Folha 3
Instalação e Manutenção de Redes e Serviços Informáticos PROGRAMAÇÃO DE SISTEMAS Exercícios práticos - Folha 3 Estruturas de decisão 1. Implemente um programa para ler do teclado o ano de nascimento do
Leia maisMODELAGEM E SIMULAÇÃO
MODELAGEM E SIMULAÇÃO Professor: Dr. Edwin B. Mitacc Meza edwin@engenharia-puro.com.br www.engenharia-puro.com.br/edwin Terminologia Básica Utilizada em de Sistemas Terminologia Básica Uma série de termos
Leia maisProf. Vitório Bruno Mazzola INE/CTC/UFSC 1. INTRODUÇÃO
Capítulo 6 ENGENHARIA DE SOFTWARE CONCEITOS BÁSICOS Prof. Vitório Bruno Mazzola INE/CTC/UFSC 1. INTRODUÇÃO Nos anos 40, quando se iniciou a evolução dos sistemas computadorizados, grande parte dos esforços,
Leia maiswww.iepes.com.br SPSS for Windows Conceitos Básicos Prof. Estevam Martins stvm@uol.com.br
SPSS for Windows Conceitos Básicos Prof. Estevam Martins stvm@uol.com.br "Sou artista suficientemente para desenhar livremente com minha imaginação. A imaginação é mais importante que o conhecimento. O
Leia maisProgramação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada
Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.
Leia maisBase de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade
Base de dados I O que é? Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Para que serve? Serve para gerir vastos conjuntos de informação de
Leia maisProf. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior
Prof. Antonio Almeida de Barros Jr. Introdução Dados Informações Banco de Dados Conceitos Básicos em Bancos de Dados Definição BD - Banco de Dados SGBD - Sistema de Gerenciamento de BD Programa de Aplicação
Leia maisMatemática Discreta para Computação e Informática
Matemática Discreta para Computação e Informática P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Computação e Informática
Leia maisResultado de esterilização com o uso do fotocatalisador. 盛 和 工 業 株 式 会 社 Seiwa Industry Co. 環 境 機 器 部 Departamento de Ecologia
光 触 媒 環 境 浄 化 装 置 による 除 菌 効 果 Resultado de esterilização com o uso do fotocatalisador 盛 和 工 業 株 式 会 社 Seiwa Industry Co. 環 境 機 器 部 Departamento de Ecologia Avaliação do resultado de esterilização através
Leia maisFila de Prioridade. Siang Wun Song - Universidade de São Paulo - IME/USP. MAC 5710 - Estruturas de Dados - 2008
MAC 5710 - Estruturas de Dados - 2008 Fila de prioridade Fila de prioridade é uma estrutura de dado que mantém uma coleção de elementos, cada um com uma prioridade associada. Valem as operações seguintes.
Leia maisEng Civil Washington Peres Núñez Dr. em Engenharia Civil pela Universidade Federal do Rio Grande do Sul
PESQUISA ANÁLISE DE CARACTERÍSTICAS DE QUALIDADE DE MISTURAS ASFÁLTICAS PRODUZIDAS NA ATUALIDADE NO SUL DO BRASIL E IMPACTOS NO DESEMPENHO DE PAVIMENTOS FLEXÍVEIS. MANUAL DE OPERAÇÃO DO BANCO DE DADOS
Leia maisProgramação Orientada a Objetos. Introdução à Análise Orientada a Objetos (AOO)
Programação Orientada a Objetos Introdução à Análise Orientada a Objetos (AOO) Cristiano Lehrer, M.Sc. Processo de Desenvolvimento de Software Um processo de software mostra os vários estágios do desenvolvimento
Leia maisCENTRO DE CIÊNCIAS TECNOLÓGICAS CCT CURSO DE TECNOLOGIA EM SISTEMAS DE INFORMAÇÃO
UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS CCT CURSO DE TECNOLOGIA EM SISTEMAS DE INFORMAÇÃO PLANEJAMENTO DE PROCESSOS ASSISTIDO POR COMPUTADOR CAPP (COMPUTER AIDED PROCESS
Leia maisUNIVERSIDADE DO TOCANTINS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PRÁTICA EM PROGRAMAÇÃO DE SISTEMAS ESTUDO DE CASO I
ESTUDO DE CASO I Um sistema de gestão patrimonial permite relacionar todos os bens de uma organização a fim de garantir sua integridade patrimonial. Esse tipo de sistema tem como finalidade automatizar
Leia maisTruques e Dicas. = 7 30 Para multiplicar fracções basta multiplicar os numeradores e os denominadores: 2 30 = 12 5
Truques e Dicas O que se segue serve para esclarecer alguma questão que possa surgir ao resolver um exercício de matemática. Espero que lhe seja útil! Cap. I Fracções. Soma e Produto de Fracções Para somar
Leia mais3. Estruturas de seleção
3. Estruturas de seleção 3.1 Introdução O último exemplo do capítulo anterior apresentava um programa para calcular a área de um triângulo, dados os comprimentos dos seus lados. Foi visto que o comando
Leia maisIMPLEMENTAÇÃO DE UM SISTEMA DE SELEÇÃO DE PEÇA USANDO CONCEITOS DE PROGRAMAÇÃO DE SISTEMA DE AUTOMAÇÃO. João Alvarez Peixoto*
IMPLEMENTAÇÃO DE UM SISTEMA DE SELEÇÃO DE PEÇA USANDO CONCEITOS DE PROGRAMAÇÃO DE SISTEMA DE AUTOMAÇÃO João Alvarez Peixoto* * Mestrando do Programa de Pós-graduação em Engenharia Elétrica - UFRGS Porto
Leia maisAnálise de Arredondamento em Ponto Flutuante
Capítulo 2 Análise de Arredondamento em Ponto Flutuante 2.1 Introdução Neste capítulo, chamamos atenção para o fato de que o conjunto dos números representáveis em qualquer máquina é finito, e portanto
Leia mais3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação
Lógica de Programação 3. INTRODUÇÃO À LINGUAGEM C Caro Aluno Vamos iniciar o terceiro capítulo da nossa disciplina. Agora vamos começar a aplicar os conceitos vistos nos capítulos anteriores em uma linguagem
Leia maisProgramação I. Departamento de Engenharia Rural Centro de Ciências Agrárias
Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Prof. Bruno Vilela Oliveira bruno@cca.ufes.br http://www.brunovilela.webnode.com.br Aulas 2-3-4-5-6-7-8 Lógica Algoritmos Portugol
Leia mais1 Introdução. Componentes Usuários. Provedor de Serviços. Figura 1.1 Ambiente de oferecimento de serviços
1 Introdução Nos últimos anos, houve um aumento notável de demanda por plataformas com suporte a diferentes mídias. Aplicações manipulando simultaneamente texto, vídeo e áudio são cada vez mais comuns.
Leia maisMANUAL DE ESTÁGIO SUPERVISIONADO CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
MANUAL DE ESTÁGIO SUPERVISIONADO CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 2016.1 MANTENEDORA Faculdade de Ciências e Tecnologia do Maranhão LTDA MANTIDA Faculdade de Ciências e Tecnologia do Maranhão
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível.
Caso de estudo O cartão fidelidade Cartão de fidelização de clientes das distribuidoras de combustível. Definição em JAVA da classe CartaoFidelidade, que deverá apresentar uma funcionalidade semelhante
Leia maisUniversidade Federal de Rondônia Técnicas de Desenvolvimento de Programas Lista 4
Universidade Federal de Rondônia Técnicas de Desenvolvimento de Programas Lista 4 WHILE 1. Faça um comando while equivalente ao descrito abaixo (que realize o mesmo tipo de procedimento e obtenha o mesmo
Leia maisProcessos. Estados principais de um Processo: Contexto de um Processo. Nível de um Processo. http://www.dei.isep.ipp.pt/~orlando/so2/processos.
Página 1 de 5 Processos Consiste num método de descrição das actividades de um sistema operativo; Todo o software incluído no sistema operativo é organizado num grupo de programas executáveis. Cada um
Leia mais