Desenho de casos de teste

Tamanho: px
Começar a partir da página:

Download "Desenho de casos de teste"

Transcrição

1 Desenho de casos de teste A função dos casos de teste é fornecer informação rápida e eficientemente Em teoria da informação, define-se informação em termos de redução de incerteza. Se há pouca incerteza, há pouca informação para ser ganha Um caso de teste que não promete obter informação significativa está mal concebido. Um bom caso de teste dá informação valiosa, quer o programa passe o teste quer falhe Universidade Portucalense Engenharia de Software ES

2 Características de um bom teste Tem uma probabilidade razoável de apanhar um erro Ao procurar ideias para casos de teste, recua-se a partir de uma ideia de como o programa pode falhar. Se o programa poderia falhar desta maneira, como é que vamos apanhar essa situação? Não é redundante É o melhor da família de testes semelhantes Não é demasiado simples nem demasiado complexo Podem-se combinar vários testes num caso, mas sem exageros Torna evidentes as situações de falha Universidade Portucalense Engenharia de Software ES

3 Qualidade dos testes Objetivos principais (em resumo...) Encontrar erros considerados relevantes por todos Ajudar a corrigir esses erros Um teste é melhor do que outros se for: Mais provável expor um erro, se ele existir Mais provável dar resultados significativos (motivadores) Mais credível (realista, representativo de acontecimentos resultantes da utilização normal do programa) Mais fácil de avaliar (não há dúvidas sobre o resultado) Útil para o diagnóstico (fácil de reproduzir) Mais informativo Adequadamente complexo Universidade Portucalense Engenharia de Software ES

4 O que é um caso de teste? IEEE standard 610 (1990) Um conjunto de entradas, condições de execução, e resultados esperados desenvolvido para um objetivo particular, tal como exercitar um determinado caminho do programa ou verificar a satisfação de um requisito específico IEEE standard Documentação especificando entradas, resultados esperados, e um conjunto de condições de execução para um item de teste Boris Beizer (1995, p. 3) Uma sequência de um ou mais sub-testes executados em sequência porque o resultado ou estado final de um sub-teste é a entrada ou estado inicial do seguinte. Universidade Portucalense Engenharia de Software ES

5 Classes de equivalência e valores fronteira Classes de equivalência Se se espera o mesmo resultado de dois testes, então são considerados equivalentes Um grupo de testes forma uma classe de equivalência se entendemos que: Todos testam o mesmo Se um deles encontra um erro, os outros provavelmente também Se um deles não encontra um erro, os outros provavelmente também não Frequentemente um grupo de testes caem na mesma classe de equivalência quando: envolvem as mesmas classes de entrada dão origem às mesmas operações no programa afetam as mesmas variáveis de saída nenhum, ou todos, forçam o programa a fazer tratamento de erros Universidade Portucalense Engenharia de Software ES

6 Abordagens ao teste Test-to-pass Atitude inicial Para encontrar erros em condições normais de funcionamento Test-to-fail Segunda fase Para encontrar erros em condições anormais de funcionamento Levar o programa ao limite, e mesmo passar o limite Universidade Portucalense Engenharia de Software ES

7 Condições para deteção de defeitos Alcance Para detetar um defeito, os dados de entrada fornecidos ao programa devem provocar a execução da instrução que contém o erro Necessidade Para detetar um defeito, os dados de entrada fornecidos ao programa devem fazer com que a instrução que contém o erro produza um valor diferente do valor correto Propagação Para detetar um defeito, os resultados internos incorretos produzidos pela instrução que contém o erro devem ser visíveis no resultado do programa Universidade Portucalense Engenharia de Software ES

8 Um exemplo (1) void check_square(double x) { double y=x; if (x<100) y= x+x ; /* devia ser x*x */ else y= sqrt(x ); if (y>x) System.out.println( verificado ); } Universidade Portucalense Engenharia de Software ES

9 Um exemplo (2) Alcance x < 100 Necessidade x 2 e x 0 Propagação Requer que (x + x > x) tenha um valor lógico diferente de (x * x > x). Isto é verdade quando 0 < x <= 1 ou x < 0. Para detetar este defeito, os dados de entrada de um caso de teste devem satisfazer as seguintes condições: (x < 100) e (x 2 e x 0) e ((0 < x <= 1) ou (x < 0)) Universidade Portucalense Engenharia de Software ES

10 Cobertura de linhas Cobertura de linhas Todas as linhas de código têm que ser testadas pelo menos uma vez IF (A > B AND C = 5) THEN do SOMETHING SET D = 5 Neste exemplo há quatro opções: A > B e C = 5 A > B e C 5 A B e C = 5 A B e C 5 O caso 1 testa todas as linhas de código Universidade Portucalense Engenharia de Software ES

11 Cobertura de ramos Cobertura de ramos Todas as seleções são testadas para cada uma das opções Inclui o teste de todos os ramos e todas as instruções No exemplo anterior, seria necessário testar um caso em que do SOMETHING é executado, e outro em que não é Universidade Portucalense Engenharia de Software ES

12 Cobertura de condições Cobertura de condições Testa todas as formas pelas quais uma condição pode ser feita verdadeira ou falsa No exemplo, todos os quatro casos Universidade Portucalense Engenharia de Software ES

13 Teste de caminhos O teste de caminhos não garante que o programa não tem erros Exemplo: INPUT A INPUT B PRINT A / B Funciona com A=1 e B=2, e testa todos os caminhos O teste é completo? O problema não é de caminhos, mas de dados Universidade Portucalense Engenharia de Software ES

