Introdução à Ciência da Computação

Documentos relacionados
tipo e tamanho e com os "mesmos" elementos do vetor A, ou seja, B[i] = A[i].

Comandos de Desvio 1

FESP FACULDADE DE ENGENHARIA SÃO PAULO DISCIPLINA BP1: PROCESSAMENTO DE DADOS

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

3º Ano do Ensino Médio. Aula nº06

Correção dos Exercícios

Fundamentos de Programação. Diagrama de blocos

Introdução à Lógica de Programação (cont.)

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR

Módulo de Equações do Segundo Grau. Equações do Segundo Grau: Resultados Básicos. Nono Ano

Fundamentos de Bancos de Dados 3 a Prova Caderno de Questões

Apresentar os conceitos básicos e as estruturas de linguagem relacionadas à tomada de decisão ofertadas pela linguagem C, tais como:

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR. Prof. Angelo Augusto Frozza, M.Sc.

1. Escreva um programa em Pascal que leia três valores inteiros e mostre-os em ordem crescente. Utilize seleção encadeada.

EGEA ESAPL - IPVC. Resolução de Problemas de Programação Linear, com recurso ao Excel

ALGORITMOS E PROGRAMAÇÃO. Andreza Leite Andreza.leite@univasf.edu.br

Lista 4 Introdução à Programação Entregar até 07/05/2012

Programação Estruturada e Orientada a Objetos REVISÃO

Carlos de Salles Soares Neto Segundas e Quartas, 17h40 às 19h10

Curso de Formação de Oficiais Conhecimentos Específicos ENGENHARIA DE COMPUTAÇÃO CADERNO DE QUESTÕES

Manual do Desenvolvedor Geração de Tokens

Inteligência Artificial

Sumário. Introdução... 2 Informações sobre os arquivos... 2

COBRANÇA BANCÁRIA CAIXA

Álgebra Linear Aplicada à Compressão de Imagens. Universidade de Lisboa Instituto Superior Técnico. Mestrado em Engenharia Aeroespacial

HEMOVIDA (CICLO DO SANGUE - Gerenciamento de estoque para grandes eventos)

Expressões Lógicas e Aritméticas. Professora Kátia Adriana Alves Leite de Barros katia.barros@pitagoras.com.br

PDE INTERATIVO MANUAL DE CADASTRO E GERENCIAMENTO DE USUÁRIOS

Tipos de investigação educacional diferenciados por:

GEOMETRIA. sólidos geométricos, regiões planas e contornos PRISMAS SÓLIDOS GEOMÉTRICOS REGIÕES PLANAS CONTORNOS

Lista de Exercícios 02 Algoritmos Estrutura Condicional

Seu pé direito nas melhores Faculdades

Algoritmos e Programação. Prof. Tarcio Carvalho

Disciplina: Álgebra Linear - Engenharias ], C = Basta adicionar elemento a elemento de A e B que ocupam a mesma posição na matriz.

Nome: N.º: endereço: data: telefone: PARA QUEM CURSA A 1 ạ SÉRIE DO ENSINO MÉDIO EM Disciplina: matemática

Exercícios (if/ if else/ if elseif else)

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM

2) Escreva um algoritmo que leia um conjunto de 10 notas, armazene-as em uma variável composta chamada NOTA e calcule e imprima a sua média.

ÁLGEBRA. Aula 1 _ Função Polinomial do 2º Grau Professor Luciano Nóbrega. Maria Auxiliadora

. B(x 2, y 2 ). A(x 1, y 1 )

Professores do Ensino Básico - Variante de Educação Física. Disciplina: Matemática Data: Ficha de trabalho: 3

Os passos a seguir servirão de guia para utilização da funcionalidade Acordo Financeiro do TOTVS Gestão Financeira.

Estrutura de Seleção

Capítulo 1. Importação de Dados de Instituições Financeiras - Arquivo TXT 3

Estruturas de Repetição

REITORA Ulrika Arns. VICE-REITOR Almir Barros da Silva Santos Neto. DIRETOR DO NTIC Leonardo Bidese de Pinho

Unidade 1: O Computador

TERMO DE REFERÊNCIA. Fonte de Informação Experiências Exitosas de Gestão Estratégica e Participativa nas instâncias do SUS

Gerenciador de Ambiente Laboratorial - GAL Manual do Usuário Módulo Controle de Qualidade Analítico

Aula 11: Desvios e Laços

Modelo Relacional Normalização Diagramas E-R e Tabelas Originadas


FACULDADE DE TECNOLOGIA DE CAMPINAS EDITAL DE TRANSFERÊNCIA Nº 01 / 2016.

