Aula 01 - Programação I - Introdução a Lógica

Embed Size (px)

DESCRIPTION

Primeira aula de introcução à lógica de programação usando a linguagem python.

Citation preview

Programao I

Programao IProfessor RogrioConceitos BsicosO homem sempre procurou criar mquinas que o auxiliassem em seu trabalho, diminuindo esforo e economizando tempo.

Dentre essas mquinas, o computador vem se mostrando uma das mais versteis, rpidas e seguras. O computador pode auxiliar em qualquer tarefa. mas no tem iniciativa, nenhuma independncia, no criativo nem inteligente, por isso precisa receber instrues nos mnimos detalhes.

A finalidade de um computador receber, manipular e armazenar dados.Conceitos BsicosUm computador possui duas partes distintas que trabalham juntas: o hardware (composto pelas partes fsicas) e o software (composto pelos programas).

Quando se desenvolve um software para realizar determinado tipo de processamento de dados, deve-se escrever um programa ou vrios programas interligados. No entanto, para que o computador compreenda e execute esse programa, devemos escrev-lo usando uma linguagem que tanto o computador quanto o criador do software entendam. Essa linguagem chamada de linguagem de programao.Conceitos BsicosAs etapas para o desenvolvimento de um programa so:

Anlise: nesta estuda-se o enunciado do problema para definir os dados de entrada, o processamento e os dados de sada.Algoritmo: ferramentas (descrio narrativa, fluxograma ou portugus estruturado) que so utilizados para descrever o problema com suas solues.Codificao: o algoritmo transformado em cdigos da linguagem de programao escolhida para se trabalhar.O que Lgica Resulta, em geral, de experincias do dia a dia. Usamos a lgica quando executamos ordenadamente uma srie de rotinas predeterminadas, tais como: levantar da cama, pegar chinelos, trocar uma lmpada e etc.

Conceito de lgica: conjunto de leis, princpios ou mtodos que determinam um raciocnio coerente, induzindo a uma soluo prtica e eficaz do problema.Qual a sequncia lgica a seguir:

a) 1 4 9 16 25 36 _____

b) 1 1 2 3 5 8 ____

c) UD TQC_____

d) 6 + 4 = 210 9 + 2 = 711 8 + 5 = 313 5 + 2 = ?O que LgicaAlgoritmos Algoritmos uma sequncia de passos que visa atingir um objetivo bem definido.Algoritmo 1: Trocar uma Lmpada QueimadaPasso 1 - Pegar a lmpada nova.Passo 2 - Pegar a escada.Passo 3 - Posicionar a escada embaixo da lmpada queimada.Passo 4 - Subir na escada com a lmpada nova na mo.Passo 5 - Retirar a lmpada queimada.Passo 6 - Colocar a lmpada nova.Passo 7 - Descer da escada.Passo 8 - Testar o interruptor.Passo 9 - Guardar a escada.Passo 10 - Jogar a lmpada velha no lixo.Importante: Essa atividade pode ser realizada de uma maneira diferente, pois, s vezes um problema pode ser resolvido de diversas maneiras, porm, gerando a mesma resposta, ou seja, podem existir vrios algoritmos para solucionar o mesmo problema.Exerccio de Algoritmos

Exerccio das moedas.Desenhe 5 crculos. Nos crculos 1 e 2 coloque uma moeda de 5 e nos crculos 4 e 5 uma moeda de 10.Objetivo: Trocar as moedas de lugarRegras: Cada moeda s avana em uma direo e s um crculo. Se encontrar outra moeda, poder salt-la desde que o prximo crculo esteja desocupado.Programao em Python

Vdeo: TPW 000 Apresentao e MotivaoTipos de Dados: Os dados necessrios para a execuo de um programa e devero ser identificados em um dos tipos abaixo:

Exemplo:Joo tem 25 anos. (INTEIRO)Esta classe tem 40 alunos. (INTEIRO)Ana tirou 9.5 em matemtica. (REAL)A altura de Pedro 1.85m (REAL)A placa daquele carro BPP 6745. (CARACTERE)O nome dela : Maria. (CARACTERE) Programao em Python

Variveis: Cada varivel corresponde a uma posio de memria, cujo contedo pode variar durante a execuo de um programa. Embora possa assumir diferentes valores, ela s pode armazenar um valor a cada instante.Programao em PythonTeclado (Unidade de Entrada de Dados)Caixa de Som (Unidade de Sada de Dados)Monitor (Unidade de Sada de Dados)CPU (unidade central de processamento) , mmoria internaMouse (Unidade de Entrada de Dados)

Programao em Python