14 Um exemplo A função pos_sum calcula a soma dos elementos positivos do array a; num_of_entries é o número de elementos do array pos_sum(a, num_of_entries) returns integer int sum = 0 int i = 0 while (i < num_of_entries) if a[i] > 0 sum = sum + a[i] endif i = i + 1 end while return sum end pos_sum O array a = [ 1, -45, 3] testa todas as instruções (linhas) e todos os ramos do programa Universidade Portucalense Engenharia de Software ES

15 Teste de ciclos Muitos defeitos estão associados à utilização de ciclos Se um ciclo pode ter uma gama de 0 a n iterações, devem ser usados casos de teste com: zero iterações uma iteração duas iterações k iterações, onde k < n n-1 iterações n iterações n+1 iterações (se possível) Exemplo: pretende-se somar os primeiros k elementos de um array com 20 elementos (isto é, n = 20) Universidade Portucalense Engenharia de Software ES

16 Outro exemplo (1) // Return the greatest // common denominator. int euclid (int m, int n) { assert(n > 0); assert(m > 0); int r; if (n > m) { r = m; m = n; n = r; } r = m % n ; while (r! = 0) m = n; n = r; r = m % n ; } return n; } Universidade Portucalense Engenharia de Software ES

17 Outro exemplo (2) n > m r!= 0 Caso de teste Caminho F F n = 3, m = 9 a c V F n = 9, m = 3 b c V V n = 8, m = 3 b d d d c Uma sugestão para gerar caminhos de teste: 1. Definir um caminho base, o principal do algoritmo 2. Alterar o resultado da primeira condição, tentando manter os resultados das restantes 3. Em seguida alterar o resultado da segunda condição. Repetir este processo para cada condição 4. Considerar o primeiro caminho variante (resultado do ponto 2) como o caminho base, e repetir o processo. 5. Repetir o ponto anterior para cada um dos caminhos alternativos Universidade Portucalense Engenharia de Software ES

18 Encontrando classes de equivalência (1) Duas pessoas a analisar o mesmo programa encontrarão diferentes classes de equivalência. É um processo subjetivo Isto não significa que todas as soluções são corretas! Compensa olhar para as classes de equivalência encontradas Ajuda a selecionar bem os testes, evitando perder tempo a repetir o que no fundo é o mesmo teste Testa-se um ou alguns dos casos de cada classe de equivalência Universidade Portucalense Engenharia de Software ES

19 Encontrando classes de equivalência (2) Não esquecer classes de equivalência para entradas inválidas É frequentemente a melhor fonte de erros Exemplo: um programa deve aceitar um número entre 1 e 99 Há pelo menos quatro classes de equivalência: Qualquer número entre 1 e 99 é válido Qualquer número menor que 1 é demasiado pequeno Qualquer número maior que 99 é demasiado grande Se não é um número, não é aceite Universidade Portucalense Engenharia de Software ES

20 Classes de equivalência - Outlines Organizar as classificações encontradas numa tabela ou outline 1. Fornecer um número 1.1. Caso válido Entre 1 e Casos inválidos > Cálculo cujo resultado é um valor inválido Números negativos Letras e outros caracteres não numéricos Letras Operadores aritméticos tais como +, -, *, / Outros caracteres não numéricos Com código ASCII menor que o do Com código ASCII maior que o do 9 Universidade Portucalense Engenharia de Software ES

21 Domínio de entradas Passo 1 identificar funções testáveis Casos de uso podem ser usados para identificar funções testáveis No caso de POO, cada método público pode ser uma função testável Passo 2 identificar todos os parâmetros que podem influenciar o comportamento de cada função testável Se o método pertence a uma classe com estado interno, este tem que ser incluído como parâmetro Passo 3 - definir os domínios das entradas Abordagem interface-based Considera cada parâmetro individualmente Abordagem functionality-based Considera as características que correspondem à funcionalidade pretendida Universidade Portucalense Engenharia de Software ES

22 Gamas de valores Procurar gamas de valores Sempre que se encontra uma gama de valores, encontram-se várias classes de equivalência Normalmente três classes inválidas: valores abaixo do limite, valores acima do limite, e valores não numéricos Procurar gamas múltiplas (por exemplo escalões fiscais) Cada sub-gama é uma classe de equivalência A transição entre gamas contíguas é frequentemente fonte de problemas Procurar pertença a um grupo Se uma entrada deve pertencer a um grupo, uma classe de equivalência inclui todos os membros do grupo, e outra tudo o resto Por exemplo, nomes de países Universidade Portucalense Engenharia de Software ES

23 Listas e menus Analisar respostas a listas e menus Tem que se fornecer um valor de uma lista. O programa responde de forma diferente a cada valor Cada valor possível é uma classe de equivalência Exemplo: Resposta Sim ou Não a Tem a certeza? (Sim/Não) Exemplo: estado civil no impresso do IRS Procurar variáveis que têm que ser iguais Pode escolher qualquer cor desde que seja preto. Exemplo: o produto está esgotado, exceto na cor preta. Escolhas que costumavam ser válidas deixam de o ser; verificar que só é possível escolher essa cor Universidade Portucalense Engenharia de Software ES

24 Tempo Criar classes de equivalência baseadas no tempo Suponhamos que se prime a tecla de espaço antes, durante, ou depois do carregamento de um programa do disco. Testes deste tipo fazem falhar alguns programas. Classes de equivalência: Tudo que se faz muito antes da operação, tudo que se faz pouco antes da operação, tudo que se faz pouco antes do programa terminar a leitura, etc. Procurar grupos de variáveis que devem dar origem a cálculos com um dado resultado Fornecer os três ângulos de um triângulo; a soma tem que ser 180º Universidade Portucalense Engenharia de Software ES