AULA 1 EQUAÇÕES E SISTEMAS DO 1º GRAU

MS/SAS/DRAC/CGSI-Coordenação Geral dos Sistemas de Informação

1ª) Lista de Exercícios de Laboratório de Física Experimental A Prof. Paulo César de Souza

Aula 4 Função do 2º Grau

FATURA ELETRÔNICA DO PRESTADOR Layout do Arquivo Texto Versão 1.1.1

Pesquisador em Informações Geográficas e Estatísticas A I GEOMORFOLOGIA LEIA ATENTAMENTE AS INSTRUÇÕES ABAIXO.

ALP Algoritmos e Programação

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Revisão Aula Anterior Estruturas de Decisão (If e Switch)

PESQUISA OPERACIONAL 4470E- 04

Matrizes. matriz de 2 linhas e 2 colunas. matriz de 3 linhas e 3 colunas. matriz de 3 linhas e 1 coluna. matriz de 1 linha e 4 colunas.

LEUCOTRON EQUIPAMENTOS LTDA ROTEIRO DE INTERLIGAÇÃO SIP ACTIVE IP COM REGISTRO

Testes de Hipóteses Estatísticas

ÁLGEBRA. Aula 5 _ Função Polinomial do 1º Grau Professor Luciano Nóbrega. Maria Auxiliadora

Uso de escalas logaritmicas e linearização

Instruções para o cadastramento da Operação de Transporte e geração do Código Identificador da Operação de Transporte CIOT.

1. Estrutura de seleção. Seleção: algumas etapas (passos) do algoritmo são executadas dependendo do resultado de uma condição

Inclusão de Validação Biométrica

A lei dos senos. Na Aula 42 vimos que a Lei dos co-senos é. a 2 = b 2 + c 2-2bc cos Â

MANUAL DO INSTALADOR XD EM AMBIENTES MICROSOFT WINDOWS

Gestão Documental. Gestão Documental

SISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios

Obtenção Experimental de Modelos Matemáticos Através da Reposta ao Degrau

Análise e Resolução da prova de Agente de Polícia Federal Disciplina: Raciocínio Lógico Professor: Custódio Nascimento

Rateio por Despesas por Contas Contábeis

CONFIGURAçÃO E GERAÇÃO DO LALUR. Parâmetros

EXERCÍCIOS. 2. Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos.

Dureza Rockwell. No início do século XX houve muitos progressos. Nossa aula. Em que consiste o ensaio Rockwell. no campo da determinação da dureza.

Resoluções A. Combinatória 1 3 os anos Blaidi/Walter Ago/09. Nome: Nº: Turma:

Técnicas de Contagem I II III IV V VI

Aula 3 Função do 1º Grau

ProLin V1.0. Programa de problemas de programação linear mista

Programação Orientada a Objetos SANTOS, Rafael

MATRIZ PROVA EXTRAORDINÁRIA DE AVALIAÇÃO INGLÊS Maio de º Ano 2.º Ciclo do Ensino Básico

ISS Eletrônico. Formato de Arquivos para Transmissão de Documentos Declarados através do aplicativo OFFLINE. Extensão do Arquivo JUNHO2006.

Introdução à Lógica de Programação

Manual do Usuário (Firma Inspetora) Versão 1.8. CMCP - Controle da Marcação Compulsória de Produtos

UNIVERSIDADE FEDERAL DE VIÇOSA PROGRAMA DE PÓS-GRADUAÇÃO EM FITOTECNIA

8 Crie um pequeno sistema para controle automatizado de estoque, com os seguintes registros:

COMO CRIAR UM PEDIDO DE COMPRAS

Assunto: Identificação: Versão: Folha / Nº: Leiaute-IMPORTAÇÃO-NFSe - XML DOC-IN / 12

COMENTÁRIO DA PROVA DO BANCO DO BRASIL

SÓ ABRA QUANDO AUTORIZADO.

Classificação de Ativo Orçamento e Provisão de Despesa

2 Segmentação de imagens e Componentes conexas

21- EXERCÍCIOS FUNÇÕES DO SEGUNDO GRAU

e Autorizador Odontológico

REGIMENTO INTERNO RECOMENDADO PARA O ROTARY CLUB

Transcrição:

Introdução à Ciência da Computação Estruturas de Controle Parte I Prof. Ricardo J. G. B. Campello Créditos Parte dos slides a seguir foram adaptados dos originais de A. L. V. Forbellone e H. F. Eberspächer 1

