250 likes | 415 Views
MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS SÃO JOSÉ – SANTA CATARINA. Lógica de Programação Módulo II. Prof. Tiago Semprebom tisemp@sj.ifsc.edu.br www.sj.ifsc.edu.br/~tisemp. Lógica de Programação.
E N D
MINISTÉRIO DA EDUCAÇÃOSECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICAINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIACAMPUS SÃO JOSÉ – SANTA CATARINA Lógica de ProgramaçãoMódulo II Prof. Tiago Semprebomtisemp@sj.ifsc.edu.brwww.sj.ifsc.edu.br/~tisemp
Lógica de Programação Estruturas de dados • Representação computacional das informações do problema a ser resolvido • Informações podem ser de diferentes tipos, então implicam diferentes representações • Ex. Identifique os dados de entrada e saída neste algoritmo para calcular a aceleração de um corpo: • 1. Leia para variável M a massa do corpo em Kg. • 2. Leia para variável F a força a ser aplicada ao corpo. • 3. Calcule a aceleração: a = F/M – ac * Mg • 4. Mostre o valor da variável a na tela
Lógica de Programação Tipos primitivos de dados • Numéricos: • Inteiros: um subconjunto dos números inteiros, podendo ser sinalizados ou não (ex: 4, -5, 1034, 0). • Reais: um subconjunto dos números reais, com determinada precisão (ex: 1.34, 2.7828). • Não-numéricos: • Alfanuméricos: sequência de letras, algarismos e símbolos (ex: “ABCDEF”, “FX90”, “R$ 10,00”). • Booleanos: valores que representam verdadeiro ou falso (ex: TRUE ou FALSE).
Lógica de Programação Constantes e variáveis • Informações podem estar guardadas em constantes ou variáveis • Constantes: valores que não mudam ao longo do tempo • Variáveis: guardam valores que podem mudar • Conteúdo: valor da variável. • Identificador: o nome da variável. • Do ponto de vista computacional, uma variável é uma área de memória RAM
Lógica de Programação Constantes e variáveis • Ex. Algoritmo para calcular a aceleração de um corpo: 1. Leia para variável M a massa do corpo em Kg. 2. Leia para variável F a força a ser aplicada ao corpo. 3. Calcule a acelaração: a = F / M – ac * Mg 4. Mostre o valor a na tela. F: variável que representa a força aplicada M: variável que representa a massa do corpo a: variável que representa a aceleração resultante ac: constante que representa o atrito cinético g: constante que representa a aceleração gravitacional constantes
Lógica de Programação Constantes e variáveis • Ex: Algoritmo para formatar o nome de uma pessoa: 1. Leia para variável nome o primeiro nome de uma pessoa. 2. Leia para variável sobrenome seu sobrenome. 3. Faça variável NomeCompleto = nome + “” sobrenome 4. Mostre o valor da variável NomeCompleto na tela. variáveis: nome, sobrenome,NomeCompleto constantes: “ ” Obs.: todas as variáveis e constantes são alfanuméricas.
Lógica de Programação Constantes e variáveis • O identificador é o nome de um local onde se podem guardar valores de determinado tipo de dados. • A definição de identificadores possui regras (sendo algumas de bom senso): • Devem iniciar com caractere alfabético; • Segundo caractere em diante pode ser numérico; • Pode-se usar símbolo “_” como parte do identificador; • Devem ajudar a lembrar do que se trata a informação guardada (i.e: mnemônico) • Exemplo: nome, sobrenome, a, F, lista, ...
Lógica de Programação Declaração de variáveis • As variáveis necessárias em um algoritmo devem ser previamente declaradas • Assim se reserva memória para guardar seus conteúdos • A declaração inclui o tipo de dados da variável e seu identificador, na forma: Tipo variável1, variável2,...; • Exemplos: real: x, y; // coordenadas do ponto caracter Nome; inteiro Dia, mes, ano; booleano Sucesso; /* verificação do nome bem sucedida */
Lógica de Programação Declaração de variáveis • Ao serem declaradas as variáveis não estão inicializadas • Quer dizer, não possuem valor • A declaração ocorre antes das ações do algoritmo • Os comentários representam qualquer explicação inserida no algoritmo, para ajudar seu entendimento • Comentários são precedidos por // • ... Ou delimitados por /* e */ (neste caso, podem ocupar mais de uma linha)
Lógica de Programação Operações básicas • Atribuição: • Atribuir ou associar um valor a uma expressão • Sintaxe genérica: identificadorexpressão; • Expressão pode ser: uma constante, variável, expressão matemática, função matemática, expressão booleana,... • O resultado da expressão deve respeitar o tipo da variável! • Ex: X 10; Y x * 2; Sucesso (x < 20) and (y > 10); A se(αx+ωt);
Lógica de Programação Operações básicas • Operadores aritméticos: +, - Adição e subtração (unários) * Multiplicação / Divisão div Divisão inteira ou truncada mod Resto da divisão inteira • Operadores relacionais: >, >=, <, <=, == (igual), != (diferente) • Operadores lógicos ou booleanos: And, Or, Not
Lógica de Programação Operações básicas • Funções matemáticas: Nome da função (lista de argumentos) • Exemplos: • Sin(x) Seno do valor contido em x • Sqrt(x) Raiz quadrada do valor contido em x • Int(y) Parte inteira do valor contido em y • Abs(x) Valor absoluto (módulo) do valor contido em x
Lógica de Programação Descrição do algoritmo em pseudo-linguagem: Declaração de variáveis e constantes INICIO Inicialização de variáveis e constantes Comandos de entrada de dados Processamento / cálculo Comandos de saída de dados FIM
Lógica de Programação Descrição do algoritmo em pseudo-linguagem: Ex: cálculo de média Real P1, P2, P3, P4, M; INICIO Leia(P1); Leia(P2); Leia(P3); Leia(P4); M (P1+P2+P3+P4) / 4; Escreva(“Média final = ”, M); FIM
Lógica de Programação Exercícios: 1) Faça um algoritmo para ler dados pessoais (nome, ano de nascimento, endereço, sexo), e mostre esses dados da seguinte forma: Nome: nome completo Nascimento: ano de nascimento Idade: idade Sexo: M ou F Maior de idade: Verdadeiro ou Falso
Lógica de Programação Exercícios: 2) Faça um algoritmo para calcular e mostrar o perímetro de um polígono qualquer. 3) Faça um algoritmo para ler a base e a altura de um triângulo. Em seguida, escreva a área do mesmo. Obs: Área = (Base * Altura) / 2. 4) Desenvolva um programa que leia uma temperatura em graus Fahrenheit e apresente convertida em graus Centígrados. A fórmula de conversão é: C = (F - 32) * (5/9). Onde F é a temperatura em Fahrenheit e C é a temperatura em Centígrados.
Lógica de Programação 5) Faça um algoritmo para calcular a resistência equivalente para um circuito com duas resistências em paralelo. 6) Em um cinema as cadeiras são numeradas seqüencialmente, começando no canto esquerdo próximo à tela. Essas cadeiras estão organizadas em 40 fileiras de 20 cadeiras. Faça um algoritmo que informe que fileira se encontre determinada cadeira, e sua posição em relação ao início da fileira.
Lógica de Programação Estruturas de controle: • Condicional: faz a escolha de ações a serem executadas, dependendo de condições definidas. • Condições são dadas por expressões booleanas, que resultam em Verdadeiro ou Falso. • Sintaxe geral: Se condição então Se condição então Bloco de comandos Bloco de comandos Fim se Senão Bloco de comandos Fim se
Lógica de Programação Exercícios: • Faça um algoritmo para fazer a divisão de dois números reais. Antes de dividi-los deve ser feito um teste de validade. Caso não seja possível dividi-los, deve ser mostrada uma mensagem de erro. Se for possível, deve-se mostrar o resultado da divisão. 2) Faça um algoritmo para fazer a divisão de dois números inteiros. No entanto, antes de efetuar a divisão deve-se verificar se é possível fazer a divisão sem resto, gerando-se uma mensagem de erro caso contrário.
Lógica de Programação Exercícios: 3) Escreva um programa para ler as notas da primeira e segunda avaliações de um aluno, calcular a media e escrever se este aluno foi APROVADO (media maior ou igual a 7), REPROVADO (media inferior a 4), ou se esta' em EXAME (entre 4 e 7). Escrever também a media calculada. 4) Elaborar um programa que efetue o cálculo do reajuste de salário de um funcionário. Considere que o funcionário deverá receber um reajuste de 15% caso seu salário seja menor que 500, se o salário for maior ou igual a 500 mas menor ou igual a 1000, seu reajuste será de 10%, caso seja ainda maior que 1000, o reajuste deverá ser de 5%.
Lógica de Programação 5) Faça um algoritmo para calcular o imposto de renda anual (ano-calendário de 2008) devido para uma pessoa que receba um determinado salário. i) Salários menores que R$ 1372,81 estão isentos. ii) Salários entre R$ 1372,81 e R$ 2743,25 pagam alíquota de 15% (deduz-se R$ 205,92 na base do imposto devido). iii) Salários acima de R$ 2743,25 pagam alíquota de 27,5% (deduz-se R$ 548,83 na base do imposto devido).
Lógica de Programação 6) Escreva um programa que receba um número e mostre a mensagem "O número está na faixa de 20 a 90" caso o valor fornecido para a número lido seja um valor entre 20 e 90. Qualquer valor fornecido fora da faixa definida apresentará a mensagem "O número não está na faixa de 20 a 90". 7) Elabore um programa que receba um Texto e mostre a mensagem "O seu sexo é válido", caso o valor fornecido para o Texto lido seja um valor masculino ou um valor feminino. Qualquer outro valor fornecido apresentará a mensagem "O seu sexo é inválido".
Lógica de Programação 8) Qual será o valor da variável C após a execução do programa abaixo, sabendo que A = 4, B = 3, C = 5 e X = 2; Programa Exemplo; variaveis A,B,C,X: Inteiro; begin leia(A, B, X); if not (X > 5) then C := (A + B) * X else C := (A - B) * X; imprima(C); end.
Lógica de Programação 9) Faça um teste de mesa para o algoritmo descrito neste fluxograma, de acordo com os dados fornecidos: Considere a tabela abaixo para o teste de mesa:
Lógica de Programação Exercícios: 10) Traduza para pseudo-linguagem o algoritmo descrito no fluxograma da questão 9.