25 Baseadas nas saídas Procurar eventos de saída equivalentes Desenhar um segmento de reta Classe de equivalência válida: desde 1 pixel de largura, e até 10cm de comprimento Classes de equivalência inválidas: (1) não é desenhado o segmento, (2) o segmento tem mais de 10cm, (3) é desenhada uma curva A dificuldade está em determinar que entradas se devem dar ao programa para gerar as diferentes saídas Universidade Portucalense Engenharia de Software ES

26 Fronteiras - gamas de valores Devem-se usar, normalmente, até meia dúzia de casos de cada classe de equivalência Os melhores casos estão nas fronteiras das classes O maior, o menor, o próximo, o mais alto, o mais feio... Para detetar o problema das desigualdades ( < ou?) Normalmente os programas que falham fora das fronteiras também falham nas fronteiras Universidade Portucalense Engenharia de Software ES

27 Fronteiras - grupos de variáveis Há situações em que em vez de se pensar só numa variável, é necessário pensar em grupos de variáveis Exemplo: Dia do mês, numa data 1-28, 1-29, 1-30, 1-31 Dividem-se os meses em três conjuntos: {Fevereiro} {Abril, Junho, Setembro, Novembro} {Janeiro, Março, Maio, Julho, Agosto, Outubro, Dezembro} Para teste, seleciona-se pelo menos um mês de cada conjunto Universidade Portucalense Engenharia de Software ES

28 Exemplos Fronteiras - exemplos Se a gama válida é 1 a 99, os casos válidos são 1 a 99. Usar 0 e 100 para testes de valores inválidos Se um programa deve escrever cheques com valores de 1 a 99, aceitará escrever cheques de 0, 100, ou valores negativos? Se o programa espera uma letra maiúscula, testar A e Z. Deve-se porque é vizinho de A, e [ que é vizinho de Z. Testar também a e z. Se o programa deve desenhar linhas retas de largura superior a 1 pixel, e até 10 cm de comprimento, testar com uma linha de largura 1 pixel e de comprimento 10 cm. Testar com uma linha de 0 pixels de largura. Se a soma das entradas deve ser 180, testar 179, 180 e 181. Se o programa espera um dado número de valores de entrada, fornecer-lhe o valor correto, um a menos e um a mais. Universidade Portucalense Engenharia de Software ES

29 Exemplo de classes de equivalência (1) A referência dos produtos de uma empresa tem entre 3 e 15 caracteres alfanuméricos, dos quais os 2 primeiros têm que ser letras 1: Número de caracteres entre 3 e 15 2: Têm que ser alfanuméricos 3: Os dois primeiros têm que ser letras 3 classes de equivalência derivam da primeira condição: CE1: menos de 3 caracteres, inválido CE2: entre 3 e 15 caracteres, válido CE3: mais de 15 caracteres, inválido 2 classes de equivalência derivam da segunda condição: CE4: caracteres todos alfanuméricos, válido CE5: algum carácter é não alfanumérico, inválido 2 classes de equivalência derivam da terceira condição: CE6: os dois primeiros caracteres são letras, válido CE7: algum dos dois primeiros caracteres não é uma letra, inválido Universidade Portucalense Engenharia de Software ES

30 Exemplo de classes de equivalência (2) A tabela de descrição das classes de equivalência poderia ser: Condição Classes de equivalência válidas Classes de equivalência inválidas 1 CE2 CE1, CE3 2 CE4 CE5 3 CE6 CE7 Em seguida devem ser analisados os valores fronteira, ou limite. Por exemplo para o comprimento da referência: 1: Valor imediatamente abaixo do limite inferior (2) 2: Valor no limite inferior (3) 3: Valor imediatamente acima do limite inferior (4) 4: Valor imediatamente abaixo do limite superior (14) 5: Valor no limite superior (15) 6: Valor imediatamente acima do limite superior (16) Universidade Portucalense Engenharia de Software ES

31 Exemplo de classes de equivalência (3) Exemplo de valores de entradas para contemplar as classes de equivalência e valores fronteira No. Valor de entrada Classes de equivalência válidas 1 abc1 CE2, CE4, CE6, (3) 2 ab1 CE2, CE4, CE6, (2) 3 abcdef CE2, CE4, CE6, (5) 4 abcde CE2, CE4, CE6, (4) 5 abc* CE2, CE6 (3) CE5 6 ab CE4, CE6 CE1, (1) 7 abcdefg CE4, CE6 CE3, (6) 8 a123 CE2, CE4, (3) CE7 9 abcdef123 CE2, CE4, CE6 Classes de equivalência inválidas Universidade Portucalense Engenharia de Software ES

32 Critérios de combinação de classes (1) Quando há várias classes de equivalência correspondentes a diferentes variáveis, temos necessidade de testar combinações de valores dessas variáveis. Dependendo da situação, podemos elaborar conjuntos de casos de teste mais ou menos exaustivos. Exemplo: três partições com classes [A,B], [1,2,3] e [x,y] Critério: Cobertura de todas as combinações 12 casos: (A,1,x) (A,1,y) (A,2,x) (A,2,y) (A,3,x) (A,3,y) (B,1,x) (B,1,y) (B,2,x) (B,2,y) (B,3,x) (B,3,y) Universidade Portucalense Engenharia de Software ES

33 Critérios de combinação de classes (2) Critério: Cobertura de um valor de cada classe 3 casos, por exemplo: (A,1,x) (B,2,y) (A,3,x) Outro exemplo para este critério: Suponhamos uma função para classificar um triângulo, dados os comprimentos dos 3 lados. Cada lado pode ter os valores de teste -1, 0, 1, 2, dos quais os dois primeiros correspondem a casos inválidos. Segundo este critério, bastariam os casos (-1,-1,-1) (0,0,0) (1,1,1) (2,2,2) que são claramente insuficientes Universidade Portucalense Engenharia de Software ES

34 Critérios de combinação de classes (3) Cobertura de pares Um valor de cada classe deve ser combinado com um valor de cada classe de cada uma das outras variáveis Neste exemplo temos 8 casos: (A,1,x) (B,1,y) (A,2,x) (B,2,y) (A,3,x) (B,3,y) (A,-,y) (B,-,x) Cobertura de caso base É escolhido um valor base de cada classe, e é definido um teste com esses valores; outros testes são definidos variando uma variável de cada vez, a partir dos valores base Caso base, por exemplo: (A,1,x) Mais 4 casos, para os valores B, 2, 3 e y que não pertencem ao caso base: (B,1,x) (A,2,x) (A,3,x) (A,1,y) Cobertura de múltiplos casos base Como o anterior, mas com múltiplos casos base Universidade Portucalense Engenharia de Software ES

Testes de software - Teste funcional

Testes de software - Teste funcional Testes de software - Teste funcional Vitor Alcântara de Almeida Universidade Federal do Rio Grande do Norte Natal, Brasil 30 de outubro de 2014 Alcântara (UFRN) Testes de software - Testes funcionais 30

Leia mais

Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo

Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo Teste de Software Técnica de Teste Estrutural Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com 1 Agenda Casos de Teste e Cenários de Teste Técnicas de Teste Técnica de Teste Estrutural 2 Casos

Leia mais

Unidade VI. Técnicas de Teste de Software Teste Estrutural. Profa. Dra. Sandra Fabbri

Unidade VI. Técnicas de Teste de Software Teste Estrutural. Profa. Dra. Sandra Fabbri Unidade VI Técnicas de Teste de Software Profa. Dra. Sandra Fabbri Os requisitos de teste são extraídos de uma implementação em particular Teste dos detalhes procedimentais A maioria dos critérios dessa

Leia mais

Testes de correção (de defeitos)

Testes de correção (de defeitos) Testes de correção (de defeitos) Revelam a presença de erros, mas NÃO a ausência Um teste bem sucedido é aquele que descobre o maior número de erros existentes. Deve ser utilizado em conjunto com técnicas

Leia mais

Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo

Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo Teste de Software Técnica de Teste Estrutural Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com 1 Agenda Técnica de Teste Estrutural Critérios de Teste 2 Casos de Teste Diante da impossibilidade

Leia mais

Projeto de Casos de Teste

Projeto de Casos de Teste Projeto de Casos de Teste Alcemir Santos Slides baseados no Capítulo 4 do livro abaixo: Myers, Glenford J.. The Art of So1ware Tes3ng. Editora Wiley. 2004. 2ed. Este trabalho é licensiado sobre a licensa

Leia mais

Plano de testes. Norma ANSI/IEEE para Documentação de Teste de Software define plano de testes como:

Plano de testes. Norma ANSI/IEEE para Documentação de Teste de Software define plano de testes como: Plano de testes Norma ANSI/IEEE 829-1998 para Documentação de Teste de Software define plano de testes como: Um documento que define o âmbito, abordagem, recursos e escalonamento (planeamento) das atividades

Leia mais

1. Quando algo visível para os usuário finais é um desvio em relação ao especificado ou um comportamento não esperado, isso é chamado de:

1. Quando algo visível para os usuário finais é um desvio em relação ao especificado ou um comportamento não esperado, isso é chamado de: Simulado CTFL- BSTQB Tempo de duração: 60 minutos 1. Quando algo visível para os usuário finais é um desvio em relação ao especificado ou um comportamento não esperado, isso é chamado de: a) Um erro b)

Leia mais

Programação I Aula 17 Correção de programas Pedro Vasconcelos DCC/FCUP

Programação I Aula 17 Correção de programas Pedro Vasconcelos DCC/FCUP Programação I Aula 17 Correção de programas DCC/FCUP DCC/FCUP 2019 1/ 30 Nesta aula 1 Classes de erros 2 Execução passo-a-passo 3 Testes na documentação 4 Asserções 5 Outros erros comuns DCC/FCUP 2019

Leia mais

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema ALGORITMIA Resolução De Problemas Em Informática Docente: Ana Paula Afonso 2000-2001 Resolução de Problemas 1. Analisar o problema Conhecer o bem o problema Descrever o problema: subdividir, detalhar 2.

Leia mais

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Aula 20 Testes 3 Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Slides adaptados de: Staa, A.v. Notas de Aula em Programacao Modular; 2008. Teste de Caixa Branca O que

Leia mais

Fundamentos de Teste de Software

Fundamentos de Teste de Software Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 2- Teste Estático e Teste Dinâmico Aula 5 Técnicas de Especificação SUMÁRIO INTRODUÇÃO... 3 TÉCNICAS PARA PROJETO DE CASOS

Leia mais

Engenharia de Software. Teste de Software. Introdução. Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff

Engenharia de Software. Teste de Software. Introdução. Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff Engenharia de Software Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff Teste de Software Introdução Estratégias de teste Testes de módulo Testes de integração Teste de aceitação

Leia mais

Linguagem de Programação

Linguagem de Programação Linguagem de Programação Operadores de Condição if() / else if() / else{} / switch() Gil Eduardo de Andrade Introdução Operadores de condição permitem, ao programador, efetuar testes que determinam quais