Aula de Hoje Estrutura Sequencial Estruturas de Seleção Simples Composta Encadeada Múltipla Escolha Estrutura Sequencial O fluxo de execução(ou fluxo de controle) segue a mesma sequência linear da nossa escrita, ou seja: De cima para baixo; Da esquerda para direita Cada ação é seguida de um ; Objetiva separar uma ação da outra Indica que a próxima ação da sequência deve ser executada 2

Estrutura Sequencial Algoritmo 3.2 - Média Aritmética real: N1, N2, N3, N4, // notas bimestrais MA; // média anual leia (N1, N2, N3, N4); // processamento MA (N1 + N2 + N3 + N4) / 4; // saída de dados escreva (MA); Estrutura Sequencial Cálculo das Raízes Reais de A*x 2 + B*x + C = 0 real: A, B, C, // coeficientes da equação D, // delta X1, X2; // raízes leia (A,B,C); // processamento D pot(b,2) 4*A*C; X1 ( B + rad(d)) / (2*A); // assumida real X2 ( B rad(d)) / (2*A); // assumida real // saída de dados escreva ("Primeira raiz = ", X1); escreva ("Segunda raiz = ", X2); 3

Estrutura Sequencial Cálculo do Volume de uma Esfera de Raio R real: R, V; // raio e volume leia (R); // processamento V (4/3) * 3.141592 * pot(r,3); // saída de dados escreva ("Volume = ", V); Estruturas de Seleção Permitem alterar o fluxo de execução, de forma a selecionar qual parte deve ser executada Essa decisão de execução é tomada a partir de uma condição, que pode resultar apenas em Verdade(também V ou 1) ou Falsidade(F ou 0) Por esta razão são também denominadas de estruturas condicionais Uma condição é representada por expressões relacionais ou lógicas As estruturas de seleção podem ser classificadas em simples, compostas ou encadeadas 4

se (condição) então // do bloco verdade comando 1; comando 2;... comando n; fim; // fim do bloco verdade Seleção Simples Quando a condição for verdadeira o bloco verdade é executado Quando a condição for falsa o bloco verdade não é executado Quando existe apenas 1 comando a ser executado, os delimitadores de bloco podem ser omitidos Seleção Simples Algoritmo 3.4 - Média Aritmética com Aprovação real: N1, N2, N3, N4, // notas bimestrais MA; // média anual leia (N1, N2, N3, N4); // processamento MA (N1 + N2 + N3 + N4) / 4; // saída de dados escreva (MA); se (MA >= 7) então escreva ( Aluno Aprovado! ); // 1 instrução: bloco é desnecessário 5

Seleção Simples Exercício: Faça um algoritmo que tome as 2 notas de prova bimestrais (N1 e N2) de um aluno, mais as suas 2 notas de trabalhos (T1 e T2) e seu percentual de presença (P) e calcule a média final segundo o critério: A nota final de provas MP é dada por uma média ponderada, sendo a primeira prova com peso 4 e a segunda com peso 6 A nota final de trabalhos (MT) é dada por uma média aritmética A nota final do aluno é calculada por uma média aritmética das notas de prova (MP) e trabalho (MT) Caso o aluno tenha 100% de presença, meio ponto de bonificação é adicionado à sua nota final, desde que não ultrapasse o teto de 10 Escreva que o aluno está aprovado caso sua nota final seja igual ou superior a 5 e ele tenha ao menos 70% de presença Escreva que o aluno está reprovado caso sua nota final seja inferior a 5 ou ele tenha menos de 70% de presença se (condição) então // do bloco verdade comando 1; comando n; fim; // fim do bloco verdade // do bloco falsidade comando 1; comando n; fim; // fim do bloco falsidade Seleção Composta Quando a condição for verdadeira o bloco verdade é executado Quando a condição for falsa o bloco falsidade é executado 6

Seleção Composta Algoritmo 3.5 - Média Aritmética com aprovação e reprovação real: N1, N2, N3, N4, // notas bimestrais MA; // média anual leia (N1, N2, N3, N4); MA (N1 + N2 + N3 + N4) / 4; escreva (MA); se (MA >= 7) então escreva ( Aluno Aprovado! ); escreva ( Parabéns! ); fim; escreva ( Aluno Reprovado! ); escreva ( Estude mais! ); fim; Seleção Composta Exercício: Faça um algoritmo que tome as 2 notas de prova bimestrais (N1 e N2) de um aluno mais as suas 2 notas de trabalhos (T1 e T2) e calcule a média final segundo o critério: A nota final de provas MP é dada por uma média ponderada, sendo a primeira prova com peso 4 e a segunda com peso 6 A nota final de trabalhos (MT) é dada por uma média aritmética A nota final do aluno é calculada por uma média aritmética das notas de prova (MP) e trabalho (MT) caso ambas sejam iguais ou maiores do que 5 ou ambas sejam inferiores a 5. Caso contrário, a nota final será a menor dentre as notas finais de prova e trabalho 7

