Programação de computadores

Apresentações semelhantes


Apresentação em tema: "Programação de computadores"— Transcrição da apresentação:

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

2 Programação Conceito: Conjunto de métodos, técnicas e procedimentos para elaboração de um SW. Pessoas Usuário: usa o SW como ferramenta de trabalho Programador: define e codifica comandos a serem realizados em SW, utilizando-se uma linguagem de programação

3 Programação Primórdios: Atualmente:
Desenvolvimento era uma arte (artesanal) Exigia conhecimentos profundos de HW, muito criatividade e raciocínio lógico Não existiam métodos formais Atualmente: Ainda exige criatividade e raciocínio lógico SWs devem fáceis de serem entendidos por outros programadores, Devem ter poucos erros e possuir bom desempenho Uso da programação estruturada

4 Algoritmos x problemas
Problema: Qualquer questão levantada para se chegar a uma decisão/solução. Solução: É necessário conhecer, entender os domínios do problema Algoritmo: É uma sequência ordenada e finita de etapas, cuja execução resolve um determinado problema.

5 Algoritmos x problemas
Exemplos de problemas: Realizar saque em um caixa automático Beber água Comandos com sequência, desvio, repetição Algoritmos podem ser reutilizados: Outras pessoas, máquinas, ocasiões, linguagens Problema Algoritmo Solução

6 Exercício Escreva um algoritmo para: Ir de casa até a faculdade
Preparar café na cafeteira elétrica Procurar o significado de uma palavra no dicionário

7 Estruturar algoritmos
A codificação é a fase da programação em que transcrevemos um algoritmo para uma linguagem de programação. É a etapa mais fácil. O difícil é saber o quê programar: O que é o problema? Como modelar uma solução? Qual seu algoritmo?

8 Nossos algoritmos Características:
Conversão fácil: notação próxima às ling. de programação Objetividade: evitar ambiguidades, maior precisão Fácil entendimento: entendido por pessoas , ao invés de máquinas. Foco no problema: não é específica para uma ling. de programação.

9 Computadores X programas
Sequência de comandos e dados Memória principal (RAM) CPU Busca sequencial de comandos Sistema Operacional Programa Memória secundária Dispositivo de entrada Saída Monitor, impressora, modem, placa de som

10 Português estruturado
É uma pseudolinguagem (pseudocódigo) que representa em alto nível algoritmos. Existem outras formas Também conhecido como portugol Características: Conj. limitado de comandos Constrói algoritmos simples e complexos Interpretação única Permite criar uma lista ordenada de comandos

11 Português estruturado
Léxico: escrita correta de uma palavra Hematoma ou ematoma ? Sintaxe: sequência de regras a serem seguidas Frase deve ser composta de sujeito, depois verbo e por último predicado. Exemplo: Vou beber água. Semântico: Rege o sentido de uma frase Exemplo: Vou beber água benta.

12 Português estruturado
Tipos de dados Inteiros: -100, 0, 300 Real: (fracionários) , , Lógico: verdadeiro ou falso Caractere: “a”, “!”, “9” Cadeia de caracteres (String): ‘undb’, ‘(98) ’ Identifique os tipos dos dados a seguir: Salário, nº de dedos, peso, saldo, aprovação no vestibular, cep, logradouro, placa, PI, arroba

13 Português estruturado
Operadores aritméticos: binários Soma: + Subtração: - Multiplicação: * Divisão real: / Quociente da divisão inteira: # Resto da divisão inteira: % Potência: ^ Operadores aritméticos: unário Oposto: - Positivo: +

14 Português estruturado
Classifique as operações em corretas ou erradas, e dê o resultado 2+3 7.4/2 3.2*9 %3 8 * -(2^10) 2-9 -(4+10)*3.0 11#3 (8/0)+1 11%3 7.4 #2 7.4%2

15 Português estruturado
Operadores relacionais: relação entre dois elementos. Resultam em valor lógico. Igual a: = Maior que: > Maior que: < Maior ou igual a: >= Menor ou igual a: <= Diferente: <>

16 Português estruturado
Dê o resultado das seguintes expressões relacionais 3>4 10>=9 -1>-2 7.3 <> 7.2 <10

17 Português estruturado
Operadores lógicos: estendem o uso dos operadores relacionais. Operador NÃO (negação) Operador E (conjunção) Operador OU (disjunção) Operador XOU (disjunção exclusiva)

18 Português estruturado
Negação A NÃO A V F Disjunção A B A OU B V F Conjunção A B A E B V F Disjunção exclusivo A B A XOU B V F