Leia mais

Vamos estudar o que se entende por «programação», que é uma linguagem de programação e ver algumas terminologias própria de programação e como

Vamos estudar o que se entende por «programação», que é uma linguagem de programação e ver algumas terminologias própria de programação e como Vamos estudar o que se entende por «programação», que é uma linguagem de programação e ver algumas terminologias própria de programação e como utilizá-la. 1 Por si só, uma equipe não é muito inteligente.

Leia mais

SSC 0721 Teste e Validação de Software

SSC 0721 Teste e Validação de Software SSC 0721 Teste e Validação de Software Conceitos básicos Prof. Marcio E. Delamaro delamaro@icmc.usp.br SSC 0721 Teste e Validação de Software ICMC/USP p. 1 O que é teste Atividade de executar um programa

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos

Leia mais

Introdução ao Teste de Software

Introdução ao Teste de Software Introdução ao Teste de Software Ricardo A. Ramos [Baseado na apresentação do LABS ICMC-USP -> http://www.labes.icmc.usp.br] Organização Introdução Teste de Software Terminologia e Conceitos Básicos Técnicas

Leia mais

Lógica de Programação I

Lógica de Programação I Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Comando Switch O comando Switch pode ser visto como uma especialização do comando if. Foi criado para facilitar um uso particular de comandos if encadeados.

Leia mais

Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software

Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software Engenharia de Software Aula 17 Desenvolvimento de Software Testes de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 7 Maio 2012 1. Especificação de requisitos 2. Projeto

Leia mais

MC102 Algoritmos e Programação de Computadores

MC102 Algoritmos e Programação de Computadores MC102 Algoritmos e Programação de Computadores Instituto de Computação UNICAMP Primeiro Semestre de 2014 Roteiro 1 Maior número 2 Soma de n números 3 Fatorial 4 Máximo Divisor Comum (MDC) 5 Números primos

Leia mais

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Introdução à Programação. Expressões Booleanas e Comandos Condicionais Introdução à Programação Expressões Booleanas e Comandos Condicionais Comandos Condicionais Misture os ingredientes Unte forma com manteiga Despeje a mistura na forma Algoritmo para preparação de bolo

Leia mais

6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES?

6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES? 6. QUAIS AS TÉCNICAS E RESPECTIVOS CRITÉRIOS DE TESTE EXISTENTES? Atualmente existem muitas maneiras de se testar um software. Mesmo assim, existem as técnicas que sempre foram muito utilizadas em sistemas

Leia mais

Visualização 2D: - Transformação window to viewport - Clipping

Visualização 2D: - Transformação window to viewport - Clipping Visualização 2D: - Transformação window to viewport - Clipping Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Transformação de Visualização (window to viewport) Objectivo: obter uma matriz de transformação

Leia mais

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se

Leia mais

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Teste de Software Engenharia de Software 2o. Semestre de 2006 Slide

Leia mais

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 Verificação e Validação (V&V) S.L.Pfleeger (Cap.8 & 9) R.Pressman (Cap.13 & 14) I.Sommerville (Cap.22 & 23) Introdução Verificação

Leia mais

Prof. A. G. Silva. 13 de setembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de setembro de / 21

Prof. A. G. Silva. 13 de setembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de setembro de / 21 INE5603 Introdução à POO Prof. A. G. Silva 13 de setembro de 2017 Prof. A. G. Silva INE5603 Introdução à POO 13 de setembro de 2017 1 / 21 Estruturas de repeteção (INTRODUÇÃO) Prof. A. G. Silva INE5603

Leia mais

5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios.

5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios. 3636363636363636363636363636363636363636363636363636 5 - COMANDOS DE CONTROLE DE PROGRAMA Em C existem os comandos de decisões, os comandos de iteração (ou de laços) e os comandos de desvios. 5.1 - Comandos

Leia mais

Garantia de Qualidade

Garantia de Qualidade Garantia de Qualidade Teste de Software Profa Rosana Braga Material produzido por docents do Labes e revisado por Simone Souza Disciplina: Engenharia de Software ICMC/USP O Processo de Engenharia de Software

Leia mais

Introdução à Programação em C Input / Output

Introdução à Programação em C Input / Output Introdução à Programação em C Input / Output Resumo Aula Anterior Programa começa com função main() Sintaxe para definição de funções Definição de variáveis e atribuições Estruturas de controlo if-then

Leia mais

Introdução a Testes de Software. Ricardo Argenton Ramos

Introdução a Testes de Software. Ricardo Argenton Ramos Introdução a Testes de Software Ricardo Argenton Ramos ricargentonramos@gmail.com Agenda da Aula Introdução sobre Testes; Testes Funcionais de software; Testes Estruturais de Software; Teste de Software

Leia mais

Desenho de Segmentos de Recta

Desenho de Segmentos de Recta Desenho de Segmentos de Recta Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Alg. para desenho de Segmentos de Recta - Motivação A maior parte das primitivas 2D, desenhadas centenas ou mesmo milhares

Leia mais

Teste de Software: Teste Funcional. Simone Senger Souza ICMC/USP

Teste de Software: Teste Funcional. Simone Senger Souza ICMC/USP Teste de Software: Teste Funcional Simone Senger Souza ICMC/USP Teste de Software Objetivo? Quando testar? O que usar para testar? Quando parar de testar? Teste de Software Teste Funcional Critérios de

Leia mais

Linguagens de Programação Aula 14

Linguagens de Programação Aula 14 Linguagens de Programação Aula 14 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Linguagem Haskell Funções Tipos básicos Expressões 2 Na aula de hoje Linguagem Haskell Listas 3 Listas e Tuplas

Leia mais

Fundamentos Programação

Fundamentos Programação Fundamentos Programação A programação de computadores não é difícil. Realmente só requer algo como: Aprender alguns conceitos gerais Ser cuidadoso, organizado e lógico Praticar até aprender a dominar a

Leia mais

Estruturas de Repetição

Estruturas de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números

Leia mais

Teste Estrutural ou Caixa Branca

Teste Estrutural ou Caixa Branca Teste de Estrutura de Controle Os testes dos caminhos básicos (todos os nós) e caminhos independentes (todas as arestas) são simples e eficaz, mas nem sempre são suficientes Outras variações: Teste de

Leia mais

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Dados em Algoritmos Quando escrevemos nossos programas, trabalhamos com: Dados que nós fornecemos ao programa Dados

Leia mais

AULA TEÓRICA 03 COMANDO CONDICIONAL

AULA TEÓRICA 03 COMANDO CONDICIONAL Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM BCC701 Programação de Computadores I www.decom.ufop.br/red 2017-1 AULA TEÓRICA 03 COMANDO CONDICIONAL 1 Programação Estruturada

Leia mais

Exercícios Repetição

Exercícios Repetição Curso de Engenharia de Controle e Automação Disciplina: Informática para a Automação Professor: Marcelo Cendron Exercícios Repetição 1.1 8.3 Exercícios 1. Faça um programa utilizando o comando while, que

Leia mais

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho Gilson de Souza Carvalho gaucho.gilson@hotmail.com 3.1.3 Condições compostas Linguagem e Técnicas em Programação As condições que vimos até agora sempre foram únicas. Entretanto, conforme aumenta a complexidade

Leia mais

Linguagem C/C++ Estrutura Condicional. Prof: Rosemary Melo

Linguagem C/C++ Estrutura Condicional. Prof: Rosemary Melo Linguagem C/C++ Estrutura Condicional Prof: Rosemary Melo Estrutura Condicional if... (simples) Sintaxe (como o comando deve ser escrito): if (condição) comando; ou, no caso de mais de um comando: if (condição)

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Program 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 um programa.

Leia mais

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo Este guia irá lhe ajudar a entender o laço de repetição

Leia mais

Introdução à Programação. João Manuel R. S. Tavares

Introduçã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 mais

Métodos Numéricos Zeros Posição Falsa e Ponto Fixo. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina

Métodos Numéricos Zeros Posição Falsa e Ponto Fixo. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina Métodos Numéricos Zeros Posição Falsa e Ponto Fixo Professor Volmir Eugênio Wilhelm Professora Mariana Kleina Método da Posição Falsa 2 Método da Posição Falsa O processo consiste em dividir/particionar

Leia mais

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1 Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação Lista de Exercícios 1 1. O programa seguinte tem vários erros em tempo de compilação. Encontre-os. Main() int a=1; b=2,

Leia mais

Questão 1 Analise o trecho do código abaixo, escrito na linguagem C#:

Questão 1 Analise o trecho do código abaixo, escrito na linguagem C#: Programação para Games I Questão 1 Analise o trecho do código abaixo, escrito na linguagem C#: String[] vetor= { E, A, Z, D, W }; for(int i=4; i

Leia mais

Nós estamos acostumados com operações aritméticas: soma, subtração, multiplicação e divisão.

Nós estamos acostumados com operações aritméticas: soma, subtração, multiplicação e divisão. Bitwise tricks Operações com bits Nós estamos acostumados com operações aritméticas: soma, subtração, multiplicação e divisão. Mas os computadores entendem melhor operações booleanas, que computam diretamente

Leia mais

Matemática. Exame Discursivo 07 / 12 / ª Fase. Caderno de prova. Boa prova!

Matemática. Exame Discursivo 07 / 12 / ª Fase. Caderno de prova. Boa prova! 2ª Fase Exame Discursivo 07 / 12 / 2008 Matemática Caderno de prova Este caderno, com dezesseis páginas numeradas seqüencialmente, contém dez questões de Matemática. Não abra o caderno antes de receber

Leia mais

Introdução à Programação em C (II)

Introdução à Programação em C (II) Introdução à Programação em C (II) Resumo Streams de Texto Leitura e escrita de caracteres Caracteres como números inteiros Exemplos Cópia de Ficheiros Contagem de Caracteres Contagem de Linhas Contagem

Leia mais

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved.

Programação. Folha Prática 5. Lab. 5. Departamento de Informática Universidade da Beira Interior Portugal. Copyright 2010 All rights reserved. Programação Folha Prática 5 Lab. 5 Departamento de Informática Universidade da Beira Interior Portugal Copyright 2010 All rights reserved. 1. Revisão. 2. Objectivos. 3. Exercícios LAB. 5 5ª semana ESTRUTURAS

Leia mais

Resolução das Questões Discursivas

Resolução das Questões Discursivas COMISSÃO PERMANENTE DE SELEÇÃO COPESE PRÓ-REITORIA DE GRADUAÇÃO PROGRAD CONCURSO PISM III - TRIÊNIO 008-010 Prova de Matemática Resolução das Questões Discursivas São apresentadas abaixo possíveis soluções

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 5 Estruturas de Repetição Profa. Marina Gomes marinagomes@unipampa.edu.br 26/04/2017 Engenharia de Computação - Unipampa 1 Aula de Hoje Estrutura de repetição Comando for

Leia mais

Capítulo 8. Estruturas de Controle no Nível de Sentença

Capítulo 8. Estruturas de Controle no Nível de Sentença Capítulo 8 Estruturas de Controle no Nível de Sentença Níveis de fluxo de controle Computações são realizadas por meio da avaliação de expressões e da atribuição dos valores a variáveis Para tornar a computação

Leia mais

Listas Estáticas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.

Listas Estáticas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof. Listas Estáticas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de

Leia mais

Linguagem Java - Introdução

Linguagem Java - Introdução Linguagem Java - Introdução Identificadores válidos resultado teste01 _numeroclientes $fortuna Identificadores Identificadores inválidos 101dalmatas 34 #x Palavras reservadas abstract assert*** boolean

Leia mais

Aula 6 Oficina de Programação Estruturas Condicionais no C. Profa. Elaine Faria UFU

Aula 6 Oficina de Programação Estruturas Condicionais no C. Profa. Elaine Faria UFU Aula 6 Oficina de Programação Estruturas Condicionais no C Profa. Elaine Faria UFU - 2017 Estrutura Condicional Simples Algoritmo se () entao instrução fimse A instrução só será executada se

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Programação I Aula 19 Aritmética com racionais Pedro Vasconcelos DCC/FCUP

Programação I Aula 19 Aritmética com racionais Pedro Vasconcelos DCC/FCUP Programação I Aula 19 Aritmética com racionais DCC/FCUP DCC/FCUP 2019 1/ 30 Nesta aula 1 Aritmética com racionais 2 Simplificação 3 Operações 4 Comparações DCC/FCUP 2019 2/ 30 Aritmética com racionais

Leia mais

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação 1 Algoritmo Prof. Anderson Almeida Ferreira Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação Desenvolvimento de programas 2 Análise do problema Desenvolvimento

Leia mais

No segundo caso, se a condição for verdadeira é executado o bloco-instruções1

No segundo caso, se a condição for verdadeira é executado o bloco-instruções1 1.3 Instruções de Decisão 1.3.1 Sintaxe 1. Decisão binária A decisão binária permite bifurcar a execução de um algoritmo em dois fluxos distintos, para tal é utilizada instrução if que tem duas formas

Leia mais

Programação Introdução

Programação Introdução PROGRAMAÇÃO Programação Introdução Prof. Dr. Adriano Mauro Cansian 1 Introdução Para armazenar um algoritmo na memória de um computador e para que ele possa, em seguida, comandar as operações a serem executadas,

Leia mais

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:

Leia mais

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação)

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação) Curso: Análise e Desenvolvimento de Sistemas Disciplina Algoritmos e Programação (Conceitos Práticos de Lógica de Programação) Prof. Wagner Santos C. de Jesus wsantoscj@gmail.com Conceito de Algoritmo