Seleção Simples x Composta Exercício: Sejam S e H respectivamente o sexo e a altura de uma pessoa e assuma que o peso médio ideal de um indivíduo seja dado pelas seguintes fórmulas: Homens: (72,7 * H) 58 Mulheres: (62,1 * H) 44,7 1. Utilizando seleções simples, faça um algoritmo que tome S e H como entradas e então calcule e escreva o peso médio ideal do indivíduo 2. Refaça o algoritmo acima utilizando uma seleção composta 3. Aponte uma ou mais vantagens na utilização da seleção composta Seleção Encadeada Ocorre quando uma seleção tem como ação uma outra seleção Uma seleção encadeada pode ser: Heterogênea: Quando não é possível identificar padrão de comportamento Homogênea: Quando é possível identificar padrão de comportamento se então se: quando depois de cada entãoocorre outro se se se: quando depois de cada ocorre outro se 8

Seleção Encadeada Heterogênea Algoritmo 3.6 Tipos de Triângulo inteiro: A, B, C; // tamanho dos lados leia (A, B, C); se (A<B+C) e (B<A+C) e (C<A+B) então se (A=B) e (B=C) então escreva ( Triângulo Equilátero ); Note que a condicional se se (A=B) ou (B=C) ou (A=C) então é vista como um único comando, escreva ( Triângulo Isósceles ); não como um bloco. Por isso os delimitadores inicio e fim do bloco escreva ( Triângulo Escaleno ); foram omitidos escreva ( Estes valores não formam um triângulo ); Seleção Encadeada Heterogênea Exercício: Dado o algoritmo a seguir, onde C 1, C 2,..., C 6 são comandos (ações) quaisquer, indique quais deles serão executados se: A = V, B = V, C = F A = F, B = V, C = F A = F, B = V, C = V Quais os valores de A, B e C para que somente os comandos C 5 e C 6 sejam executados? Existem valores para que somente C 6 seja executado? Justifique. lógico: A, B, C; // processamento de dados se A então C1; se B então se C então C 2 ; C 3 ; C 4 ; fim; C 5 ; fim; C 6 ; PS. Note a forma das condições para valores lógicos! 9

Seleção Encadeada Heterogênea Exercício: Dado o algoritmo a seguir, onde C 1, C 2,... C 8 são comandos (ações) quaisquer, monte uma tabela com todas as possíveis combinações de valores lógicos de A, B e C e os comandos que serão executados para cada uma dessas combinações. lógico: A, B, C; se A então C 1 ; C 2 ; fim; se B então C 4 ; se C então C 5 ; C 6 ; fim; C 7 ; fim; C 8 ; PS. Note a forma das condições para valores lógicos! Seleção Encadeada Homogênea se então se se (Cond1) então se (Cond2) então se (Cond3) então se (Cond4) então W; Cond1 Cond2 Cond3 Cond4 Ação V V V V W É equivalente a: se (Cond1) e (Cond2) e (Cond3) e (Cond4) então W; 10

Seleção Encadeada Homogênea Exemplo: Construa um algoritmo que receba como entradas o sexo, a idade e tempo de contribuição ao INSS, os últimos dois em anos, e escreva se essa pessoa tem direito a se aposentar, supondo que as regras de aposentadoria são: 25 anos de contribuição e mínimo de 60 anos para mulheres 30 anos de contribuição e mínimo de 65 anos para homens Escreva o algoritmo de duas formas diferentes, utilizando a estrutura encadeada homogênea do tipo se então se apresentada anteriormente e sua forma equivalente Seleção Encadeada Homogênea Solução 1: caractere: sexo; inteiro: idade, tempo; leia (sexo, idade, tempo); // processamento e saída de dados se (sexo = M ) então se (idade >= 65) então se (tempo >=30) então escreva ( Tem direito a se aposentar! ); se (sexo = F ) então se (idade >= 60) então se (tempo >=25) então escreva ( Tem direito a se aposentar! ); 11

