Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Estruturas Ba´sicas de Controle e Varia´veis Ota´vio Lemos DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 1/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Hardware VS Software Hardware: o equipamento propriamente dito – inclui perife´ricos de entrada e de sa´ıda, a ma´quina e seus elementos f´ısicos: carcac¸as, placas, fios, componentes em geral. Software: constitu´ıdo pelos programas que permitem atender a`s necessidades do usua´rio. Programar, lidar com software → arte DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 2/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Modelo Hipote´tico Funcionamento do Computador Componentes Calculadora; ma´quina de escrever; estante com 30 escaninhos numerados(1-30); carto˜es externos contendo um valor nume´rico (pilha de entrada); carto˜es em branco; DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 3/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Modelo Hipote´tico Funcionamento do Computador Nomenclatura Esc1, Esc2,..., Escn: significam os nu´meros de cada escaninho. (Esc1), (Esc2),..., (Escn): significam os valores nos carto˜es de cada escaninho. Funcionamento O operador comec¸a o trabalho lendo e executando sequencialmente as instruc¸o˜es contidas nos carto˜es amazenados no escaninho, comec¸ando por Esc1. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 4/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Modelo Hipote´tico Funcionamento do Computador Funcionamento Algumas instruc¸o˜es podem fazer com que operador salte ou retorne a escaninhos ja´ lidos e, desse modo, rompendo a sequeˆncia inicial mas na˜o a maneira como ele trabalha. O operador sempre efetuara´ a leitura do pro´ximo escaninho na sequeˆncia. O Hardware sa˜o o operador e os dispositivos que ele gerencia e o software e´ o conjunto de instruc¸o˜es dos carto˜es. O conjunto de instruc¸o˜es e´ o seu PROGRAMA. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 5/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Modelo Hipote´tico Funcionamento do Computador Instruc¸o˜es Poss´ıveis Leitura de dados; Carregamento de constantes (coloca um novo carta˜o no escaninho); Co´pia de dados (copia valor existente de um escaninho para um outro escaninho); Operac¸a˜o aritme´tica; Impressa˜o de resultados; Quebra de sequeˆncia (Condicional/ Incondicional) e te´rmino. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 6/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Modelo Hipote´tico Calculando a Me´dia Aritme´tica: o Programa 1 Carregar valor 0 em Esc21; 2 Carregar valor 0 em Esc22; 3 Carregar valor 1 em Esc23; 4 Se na˜o ha´ carto˜es de entrada, va´ para Esc9; 5 Ler o valor do carta˜o de entrada para Esc24; 6 Somar (Esc24) com (Esc21), carregando o resultado em Esc21; 7 Somar (Esc23) com (Esc22), carregando o resultado em Esc22; 8 Va´ para Esc4; 9 Se (Esc21) =0, va´ para Esc12; 10 Divida (Esc21) por (Esc22), carregando o resultado em Esc25; 11 Imprima (Esc25); 12 Terminar. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 7/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Modelo Hipote´tico Calculando a Me´dia Aritme´tica: o Programa Entrada: Carto˜es com os valres 5, 8 e 14, respectivamente. Esc Valor 21 0 22 0 23 1 24 ? 25 ? Partindo deste estado inicial,o resultado final armazenado em Esc25 e impresso sera´ ”9”. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 8/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Ac¸a˜o Ac¸a˜o: evento que ocorre num per´ıodo de tempo finito. Interesse → efeito que ela produz Exemplos: "caminhar ate´ a pro´xima esquina" "colocar um livro em cima de uma mesa" "descascar as batatas para o jantar" "atribuir o valor 3,14 a uma varia´vel" DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 9/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Estado Estado: conjunto de propriedades relevantes que objetos apresentam numa situac¸a˜o considerada Exemplos: 1 batatas com casca ou descascadas; 2 o conjunto de valores das varia´veis do programa num certo instante da execuc¸a˜o. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 10/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Evento Evento: conjunto de (sub)ac¸o˜es. Considerado como uma ac¸a˜o (primitiva) ou como um processo, dependendo do interesse no efeito total, ou seja, nos estados antes e depois, ou em um ou va´rios estados intermedia´rios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 11/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Processo Processo: quando se considera um evento como uma sequeˆncia temporal de (sub)ac¸o˜es, cujo efeito acumulado e´ igual ao efeito do evento total DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 12/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Relato de um evento Uma dona-de-casa descasca as batatas para o jantar "traz a cesta com batatas do por~ao"; "traz a panela do arma´rio"; "descasca as batatas"; "devolve a cesta ao por~ao" DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 13/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Relato de um evento Dona-de-casa pode descascar batatas em outro dia Observador relata o evento E´ o mesmo evento? Padra˜o de comportamento Outro exemplo: n2 DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 14/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Algoritmo Algoritmo: descric¸a˜o de um padra˜o de comportamento expressado em termos de um reperto´rio de ac¸o˜es primitivas e executa´veis Relato – descritivo; Algoritmo – imperativo; comandos DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 15/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Algoritmo "traga a cesta com batatas do por~ao"; "traga a panela do arma´rio"; "descasque as batatas"; "devolva a cesta ao por~ao" DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 16/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Sequenciamento Reparem no ‘;’ – func¸o˜es: 1 No texto – separar os comandos; 2 No evento evocado – sequeˆncia em que devem ser executados. Mais simples estrutura de (fluxo de) controle DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 17/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Outro relato de evento "traz a cesta com batatas do por~ao"; "traz a panela do arma´rio"; "coloca o avental"; "descasca as batatas"; "devolve a cesta ao por~ao" Suponhamos: dona-de-casa usa crite´rio racional de decisa˜o – colocar avental Exemplo: dependendo se saia e´ clara ou na˜o DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 18/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Alternativa Algoritmo que cobre os dois tipos de eventos: "traga a cesta com batatas do por~ao"; "traga a panela do arma´rio"; se "saia e´ clara" ent~ao "coloque o avental"; "descasque as batatas"; "devolva a cesta ao por~ao" Conectivo condicional: se ... enta˜o DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 19/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Outro relato de evento Suponhamos: observador meticuloso – evento descascar batatas por ac¸a˜o primitiva “descascar uma batata” "traz a cesta com batatas do por~ao"; "traz a panela do arma´rio"; "coloca o avental"; | "descasca uma batata"; 13 | "descasca uma batata"; vezes | ... | "descasca uma batata"; "devolve a cesta ao por~ao" DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 20/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Outro relato de evento "traz a cesta com batatas do por~ao"; "traz a panela do arma´rio"; "coloca o avental"; | "descasca uma batata"; 30 | "descasca uma batata"; vezes | ... | "descasca uma batata"; "devolve a cesta ao por~ao" Como construir um algoritmo que corresponda aos dois relatos? Suponha que a dona-de-casa sabe avaliar se nu´mero de batatas descascadas e´ suficiente E´ necessa´rio mais alguma suposic¸a˜o? DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 21/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Algoritmo Algoritmo que cobre os dois tipos de eventos: "traga a cesta com batatas do por~ao"; "traga a panela do arma´rio"; se "saia e´ clara" ent~ao "coloque o avental"; | se "numero de batatas e´ insuficiente" ent~ao | "descasque uma batata" 50 | se "numero de batatas e´ insuficiente" ent~ao vezes | "descasque uma batata" | ... | se "numero de batatas e´ insuficiente" ent~ao | "descasque uma batata" "devolva a cesta ao por~ao" DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 22/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Algoritmo Inconveniente. Ale´m disso: 1 Se 5 batatas forem suficientes; necessidade de olhar mais 45 vezes na panela? 2 Limite superior... complicado. Ex.: Batalha˜o de pessoas. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 23/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Comando de repetic¸a˜o (lac¸o) Conectivo repetitivo: enquanto inspec¸a˜o fac¸a ac¸a˜o "traga a cesta com batatas do por~ao"; "traga a panela do arma´rio"; se "saia e´ clara" ent~ao "coloque o avental"; enquanto "nu´mero de batatas e´ insuficiente" fac¸a "descasque uma batata"; "devolva a cesta ao por~ao" DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 24/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Comando de repetic¸a˜o (lac¸o) Poder de um algoritmo: texto esta´tico que cobre toda uma classe de acontecimentos; mesmo n´ıvel de detalhe de relato Entretanto: perigo – texto com apareˆncia de algoritmo na˜o-executa´vel em tempo finito Exemplo: enquanto “saia e´ clara” fac¸a “descasque uma batata” Problemas: 1 Se descascar batatas na˜o altera cor da saia 2 Resultados diferentes conforme a qualidade das batatas Algoritmos devem ser determin´ısticos (mesmas entradas → mesma sa´ıda) e finitos DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 25/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Sintaxe e Semaˆntica Toda linguagem, frases seguem sintaxe (estrutura) e semaˆntica (significado) Considerando o portugueˆs: "A mesa sorriu." "Quando 900 anos de idade voce^ atingir, parecer t~ao bem voce^ n~ao vai." "Ma´rcia viu o homem no parque com o telesco´pio." DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 26/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Identificadores Nomes das entidades em um programa (varia´vel, func¸a˜o, etc.) Em Portugol, seguem a seguinte sintaxe: letra dígito letra Exemplos: A, B1, ZZZZZZZ, I, J, contador DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 27/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Definic¸a˜o de Varia´veis Varia´vel: nome de um local onde se pode colocar valor entre os poss´ıveis para aquele tipo Nome da varia´vel – identificador variável SOMA DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 28/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Declarac¸a˜o de Varia´veis Toda varia´vel deve ser declarada segundo a sintaxe abaixo: inteiro string real identificador lógico : , ; DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 29/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Declarac¸a˜o de Varia´veis Exemplos de declarac¸a˜o de varia´veis: inteiro : X1; real : A, B; string : frase, nome; lo´gico : tem; DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 30/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Atribuic¸a˜o Sintaxe: identificador ← expressa˜o; Exemplos: X1 ← 10; frase = "teste123"; DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 31/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Operadores aritme´ticos Operadores aritme´ticos: ‘+’, ‘-’, ‘*’, ‘/’, ‘ 2 √ ’ (ou sqrt()), etc. Func¸o˜es matema´ticas comuns: sen(x), cos(x), |x| mod: m mod i → resto (mo´dulo) da divisa˜o de m por i Exemplos: 2 √ a, (a + b)n, 2 √ b2 − 4 ∗ a ∗ c DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 32/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Operadores lo´gicos Dentro de relac¸o˜es lo´gicas, operadores usuais: e – ∧ ou – ∨ (na˜o-exclusivo) negac¸a˜o – ! DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 33/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Operadores relacionais Usados para comparar valores: >, <, ≤, ≥, =, <> ou ! = DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 34/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Comandos de leitura e escrita Usaremos leia(N) e imprima(N) DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 35/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios MDC Dados dois nu´meros positivos m e n encontre seu ma´ximo divisor comum. Assuma que m e´ sempre maior que n, e n diferente de zero. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 36/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios MDC inı´cio inteiro: m, n, r; imprima("Entre com o primeiro nu´mero:"); leia(m); imprima("Entre com o segundo nu´mero:"); leia(n); r = m % n; // % pode ser substituı´do por mod enquanto r != 0 fac¸a m = n; n = r; r = m % n; fimenquanto; imprima(n); fim. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 37/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Equac¸a˜o de segundo grau Como podemos definir um algoritmo para o ca´lculo das ra´ızes de uma equac¸a˜o do segundo grau? DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 38/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Equac¸a˜o de segundo grau Neste algoritmo vamos assumir que o coeficiente a da equac¸a˜o e´ sempre diferente de 0. inı´cio inteiro: a, b, c, delta, x1, x2; leia(a); leia(b); leia(c); delta = b*b-4*a*c; se delta < 0 ent~ao imprima("N~ao ha´ raı´zes reais."); sen~ao x1 = (-b + sqrt(delta))/(2*a); x2 = (-b - sqrt(delta))/(2*a); imprima(x1); imprima(x2); fimse; fim. DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 39/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Exerc´ıcios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 40/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Exerc´ıcios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 41/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Exerc´ıcios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 42/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Exerc´ıcios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 43/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Exerc´ıcios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 44/44 Computador Conceitos Estruturas de controle Varia´veis Comandos Ba´sicos Exemplos Exerc´ıcios Exerc´ıcios DCT–UNIFESP — Estruturas Ba´sicas de Controle e Varia´veis 45/44 Computador Conceitos Estruturas de controle Variáveis Comandos Básicos Exemplos Exercícios
Compartilhar