Leia mais

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica. Computação L2 Linguagem C++ ovsj@cin.ufpe.br Observação: Material Baseado na Disciplina Computação Eletrônica. Alfabeto São os símbolos ( caracteres ) permitidos na linguagem: Letras (maiúsculas e minúsculas);

Leia mais

Aula 6 Instruções de Seleção Cleverton Hentz

Aula 6 Instruções de Seleção Cleverton Hentz Aula 6 Instruções de Seleção Cleverton Hentz Sumário de Aula Instrução Condicional Instrução Escolha Teste de Mesa 2 Introdução O fluxo de execução é a sequência(ordem) em que as instruções são executadas

Leia mais

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre T. 04 Algoritmos e Programação Estruturada Objectivos: Aprender o conceito de algoritmo e suas características fundamentais

Leia mais

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima Gerência de Projetos e Qualidade de Software Prof. Walter Gima 1 OBJETIVO Compreender uma série de técnicas de testes, que são utilizadas para descobrir defeitos em programas Conhecer as diretrizes que

Leia mais

Teste de Software. Teste Funcional Teste Estrutural. Teste Baseado em Erros (Análise de Mutantes)

Teste de Software. Teste Funcional Teste Estrutural. Teste Baseado em Erros (Análise de Mutantes) Teste de Software Teste Funcional Teste Estrutural Teste Baseado em Erros (Análise de Mutantes) Profa Rosana T. V. Braga Material adaptado do material dos profs. Ellen Francine Barbosa e José Carlos Maldonado

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação

Leia mais

Tipos Primitivos, estruturas de iteração e decisão.

Tipos Primitivos, estruturas de iteração e decisão. Tipos Primitivos, estruturas de iteração e decisão. André Luis Meneses Silva andreluis.ms@gmail.com http://br.geocities.com/programacao2ufs/ Agenda Tipos Primitivos de Dados Variáveis e Constantes es Comandos

Leia mais

Processamento digital de imagens

Processamento digital de imagens Processamento digital de imagens Agostinho Brito Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte 6 de outubro de 2016 Segmentação de imagens A segmentação

Leia mais

A linguagem Prolog. Sintaxe, terminologia e semântica informal: Os objectos de dados em Prolog são chamados termos.

A linguagem Prolog. Sintaxe, terminologia e semântica informal: Os objectos de dados em Prolog são chamados termos. A linguagem Prolog Sintaxe, terminologia e semântica informal: Os objectos de dados em Prolog são chamados termos. Um termo ou é uma constante, ou uma variável ou um termo composto. As constantes incluem

Leia mais

8º ANO ENSINO FUNDAMENTAL Matemática. 1º Trimestre 45 questões 26 de abril (Sexta-feira)

8º ANO ENSINO FUNDAMENTAL Matemática. 1º Trimestre 45 questões 26 de abril (Sexta-feira) 8º ANO ENSINO FUNDAMENTAL Matemática S º Trimestre 5 questões 6 de abril (Sexta-feir 09 SIMULADO OBJETIVO 8º ANO º TRIMESTRE. O número, corresponde à fração 0. 00. 000.. 99. MATEMÁTICA COMENTÁRIO/RESOLUÇÃO:

Leia mais

Introdução ao Fortran 90-3

Introdução ao Fortran 90-3 Introdução ao Fortran 90-3 Departamento de Física UFPel Controles de Fluxo de Execução Definição Estruturas (ou blocos) de programação que permitem controlar o fluxo de execução de um programa, além da

Leia mais

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema

Análise do problema. Desenvolvimento de programas. Desenvolvimento do algoritmo. Análise do problema Desenvolvimento de programas 1 Análise do problema 2 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Conhecer exatamente o que o problema

Leia mais

LISTA DE EXERCÍCIOS: 1ª Unidade

LISTA DE EXERCÍCIOS: 1ª Unidade LISTA DE EXERCÍCIOS: 1ª Unidade 1) Dado o trecho de código a seguir, qual será a saída se as entradas forem, respectivamente: A) 0 e 1 B) 2 e 3 C) 1 e 1 #include int main(){ float num1, num2;