19 Português estruturado
Dê o resultado das seguintes expressões relacionais 3>4 ou 10>=9 (-1>-2) e (7.3 <> 7.2) Não (10 < 10) (5<=(10/2)) xou (não(não (falso)))

20 Português estruturado
Funções: São subprogramas Geram valores de saída (resultado) Devem ser criados preferencialmente quando trechos de código se repetem pelo programa Organizam os programas Dividir para conquistar Facilita: Entendimento Detecção de erros Manutenção

21 Português estruturado
Funções: sintaxe (uso) <nomeFunção> (<p1>, <p2>, ..., <pn>) p = parâmetro, variável ou valor de qualquer tipo <> indicam onde os valores devem ser escritos Exemplos: raiz(x) abs(x) arred(x) trunc(x) quad(x)

22 Português estruturado
Prioridades Ordem Descrição Subordem Símbolo Parênteses mais internos + interno  + externo ( ) Potência ^ Funções qualquer Operadores aritméticos 1º lugar *, /, #, % 2º lugar +, - Operadores relacionais >,<,>=,<=, <> Operadores lógicos Não E 3º lugar Ou, Xou

23 Português estruturado
Prioridade: Exemplos 3+4*9 (3+4)*9 8–quad(4)+5 10>9 e 5+4>14 2+3-5*8 Raiz(quad(abs(-9)+1)) Não(3+5 <> 5 /2 -1)

24 Português estruturado
Conversão de fórmulas: uso apenas de parênteses Exemplo 1: (matemáticaportugol) 𝑎+𝑏 𝑐 𝑑  ((a+b)/c)*d Exemplo 2: (matemáticaportugol) −𝑏± 𝑏 2 −4𝑎𝑐 2𝑎  (-b+raiz(b*b-4*a*c))/(2*a) ou (-b-raiz(b*b-4*a*c))/(2*a)

25 Português estruturado
Variáveis: é um identificador de endereço ENTRADA  PROCESSAMENTO SAÍDA Dados devem ser armazenados na memória (endereço) Uso: através de um nome específico, ou endereço Pode ocupar quantidades de memória diferentes, dependendo do tipo do dado São eliminadas com o fim do programa Uma variável contém um valor por vez Sintaxe Nome único dentro do trecho (bloco) de código Deve ser iniciada com letra, depois “_”, ou números Não deve conter acentos, nem usar nomes de comandos

26 Português estruturado
Variáveis: Sintaxe correta Sintaxe errada Valor_pago soma Media2 Idade nomeDopaciente média valor pago 2nota Valor_em_U$ Nome-do-aluno

27 Português estruturado
Variáveis: declaração (criação) Devem ser criadas no início do bloco de código Possuem um tipo específico Sintaxe: Declaração única: <variável> : tipo; Declaração múltipla: <v1>, <v2>, ..., <vn> : tipo; Exemplos: Quant_latas, quant_pessoas : inteiro; Salario, multa, juros : real; Opcao : caractere; nome, endereco, cep, cidade, estado: cadeia;

28 Português estruturado
Programa: sintaxe Tipos <novoTipo> = <TipoBase>; ... Variaveis <v1>, <v2>, ..., <vn> : <TipoBase>; Início comando1; comandoN; Fim. (continua no próximo slide)

29 Português estruturado
Programa: sintaxe (continuação) Modulo <nomeModulo>; [[ comando1; ... comandoN; ]]; Comentários: É qualquer informação após a barra dupla “//” Qualquer trecho de código pode conter um comentário. Não é considerado código Identação: facilita a organização

30 Português estruturado
Comando de atribuição: <- Sintaxe: <nomeDaVariável> <- <expressão>; Modifica o valor de uma variável. Expressão: constantes, operações aritméticas, lógica ou relacionais; O resultada da expressão deve ser compatível com o tipo da variável; <- pode ser interpretado como “recebe”.

31 Português estruturado
Comando de atribuição: exemplo Teste <-falso; idade <- idade+1; SalarioLiquido <- salarioBruto – impostos; status <- ‘ocupado’

32 Português estruturado
Comando de entrada: ler Permite a comunicação entre o usuário e a máquina. Os valores informados serão armazenados nas respectivas variáveis. Sintaxe: ler <var1>, <var2>, ... ; Exemplo: ler nome; ler nome, idade, peso, altura;

33 Português estruturado
Comando de saída: escrever Permite a comunicação entre a máquina e o usuário. A saída será o monitor (por padrão). Sintaxe: escrever <var ou expr ou valor>, <var ou expr ou valor>, ... ; Exemplo: escrever ‘Meu nome é ’, nome; escrever a+b;

34 Português estruturado
Exemplo de programa: Variáveis n1,n2,soma:inteiro; Início ler n1; ler n2; soma<-n1+n2; escrever soma; Fim. Exemplo de programa: Variáveis n1,n2,soma:inteiro; Início ler n1; soma<-n1+n2; ler n2; escrever soma; Fim.

35 Português estruturado
Exercícios páginas 37 e 38

36 Português estruturado
Módulos: Permitem dividir um programa em sub-programas; Facilita: entendimento, manutenção, correção. Sintaxe: Módulo <nome>; [[<comando1>; <comandoN>]];

37 Português estruturado
Ex.: Calcular gastos com azuleijo Variáveis gasto, area, comprimento, altura, largura, total_azuleijos: real; Início lerDimensoes; Calcular_custo; Escrever_custo Fim.

38 Português estruturado
Ex.: Calcular gastos com azuleijo Módulo LerDimensoes; [[ escrever ‘Comprimento: ’; ler comprimento; escrever ‘altura”; ler altura; ]] Exercício: fazer demais módulos

39 Português estruturado
Exercícios: 57 a 60.

40 Português estruturado
Decisões Algumas vezes não queremos usar todos os comandos; Decidir quais comandos executar São baseadas em testes lógicos Se Sintaxe: se <exp_lógica> então <comando_verdade>; se <exp_lógica> então <comando_verdade> senão <comando_falsidade>;

41 Português estruturado
Melhor organização: se <exp_lógica> então <comando_verdade>; <comando_verdade> senão <comando_falsidade>;

42 Português estruturado
Exercícios: 1. Ler idade e informar se maior de idade. 2. Ler idade e informar se maior de idade ou menor de idade. 3. Informar se um número é par ou ímpar.

43 Português estruturado
Teste encadeados (aninhados): Usado na existência de mais possibilidades. Substitui-se <comandoX> por outro “se”. Ex.: se <exp_lógica> então <comando_verdade> senão <comando_falsidade>; Exercícios. Calcular a situação de um aluno dadas as 3 avaliações semestrais. Identificar o caçula entre 3 irmãos de idades distintas.

44 Português estruturado
Exercícios: Páginas 75 a 77.

45 Português estruturado
Caso Testa uma variável com diversos valores possíveis. Executa comandos diferentes pra valores diferentes. Sintaxe: Caso < variável ou expressão> seja <valorA>: <comandoA>; <valorB>: <comandoB>; <valorN>: <comandoN>; Senão <comando_Falso>; Fimcaso;

46 Português estruturado
Caso Exercício: Um sócio de um clube tem o pagamento de sua anuidade de acordo com o dígito final de sua matrícula. Final 0  pagamento em janeiro Final 1  pagamento em fevereiro Final 2  pagamento em março Final 3  pagamento em abril Qualquer outro  pagamento em maio

47 Português estruturado
Caso: Solução 1 (se) Variáveis num_matricula, final : inteiro; Início ler num_matricula; final <-num_matricula % 10; se final = 0 então escrever ‘Pagamento em janeiro.’ senão se final = 1 então escrever ‘Pagamento em fevereiro.’ se final = 2 então escrever ‘Pagamento em março.’

48 Português estruturado
Caso: Solução 1 (se) se final = 2 então escrever ‘Pagamento em março.’ Senão se final = 3 então escrever ‘Pagamento de abril.’ senão Escrever ‘Pagamento de maio.’; Fim.

49 Português estruturado
Caso: Solução 2 (caso) Variáveis num_matricula, final : inteiro; Início ler num_matricula; final <-num_matricula % 10; caso final seja 0: escrever ‘Pagamento em janeiro’; 1: escrever ‘Pagamento em fevereiro’; 2: escrever ‘Pagamento em março’; 3: escrever ‘Pagamento em abril’; senão Escrever ‘Pagamento em maio’; Fimcaso; Fim.

50 Português estruturado
Exercícios páginas 86 a 91.

51 Português estruturado
Blocos: Em algumas situações é necessário executar vários comandos após uma decisão. Para isto usamos blocos. Sintaxe: [[ <comando1>; . . . <comandoN>; ]]

52 Português estruturado
Exercícios: páginas 86 a 91.


Carregar ppt "Programação de computadores"
Anúncios Google