Seleção Encadeada Homogênea Solução 2: caractere: sexo; inteiro: idade, tempo; leia (sexo, idade, tempo); // processamento e saída de dados se (sexo = M ) e (idade >= 65) e (tempo >=30) então escreva ( Tem direito a se aposentar! ); se (sexo = F ) e (idade >= 60) e (tempo >=25) então escreva ( Tem direito a se aposentar! ); Seleção Encadeada Homogênea Solução Adicional: caractere: sexo; inteiro: idade, tempo; leia (sexo, idade, tempo); // processamento e saída de dados se (sexo = M ) e (idade >= 65) e (tempo >=30) ou (sexo = F ) e (idade >= 60) e (tempo >=25) então escreva ( Tem direito a se aposentar! ); PS. Seria preciso parênteses para indicar a ordem de precedência correta dos operadores lógicos de conjunção e e disjunção ou? 12

Seleção Encadeada Homogênea se X=V1 então C1; se X=V2 então C2; se X=V3 então C3; se X=V4 então C4; X=V1 X=V2 X=V3 X=V4 Ação V F F F C1 F V F F C2 F F V F C3 F F F V C4 se X=V1 então C1; se X=V2 então C2; se X=V3 então C3; se X=V4 se se então C4; X=V1 X=V2 X=V3 X=V4 Ação V - - - C1 F V - - C2 F F V - C3 F F F V C4 Alguma Vantagem? Seleção Encadeada Homogênea Exemplo: Construa um algoritmo que receba a idade de um nadador e classifique-o em uma das seguintes categorias: 5 até 8 anos: Infantil 9 até 13 anos: Juvenil A 14 até 17 anos: Juvenil B Maiores de 18: Adulto Escreva o algoritmo de duas formas diferentes, utilizando a estrutura encadeada homogênea se - - se apresentada anteriormente e sua forma equivalente com múltiplas seleções simples se - então. 13

Seleção Encadeada Homogênea Solução 1: inteiro: idade; leia (idade); // processamento e saída de dados se (idade >=5) e (idade <= 8) então escreva ( Infantil ); se (idade >=9) e (idade <=13) então escreva ( Juvenil A ); se (idade >=14) e (idade <=17) então escreva ( Juvenil B ); se (idade >=18) então escreva ( Adulto ); Seleção Encadeada Homogênea Solução 2: inteiro: idade; leia (idade); // processamento e saída de dados se (idade >=5) e (idade <= 8) então escreva ( Infantil ); se (idade >=9) e (idade <=13) então escreva ( Juvenil A ); se (idade >=14) e (idade <=17) então escreva ( Juvenil B ); se (idade >=18) então escreva ( Adulto ); 14

Seleção Encadeada Homogênea Exercício: A partir da idade informada de uma pessoa, elabore um algoritmo que informe a sua classe eleitoral, sabendo que menores de 16 não votam (não votantes), que o voto é obrigatório para adultos entre 18 e 65 anos (eleitor obrigatório) e que o voto é opcional para eleitores com 16, 17 ou mais que 65 anos (eleitor facultativo). Escreva o algoritmo de duas formas diferentes: Utilizando múltiplas seleções simples se - então Utilizando uma estrutura encadeada homogênea se - - se Seleção de Múltipla Escolha Seleções encadeadas homogêneas se-se são bastante frequentes para o tratamento de listas de valor Para simplificar a escrita, pode-se utilizar uma seleção de múltipla escolha: escolha X caso V1: C1; caso V2: C2; caso V3: C3; caso V4: C4; caso contrário: C5; fimescolha; 15

Seleção de Múltipla Escolha Algoritmo 3.7 Múltipla Escolha real: Preço; inteiro: Origem; leia (Preço, Origem); escolha Origem caso 1: escreva ( Valor =, Preço, Produto do Sul ); caso 2: escreva ( Valor =, Preço, Produto do Norte ); caso 3: escreva ( Valor =, Preço, Produto do Leste ); caso 4: escreva ( Valor =, Preço, Produto do Oeste ); caso contrário: escreva ( Valor =, Preço, Produto importado ); fimescolha; Seleção de Múltipla Escolha Exercício: Utilizando seleção de múltipla escolha, escreva um algoritmo que, a partir de um mês fornecido (número inteiro de 1 a 12), apresente o nome dele por extenso ou uma mensagem de mês inválido 16

Seleção Encadeada x Múltipla Escolha Exercício: Dados os seguintes critérios de classificação de candidatos em uma prova: A: 90 a 100 pontos B: 70 a 89 pontos C: 50 a 69 pontos D: 30 a 49 pontos E: 0 a 29 pontos Faça um algoritmo que receba o número de pontos de um candidato e imprima a sua classificação utilizando: Múltiplas seleções simples Seleção encadeada homogênea se se Exercícios Adicionais Capítulo III de (Forbellone & Eberspächer, 2005): Estudar exercícios de fixação Resolver exercícios propostos 17