Leia mais

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2002/ Valores

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2002/ Valores ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2002/2003 TRABALHO PRÁTICO Nº

Leia mais

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON 02/47 O QUE É PYTHON? Python é uma linguagem de propósito geral, de alto nível e interpretada Python será

Leia mais

Programação de Redes de Computadores

Programação de Redes de Computadores 1: Introdução 1 MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS SÃO JOSÉ SANTA CATARINA Programação de Redes de Computadores

Leia mais

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Entrada e saída: escrevendo na tela Veja uma comparação entre um programa Portugol e seu equivalente em C: Inicio Inteiro

Leia mais

Comandos em C (cont.)

Comandos em C (cont.) Comandos em C (cont.) Operador ternário:? O operador condicional possui uma opção um pouco estranha. É o único operador C que opera sobre três expressões. Sua sintaxe geral possui a seguinte construção:

Leia mais

Comandos de Controle do Programa

Comandos de Controle do Programa Comandos de Controle do Programa Comandos de Seleção - if, else, switch Comandos de Iteração - for, while, do-while Comandos de Desvio - return, goto, break, continue O Comando if O if O else O if-else-if

Leia mais

TÉCNICO DE INFORMÁTICA - SISTEMAS

TÉCNICO DE INFORMÁTICA - SISTEMAS 782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar

Leia mais

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa Desenvolvimento de programas 1 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Análise do problema 2 Conhecer exatamente o que o problema

Leia mais

Teste do Programa Writer do OpenOffice

Teste do Programa Writer do OpenOffice Teste do Programa Writer do OpenOffice Patrícia Barrosa Filipe mei04013 Disciplina: Teste e Qualidade de Software Mestrado em Engenharia Informática - FEUP 1 Índice Introdução... 3 Oppenoffice Writer...

Leia mais

1. A principal razão de dividir o processo de teste em tarefas distintas é:

1. A principal razão de dividir o processo de teste em tarefas distintas é: Simulado CTFL- BSTQB Tempo de duração: 60 minutos 1. A principal razão de dividir o processo de teste em tarefas distintas é: a) Cada fase do teste tem uma proposta diferente b) É mais fácil para gerência

Leia mais

Listas em Haskell. Listas. Linguagem Haskell. Maria Adriana Vidigal de Lima. Faculdade de Computação - UFU. Setembro

Listas em Haskell. Listas. Linguagem Haskell. Maria Adriana Vidigal de Lima. Faculdade de Computação - UFU. Setembro em Haskell Linguagem Haskell Faculdade de Computação - UFU Setembro - 2009 em Haskell 1 em Haskell Noções sobre Construção de por Compreensão Funções Sobre Processamento de Fundamentos em Haskell Noções

Leia mais

Programação I Estruturas de Decisão

Programação I Estruturas de Decisão Programação I Estruturas de Decisão Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Expressões Lógicas Em C, não existe um tipo específico para a representação de valores lógicos.

Leia mais

Português Estruturado

Português Estruturado Português Estruturado Português Estruturado Para que o algoritmo possa ser executado por uma máquina é importante que as instruções sejam corretas e sem ambigüidades. O português estruturado é, na verdade,

Leia mais

4. Constantes. Constantes pré-definidas

4. Constantes. Constantes pré-definidas 4. Constantes Constantes pré-definidas O PHP possui algumas constantes pré-definidas, indicando a versão do PHP, o Sistema Operacional do servidor, o arquivo em execução, e diversas outras informações.

Leia mais

notas de aula versão 1 - Jerônimo C. Pellegrini notas de aula versão 1 11 de fevereiro de 2011

notas de aula versão 1 - Jerônimo C. Pellegrini notas de aula versão 1 11 de fevereiro de 2011 Introdução à Programação notas de aula versão 1 11 de fevereiro de 2011 1 Variáveis, entrada e saída Suponha que queiramos escrever um programa que calcule a área de um retânglo. É algo trivial e pode

Leia mais

Estruturas de Repetição. for() while() do-while() break; continue;

Estruturas de Repetição. for() while() do-while() break; continue; Estruturas de Repetição for() while() do-while() break; continue; 1 Auto-Ajuda (!) Como ajudar a solucionar erros básicos do meu programa? Verificar os ; Verificar se não há comandos em maiúsculas; Verificar

Leia mais

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador; 1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e

Leia mais