e-mailsobrenomenomeMemria internaMemria interna (diviso)Variveis: Cada varivel corresponde a uma posio de memria, cujo contedo pode variar durante a execuo de um programa. Embora possa assumir diferentes valores, ela s pode armazenar um valor a cada instante.Toda varivel tem um nome (identificador) que formado por um ou mais caracteres, sendo o primeiro obrigatoriamente uma letra e os caracteres seguintes, letras ou dgitos, no sendo permitido o uso de smbolos especiais, exceto o _ (underline). No so aceitos palavras reservadas da linguagem.

Nomes vlidos: a , A, nome, nome_funcionario, A12.

Nomes invlidos: 1A, 20_B, if, for, int.Programao em PythonOperadores Aritmticos: +, -, *, / e % (resto da diviso).Prioridades ou precedncia de operadoresPrioridade mais alta:*/%Prioridade mais baixa:+-Obs : Parntese garantem maior prioridade;Ex:para a expresso2*(4+2)o resultado ser 12 para a expresso2*4+2o resultado ser 10Funes: pow (base, potencia) => Exemplo =>42 => pow (4,2) = 16

Exemplo: 10 + 6 / 2 * 20 = 70 10 % 3 = 1 4 + 5 * 3= 19 (4 + 5) * 3= 27pow (3,2) = 9 => 32pow (9, 0.5) = 3pow (5, 3 ) = 125 => 53pow (27, 0.33333) = 2.99996704181Programao em PythonOperadores Relacionais: So necessrias para fazer algum tipo de comparao. O resultado sempre um valor lgico verdadeiro (true) ou falso (false).

== (igualdade) , >, =, 7 => verdadeiro (true)7 != 7 = >falso (false)

Importante: um sinal de = significa atribuioProgramao em PythonProposio AProposio BOperador and (A e B)Operador or (A ou B)Operador ! (no A)VerdadeiroverdadeiroVVFVerdadeiroFalsoFVFFalsoverdadeiroFVVFalsoFalsoFFVOperadores Lgicos: So utilizados para combinar duas ou mais expresses. Retornam verdadeiro (true) ou falso (false).

and ou &: conjuno e (lgico)or ou | : disjuno ou (lgico)!: negao

Prioridade ou precedncia de Operadores Lgicos:Prioridade ( !; and ou & ; or ou | )Exemplo:( 4 > 5) and (2 != 4) F and V F ( 4 > 5) or (2 != 4) F or V VProgramao em Pythona) x = 5 + 3 * 2 + 8b) x = ( 5 + 3 * 2) % 4 c) x = 64 / pow (4,2)Exerccio 1: Resolva as expresses determinando o valor de x.a) (2+5) > 4 b) 3 != 3 c) (2*5) > 3 d) (5+1) < 2 e) 2 < (7-2) f)pow(3,2) 3) or (5+1 Vb) (2>3) or (3 F c) (2>3) and (3= 4) or (5+3*2 > 12 ) Exerccio 3: Qual o valor lgico das expresses abaixo:

Linearizao de Comandos: Todas as expresses matemticas devem ser colocadas em uma linha, devendo ser feito o mapeamento dos operadores (precedncia). x1 = (-b + pow (delta , 0.5) ) / (2 * a) x2 = (-b - pow (delta , 0.5) ) / (2 * a)

Programao em Python Programao em PythonTWP010 : Hello World Interativo

TWP020 : Variveis e Modo de EdioDesenvolver o exerccio 1 das pginas 10 e 11 (apostila do professor).

TWP030 : Operadores relacionais e lgicosDesenvolver os exerccios 2,3 e 4 das pginas 11 e 12 (apostila do professor).

TWP040 : MarcadoresDesenvolver os exerccios 5 e 6 das pginas 12 e 13 (apostila do professor).

TWP050 dinmica, forte e mltiplaTWP052 Teste de Mesa ou SimulaoTWP053 Entrada de Dados

Desenvolver os exerccios de 1 a 14 das pginas 14 e 15.Indica o incio e fim da soluoParalelogramoIndica que uma entrada de dados (em uma varivel).Indica o qual o sentido do fluxo de instruesIndica sada de dados, normalmente em um monitor.Indica um processo, normalmente uma atribuio de valores a uma varivel losangoIndica deciso.Fluxograma Consiste em analisar o enunciado do problema e escrever, utilizando smbolos grficos predefinidos, a soluo.distancia = float(input("distancia: "))valorLitro = float(input("valor do litro: "))desempenho = float(input ("Km por litro: "))pedagio = float(input ("Pedagio: "))valorTotal=(distancia*valorLitro)/desempenho + pedagio print(" valor do combustivel: %4.2f" %valorTotal)distancia:100valor do litro:2.79Km por litro: 10pedagio: 10valor do combustvel: 37.9

10. Calcular o valor de uma viagem de uma cidade a outra. ANLISE ALGORITMO CODIFICAO TESTE

//entradadistanciavalorLitrodesempenhopedagio

//processamentoCalcular valorTotal//sadavalorTotal