52
Programação de computadores Algoritmos e programação 1

Algoritmos e programação 1. Programação Conceito: Conjunto de métodos, técnicas e procedimentos para elaboração de um SW. Pessoas Usuário: usa o SW como

Embed Size (px)

Citation preview

Introduo informtica

Programao de computadoresAlgoritmos e programao1ProgramaoConceito: Conjunto de mtodos, tcnicas e procedimentos para elaborao de um SW.

PessoasUsurio: usa o SW como ferramenta de trabalhoProgramador: define e codifica comandos a serem realizados em SW, utilizando-se uma linguagem de programao

2ProgramaoPrimrdios:Desenvolvimento era uma arte (artesanal)Exigia conhecimentos profundos de HW, muito criatividade e raciocnio lgicoNo existiam mtodos formaisAtualmente:Ainda exige criatividade e raciocnio lgicoSWs devem fceis de serem entendidos por outros programadores, Devem ter poucos erros e possuir bom desempenhoUso da programao estruturada

3Algoritmos x problemasProblema: Qualquer questo levantada para se chegar a uma deciso/soluo.Soluo: necessrio conhecer, entender os domnios do problemaAlgoritmo: uma sequncia ordenada e finita de etapas, cuja execuo resolve um determinado problema.4Algoritmos x problemasExemplos de problemas:Realizar saque em um caixa automticoBeber guaComandos com sequncia, desvio, repetio

Algoritmos podem ser reutilizados:Outras pessoas, mquinas, ocasies, linguagensProblemaAlgoritmoSoluo5ExerccioEscreva um algoritmo para:Ir de casa at a faculdadePreparar caf na cafeteira eltricaProcurar o significado de uma palavra no dicionrio6Estruturar algoritmosA codificao a fase da programao em que transcrevemos um algoritmo para uma linguagem de programao. a etapa mais fcil.O difcil saber o qu programar:O que o problema?Como modelar uma soluo?Qual seu algoritmo?7Nossos algoritmosCaractersticas:Converso fcil: notao prxima s ling. de programaoObjetividade: evitar ambiguidades, maior precisoFcil entendimento: entendido por pessoas , ao invs de mquinas.Foco no problema: no especfica para uma ling. de programao.8Computadores X programasSadaMonitor, impressora, modem, placa de somProgramaMemria secundriaDispositivo de entradaCPU

Busca sequencial de comandosSequncia de comandos e dadosMemria principal(RAM)Sistema Operacional9Portugus estruturado uma pseudolinguagem (pseudocdigo) que representa em alto nvel algoritmos.Existem outras formasTambm conhecido como portugolCaractersticas:Conj. limitado de comandosConstri algoritmos simples e complexosInterpretao nicaPermite criar uma lista ordenada de comandos10Portugus estruturadoLxico: escrita correta de uma palavraHematoma ou ematoma ?Sintaxe: sequncia de regras a serem seguidasFrase deve ser composta de sujeito, depois verbo e por ltimo predicado. Exemplo: Vou beber gua.Semntico: Rege o sentido de uma fraseExemplo: Vou beber gua benta.

11Portugus estruturadoTipos de dadosInteiros: -100, 0, 300Real: (fracionrios)-3.1415, 0.99, +11.1Lgico: verdadeiro ou falsoCaractere: a, !, @, 9Cadeia de caracteres (String): undb, (98) 8181-8888Identifique os tipos dos dados a seguir:Salrio, n de dedos, peso, saldo, aprovao no vestibular, cep, logradouro, placa, PI, arroba12Portugus estruturadoOperadores aritmticos: binriosSoma: +Subtrao: -Multiplicao: *Diviso real: /Quociente da diviso inteira: # Resto da diviso inteira: %Potncia: ^Operadores aritmticos: unrioOposto: -Positivo: +13Portugus estruturadoClassifique as operaes em corretas ou erradas, e d o resultado

2+33.2*98 *2-911#311%37.4 #27.4%27.4/2%3-(2^10)-(4+10)*3.0(8/0)+1

14Portugus estruturadoOperadores relacionais: relao entre dois elementos.Resultam em valor lgico.

Igual a: =Maior que: >Maior que: =Menor ou igual a: 410>=9-1>-27.3 7.24 ou 10>=9(-1>-2) e (7.3 7.2)No (10 < 10)(5,=,9 e 5+4>14 2+3-5*8Raiz(quad(abs(-9)+1))No(3+5 5 /2 -1)

23Portugus estruturado24Portugus estruturadoVariveis: um identificador de endereoENTRADA PROCESSAMENTO SADADados devem ser armazenados na memria (endereo)Uso: atravs de um nome especfico, ou endereoPode ocupar quantidades de memria diferentes, dependendo do tipo do dadoSo eliminadas com o fim do programaUma varivel contm um valor por vezSintaxeNome nico dentro do trecho (bloco) de cdigoDeve ser iniciada com letra, depois _, ou nmerosNo deve conter acentos, nem usar nomes de comandos

25Portugus estruturadoVariveis:Sintaxe corretaSintaxe errada

Valor_pagosomaMedia2IdadenomeDopaciente

mdiavalor pago2notaValor_em_U$Nome-do-aluno

26Portugus estruturadoVariveis: declarao (criao)Devem ser criadas no incio do bloco de cdigoPossuem um tipo especficoSintaxe:Declarao nica: : tipo;Declarao mltipla: , , ..., : tipo;Exemplos:Quant_latas, quant_pessoas : inteiro;Salario, multa, juros : real;Opcao : caractere;nome, endereco, cep, cidade, estado: cadeia;

27Portugus estruturadoPrograma: sintaxeTipos = ;...Variaveis , , ..., : ;...Inciocomando1;...comandoN;Fim.(continua no prximo slide)

28Portugus estruturadoPrograma: sintaxe (continuao)Modulo ;[[comando1;...comandoN; ]];...Comentrios: qualquer informao aps a barra dupla //Qualquer trecho de cdigo pode conter um comentrio.No considerado cdigoIdentao: facilita a organizao

29Portugus estruturadoComando de atribuio: