apostila introducao a logica de

Download Apostila Introducao a Logica de

Post on 30-Sep-2015

3 views

Category:

Documents

1 download

Embed Size (px)

DESCRIPTION

Introdução a logica de programação

TRANSCRIPT

  • Introduo

    Lgica de Programao

    2 ENCONTRO

  • 2

    Introduo A lgica est presente em nossa vida sempre que pensa-mos, falamos e escrevemos, pois para realizar essas aes ne-cessitamos que os pensamentos estejam ordenados de modo a alcanar o resultado esperado. Na verdade a lgica consiste simplesmente na organizao e explicao de um pensamento. Poderemos identificar a utilizao da lgica no nosso dia-a-dia quando analisamos situaes como:

    Analisando estes argumentos em uma sequencia lgica po-demos chegar a uma concluso, como demonstrado acima.

    (Retirado do livro Lgica de programao, de Camila Ceccatto da Silva e Everaldo Antonio de Paula, adaptado)

    Todo mamfero bebe leite; O homem bebe leite.

    Por tanto conclusse que: O homem um mamfero.

  • 3

    Linguagem de Programao Podemos imaginar o computador como uma super cal-culadora capaz de fazer clculos muito mais rpido que ns, mas para isso devemos dizer para o computador o que deve ser calculado e como deve ser calculado. A funo das lin-guagens de programao exatamente essa, ou seja, servir de um meio de comunicao entre computadores e huma-nos, assim como os humanos fazem com os humanos: usam

    da linguagem para poder conversar. Quando progra-mamos em uma lin-guagem de progra-mao primeiramen-te criamos um arqui-vo de texto comum contendo a lgica do que deve ser feito, ou seja, onde fala-mos ao computador,

    o que queremos. Este arquivo de texto chamado de programa, cada palavra de ordem dentro do programa chamada de instruo. Aps criarmos o programa, este deve ser traduzido para linguagem entendida pelo computador a partir da linguagem que estamos utilizando. Um segundo ar-quivo que chamamos de executvel ou programa, ser gera-do e interpretado diretamente pelo computador.

    (Retirado de www.infoescola.com, adaptado)

  • 4

    Algoritmo Algoritmo uma sequencia lgica de passos que levam a um determinado objetivo. Apesar de a palavra algoritmo pa-recer estranha e desconhecida, claro que todos ns sabe-mos construir algoritmos. Se isto no fosse verdade, no conseguiramos sair de casa pela manh, ir escola, decidir qual o melhor caminho para chegar a um lugar, voltar para casa, etc. Para que tudo isto seja feito necessrio uma srie de entradas do tipo: a que hora acordar, a que horas sair de casa, qual o melhor meio de transporte, etc. Um fator importante que pode haver mais de um algoritmo para resolver um problema. Por exemplo, pa-ra ir de casa at o colgio, podemos escolher diversos meios de transportes em funo do preo, conforto, rapidez, etc. A escolha ser feita em funo do critrio que melhor se adequar as nossas necessidades.

    (Retirado do livro Lgica de programao, de Camila Ceccatto da Silva e Everaldo Antonio de Paula, adaptado).

  • 5

    Veja e analise a soluo necessria para o exemplo abaixo:

    Retirado do Curso de Programao Computadores, Prof. Anbal Tavares e Profa. Cassilda Ribeiro, disponvel em

  • 6

    Os algoritmos, portanto, podem ser divididos em partes, que so elas:

    Incio; Entrada: dados que devem ser lidos, ou forneci-

    dos pelo usurio; Processamento: onde acontecem os clculos em

    si, os dados de entrada so manipulados a fim de se gerar uma resposta (um resultado);

    Sada: so os resultados de seu processamento.;

    Fim.

  • 7

    A Lgica e a Informtica Para o desenvolvimento de programas de computador neces-

    srio o desenvolvimento de uma lgica bem estruturada para que o

    computador possa realizar com sucesso os procedimentos deseja-

    dos para a soluo do problema proposto. Portanto, a partir de um

    problema proposto, temos:

    Como exemplo, iremos usar uma receita que um algoritmo

    descrito em linguagem natural. Passos para o desenvolvimento de

    uma lgica de programao:

    1 - Analise o que deve ser realizado; 2 - Imagine como o seu crebro processa esta ao; 3 - Divida isto em passos distintos e muito especficos; 4 - Estruture estes passos em uma sequncia lgica; 5 - Verifique o funcionamento e exatido da sua lgica.

  • 8

    Podemos desenvolver a lgica de simples atividades de nosso cotidiano, como fritar um ovo:

    1- necessrio fritar um ovo; 2- Para fritar um ovo deve-se ir at a cozinha, ter um ovo,

    uma frigideira, leo, um fogo e gs. O fogo deve ser ligado, a frigideira aquecida, e o leo aquecido na frigideira, posteri-ormente o ovo deve ser frito no leo quente;

    Passo 1 - Adquirir: 1- Obtenha um ovo, caso no tenha obtido um ovo, obte-nha um ovo, faa isso at obter um ovo; 2- Obtenha uma frigideira, caso no tenha obtido uma fri-gideira, obtenha uma frigideira, faa isso at obter uma frigideira; 3- Obtenha o leo, caso no tenha obtido o leo, obtenha o leo, faa isso at obter o leo; 4- Obtenha um fogo, caso no tenha obtido um fogo, obtenha um fogo, faa isso at obter um fogo; 5- Obtenha o gs, caso no tenha obtido o gs, obtenha o gs, faa isso at obter o gs; Passo 2 - Preparar: 1- Ligue o fogo, caso o fogo no tenha ligado, ligue o fogo, 2- faa isso at ligar o fogo; 3- Coloque a frigideira no fogo; 4- Aquea a frigideira, caso a frigideira no esteja aqueci-da, aquea a frigideira, faa isso at a frigideira aquecer; 5- Coloque o leo na frigideira; 6- Aquea o leo, caso o leo no esteja aquecido, aquea o leo, faa isso at o leo aquecer; 7- Quebre a casca do ovo; 8- Retire o ovo, se o ovo no estiver bom obtenha outro ovo, quebre a casca do ovo e retire o ovo.

  • 9

    Passo 3 - Cozinhar: 1- Coloque o ovo no leo que est na frigideira; 2- Verifique se o ovo est pronto, se o ovo est pronto, se no, verifique se o ovo est pronto, faa isso at o ovo ficar pronto; 3- Retire o ovo da frigideira; Passo 4 - Consumir: 1- Coloque o ovo em um prato; 2- Coma o ovo.

  • 10

    Varivel Quase todos os algoritmos que apresentamos at este ponto foram escritos em linguagem natural, ou seja, no nosso caso, habitantes do Brasil, o portugus. O algoritmo em linguagem humana deve ser traduzido em uma linguagem de programao de computadores. De-pois que gerado um programa, a linguagem outra vez traduzida para a linguagem de mquina (computador, no nosso caso) para que o computador possa entender as ins-trues fornecidas. Os algoritmos iro obter os dados necessrios para que a mquina possa manipular estes dados, que normalmente so fornecidos pelos usurios, e entregar resultados para os mesmos. Uma pergunta importante neste momento : como poderemos manipular estes dados? A resposta que po-demos manipul-los por meio das variveis. Imagine uma varivel

    como uma caixinha que

    pode ser nomeada e esta

    pode guardar um valor,

    como no desenho ao lado.

  • 11

    Portanto, a varivel um recurso que pode servir para ex-plorar uma infinidade de valores em uma situao em que h medi-das desconhecidas assim como na matemtica. Embora uma mesma varivel possa assumir diferentes valores, ela s pode ar-mazenar um valor a cada instante. Existem trs tipos bsicos de dados que iremos manipular nos algoritmos que iremos criar:

    Dados como nmeros - numricos; Dados como letras - literria; Dados lgicos.

    Num programa, em cada instante, cada varivel possui seu tipo, seu nome e seu contedo como exemplificado na figura, onde a varivel chamada NOME que do tipo LITERRIA tem como contedo a palavra Maria e a varivel nomeada IDADE que do tipo NUMRICA possui o nmero 26 armazenado enquanto as outras variveis no tem nem contedo nem tipo definido:

  • 12

    Arduino uma plataforma de desenvolvi-

    mento de hardware, microcontrola-

    da de cdigo aberto.

    Em termos prticos o Arduino

    um pequeno computador em que

    possvel se interagir com o ambiente.

    Estrutura bsica e princpio de funcionamento:

  • 13

    Entrada de dados Como en-

    trada de dados,

    podemos ter os

    dispositivos de-

    monstrados ao

    lado.

    Sada de dados Como sada de dados,

    podemos ter os dis-

    positivos demonstra-

    dos ao lado.

  • 14

    Alguns conceitos prvios Antes de comearmos a trabalhar com o Arduino preci-samos aprender alguns conceitos de eletrnica e programa-o que sero importantes ao decorrer do curso.

    LED (Diodo Emissor de Luz) Pode-se compreender o LED como uma pequena lmpada que consome baixa energia, mas que fornece uma luminosidade comparvel a uma lm-pada do mesmo porte.

    Push-button - (Boto ou chave) Uma chave, ou se preferir chamar de boto, tem o mesmo princpio de funcionamento de um interruptor (liga, desliga), quando ele pressionado o seus contatos entram em curto.

    Buzzer Emite som quando acionado.

    LDR O LDR um sensor de luz, que varia sua resistncia el-trica de acordo com a intensidade luminosa sobre o mesmo.

    Sensor de temperatura Segue a mesma ideia do LDR, mas neste caso sua resistncia varia de acordo com a temperatura e no com a luminosidade.

    LCD Display que pode ser utilizado para exibir mensa-

    gens atravs do Arduino.

  • 15

    Como funciona o Arduino? Podemos dividir o funcionamento dele em 3 partes, leitura de dados (normalmente sensores), processamento de dados (decises a serem toma-das a partir da leitura de dados), e atuao (aps o Arduino ler os sinais e interpreta-los, ele decide o que vai fazer). Um exemplo desse funcionamen-to seria acender um LED com uma chave ligada ao Arduino, a chave diz pro Arduino que quer ligar o LED, ele por sua vez verifica se essa chave esta autorizada a liga-lo (isso feito atravs da programao), caso possa, o pr-prio Arduino se encarrega de acender o LED.

    O Programa Antes de colocarmos a mo na massa vamos entender como funciona o programa que iremos utilizar para programar o Arduino. A rea em branco ser u