A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

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
Curso Engenharia Civil Modalidade Superior Instituto Federal do Sul de Minas, câmpus Pouso Alegre Modificado por Professora Michelle Nery Créditos: Professor Luis Antonio Tavares Instituto Federal do Sul de Minas, câmpus Pouso Alegre

2 Conteúdo Programático
Problemas de Lógica Conceitos Básicos Algoritmo cotidiano vs computacional Fluxograma Pseudocódigo Estrutura de um Programa Tipos e Variáveis Instruções Básicas Linearização de Expressões Estruturas de Condições Estruturas de Repetição Funções Instituto Federal do Sul de Minas, câmpus Pouso Alegre

3 Introdução O QUE É LÓGICA? Estudo das leis do raciocínio e do modo de aplicá-las corretamente na demonstração da verdade. Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas, ela permite definir a sequência lógica de operação do programa. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

4 Introdução O QUE É ALGORITMO? Sequência de passos que visam atingir um objetivo pré-definido e bem definido. O algoritmo formado e bem definido que pode ser seguido por qualquer pessoa, e o objetivo será alcançado com certeza. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

5 Introdução Cada linha de um algoritmo é uma instrução.
Instruções são um conjunto de regras ou normas definidas para a realização ou emprego de algo. Em informática, é o que indica a um computador uma ação elementar a executar. Um programa é, nada mais, que um conjunto de instruções que executadas cumprem uma finalidade. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

6 Programação O que é Programação? Processo de escrita, teste e manutenção de um programa de computador. Os programas de computadores nada mais são do que algoritmos escritos numa linguagem de computador (Pascal, C, Delphi, Java, PHP entre outras) e que são interpretados e executados por um computador. O algoritmo deve ser fácil de se interpretar e fácil de codificar. Ou seja, ele deve ser o intermediário entre a linguagem falada e a linguagem de programação. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

7 Por que Algoritmo? LINGUAGEM NATURAL PORTUGUÊS, INGLÊS... INSTRUÇÕES
ALTO NÍVEL ALGORITMO CÓDIGO-FONTE EM LINGUAGEM DE PROGRAMAÇÃO COMPILAÇÃO ADAPTAÇÃO TRADUÇÃO BAIXO NÍVEL (EXECUTÁVEL) LINGUAGEM DE MÁQUINA

8 Por que criamos algoritmos?
Linguagem natural não pode ser interpretada por um computador; Porém a linguagem algorítmica é similar a uma linguagem de programação e próxima à linguagem natural; Logo, aprendendo a criar algoritmos, teremos facilidade em aprender uma linguagem de programação. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

9 Regras para fazer um algoritmo
Para montar um algoritmo, precisamos primeiro dividir o problema apresentado em três fases fundamentais: ENTRADA: São os dados de entrada do algoritmo. PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado final. SAÍDA: São os dados já processados. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

10 Analogia com o Homem

11 Representações de um Algoritmo
Fluxograma ou Diagrama de Blocos. Pseudocódigo, Português Estruturado ou Portugol. SUBJETIVIDADE PRECISÃO Instituto Federal do Sul de Minas, câmpus Pouso Alegre

12 Fluxograma ou Diagrama de Blocos
Fluxograma é um tipo de diagrama, e pode ser entendido como uma representação esquemática de um processo. Podemos entendê-lo, na prática, como a documentação dos passos necessários para a execução de um processo qualquer. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

13 Fluxograma Instituto Federal do Sul de Minas, câmpus Pouso Alegre

14 Exemplo de um Fluxograma
Inicio soma = num1 + num2 Escreva o 1º número: soma num1 Fim Escreva o 1º número: num2 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

15 Exemplo de um Fluxograma
Entrada (s): Saída (s): Instituto Federal do Sul de Minas, câmpus Pouso Alegre

16 Pseudocódigo O pseudocódigo é uma maneira intermediária entre a linguagem natural e uma linguagem de programação de representar um algoritmo. Ela utiliza um conjunto restrito de palavras-chave, em geral na língua nativa do programador. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

17 Exemplo de Pseudocódigo
Algoritmo PROGRAMA_EXEMPLO Variáveis num1, num2, soma: Inteiros; Inicio ESCREVA("Digite o primeiro número:"); LEIA(num1); ESCREVA("Digite o segundo número:"); LEIA(num2); soma = num1 + num2; ESCREVA (“A SOMA É: “, soma); Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

18 Instruções Básicas do Pseudocódigo
ESCREVA(); - Responsável por escrever uma mensagem na tela. LEIA(); - Responsável por ler um valor do teclado e armazenar numa variável, ou seja, num espaço em memória. VARIÁVEIS – Responsável por definir todos as variáveis que serão necessárias no programa. Início e Fim – Delimitam o corpo do programa. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

19 Operadores Aritméticos
Operações Operadores Exemplo Soma + a + b Subtração - a - b Divisão / a / b Multiplicação * a * b Potência ^ a ^ b Instituto Federal do Sul de Minas, câmpus Pouso Alegre

20 Operador de Atribuição
Operação Operador Exemplo Atribuição = resultado = preço * quantidade Instituto Federal do Sul de Minas, câmpus Pouso Alegre

21 Variáveis As variáveis do exemplo anterior são num1, num2 e soma.
Variáveis são espaços em memória usados para armazenar valores. num1, num2 e soma são somente o nome desses espaços. No programa, as variáveis num1 e num2 estão, por exemplo, usando um espaço em memória para armazenar os valores lidos do teclado. Assim, sempre que os nomes num1 e num2 forem mencionados, estarão fazendo referência a esses valores lidos. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

22 Tipos de Variáveis Inteiros Reais
Aplicabilidade: armazenar idade, quantidade, etc Ex.: (números sem casa decimal) Reais Aplicabilidade: preço, altura, etc Ex.: (números com casa decimal) Caracteres (Ex. de uso: nomes, endereços, CPF) Aplicabilidade: nomes, endereço, etc Ex.: “IFSULDEMINAS”, “Rua da Casas, nº 25” (valores literais) Instituto Federal do Sul de Minas, câmpus Pouso Alegre

23 Regras para Nomes de Variáveis
Não se pode utilizar o Ç. Não se pode utilizar letras acentuadas. Não se pode utilizar algarismos de 0 a 9 no inicio de uma variável. Dos caracteres especiais, só pode ser utilizado o sublinhado ou underscore ( _ ). Não pode haver espaço em branco. Não se pode utilizar palavras reservadas, ou seja, palavras que significam comandos (escreva, leia, inteiro, real). Instituto Federal do Sul de Minas, câmpus Pouso Alegre

24 Convenções de Variáveis
É boa prática escolher nomes que significam alguma coisa no contexto do programa e indiquem a função da variável; Recomenda-se que os nomes de variáveis sejam em letras minúsculas, se tiver apenas uma palavra, como idade, ou então, as primeiras letra das demais palavras em maiúsculas, como idadePessoa. A variável sempre deve começar por uma letra. Não se deve misturar letras maiúsculas e minúsculas. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

25 Exercícios O que é uma variável?
Classifique os conteúdos abaixo em [C] caractere, [I] inteiro ou [R] real: a) b) yuri c) d) a e) casa f) g) 10 h) 4.0 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

26 Exercícios Classifique as variáveis como, válida (1), válida e convencional (2), válida e não convencional (3) e inválida (4): a) 3ab b) inteiro c) X**X d) _sim e) _A f) A g) N_a_o h) y_2 i) y-2 j) 00fim k) \meu l) 6y2 m) n n) nota2 o) n4t p) &casa q) numMatricula r)numero1 s)MatriculaAluno Escreva um programa usando o fluxograma que leia duas notas dos alunos e calcule a média dessas notas. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

27 Linearização de Expressões
As linguagens de programação não entendem uma expressão matemática da maneira que nós escrevemos. Portanto é necessário converter uma expressão matemática para uma expressão de computador. Por exemplo, converter “resultado = n1 x n2”: resultado = n1 * n2 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

28 Linearização de Expressões
Para construção de algoritmos que realizam cálculos matemáticos, TODAS expressões aritméticas devem ser linearizadas; Linearizadas = Colocadas em uma únicas linha; Instituto Federal do Sul de Minas, câmpus Pouso Alegre

29 Linearização de Expressões
Numa expressão para computador, não deve haver {} ou []. Somente parênteses. Exemplos: {80-[(5x4+1)÷3]} expressão matemática (80-((5*4+1)/3)) expressão linearizada 80 + (2 x 3) expressão matemática 40 80/40+(2*3) expressão linearizada Instituto Federal do Sul de Minas, câmpus Pouso Alegre

30 Linearização de Expressões
Ordem de precedência dos operadores: 1º () Parênteses 2º ^ Potência 3º */ Multiplicação ou Divisão (o que aparecer primeiro) 4º +- Adição ou Subtração (o que aparecer primeiro) Instituto Federal do Sul de Minas, câmpus Pouso Alegre

31 Exercícios 2 Passe as expressões abaixo para forma computacional:
a) {5 + [3x2 – (4+1)]} b) 5 x { [(4 + 2) x 2] – 3 x 2} c) 80 – 7 x 3 + [(5 – 1) + 8] x 3 d) [5 + (8+4 – 4x2)] 2 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

32 Exercícios Faça um algoritmo que receba dois números e exiba o resultado da sua soma. Escrever um algoritmo que leia o seu salário fixo de um vendedor e o total de vendas efetuadas por ele no mês (em dinheiro). Sabendo que este vendedor ganha 15% de comissão sobre suas vendas efetuadas, informar o salário no final do mês. Ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit. A fórmula de conversão é: F = (9*C+160) / 5, sendo F a temperatura em Fahrenheit e C a temperatura em Celsius. Escrever um algoritmo que leia as notas de três provas que o aluno obteve no semestre. No final informar a sua média (aritmética). Elaborar um algoritmo que efetue a apresentação do valor da conversão em real (R$) de um valor lido em dólar (US$). O algoritmo deverá solicitar o valor da cotação do dólar e também a quantidade de dólares disponíveis com o usuário. Elaborar um algoritmo que leia 4 números, calcule o quadrado de cada número, depois some os quadrados calculados e apresente na tela a soma. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

33 Exercícios Elaborar um algoritmo que leia um valor para X e apresente o resultado da seguinte expressão: * (8 – x) Criar um algoritmo que leia a altura, a largura e o comprimento de um paralelepípedo e calcule seu volume de acordo com a seguinte fórmula: volume = altura * largura * comprimento Faça um programa que receba um valor que é o valor pago, um segundo valor que é o preço do produto e retorne o troco a ser dado. Faça um programa que receba o valor do quilo de um produto e a quantidade de quilos do produto consumida calculando o valor final a ser pago. O preço de um automóvel é calculado pela soma do preço de fabrica com o preço dos impostos (45% do preço de fabrica) e a percentagem do revendedor (28% do preço). Faça um programa que leia o preço de fabrica e mostre na tela o preço final. Fórmula: imposto = precoFabrica * (0,45 + 0,28) preco_final = precoFabrica + imposto Instituto Federal do Sul de Minas, câmpus Pouso Alegre

34 Exercícios Gere um pseudocódigo que aplique um desconto de 30% sobre o valor de um produto, recebido como entrada, e retorne o resultado na saída do programa. Elabore um algoritmo que calcule a área de um círculo. area = 3,14 * raio * raio Escreva um algoritmo que receba o lado de um quadrado e calcule sua área. Escreva um algoritmo que receba os lados (comprimento e altura) de um retângulo e calcule sua área. Escreva um algoritmo que receba o lado ( L ) de um quadrado e calcule a área de um retângulo de base ( 4L ) e altura ( L ). Tendo como dado de entrada a altura de uma pessoa do sexo feminino, construa um algoritmo que calcule seu peso ideal, utilizando a seguinte fórmula: peso_ideal = (62.1 * altura) Escreva um algoritmo que converta um valor em quilômetros para metros. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

35 Estrutura de Condição Instituto Federal do Sul de Minas, câmpus Pouso Alegre

36 Condições Condições serão usadas sempre que precisarmos testar o valor de uma variável. Desta forma podemos definir instruções que serão executadas caso uma condição seja verdadeira e instruções alternativas, caso a condição não seja verdadeira. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

37 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

38 Formas Usadas no Fluxograma
Instituto Federal do Sul de Minas, câmpus Pouso Alegre

39 Fluxograma: Encontrar o Maior Número
Início Escreva o 1º número: a Escreva o 2º número: b a > b Fim Verdadeiro Falso Instituto Federal do Sul de Minas, câmpus Pouso Alegre

40 Algortimo: Encontrar o Maior Número
Algoritmo PROGRAMA_EXEMPLO Variaveis a, b: REAIS; Inicio ESCREVA ("Digite o primeiro numero: "); LEIA ( a ); ESCREVA ("Digite o segundo numero: "); LEIA ( b ); SE ( a > b ) ENTAO ESCREVA (“O maior numero eh: ”, a); SENAO ESCREVA (“O maior numero eh: ”, b); FIM_SE Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

41 Fluxograma: Encontrar a Média entre Duas Notas
Início Escreva o 1º número: a Escreva o 2º número: b media = (a+b) / 2 media media >= 60 Reprovado Aprovado Fim Verdadeiro Falso Instituto Federal do Sul de Minas, câmpus Pouso Alegre

42 Pseudocódigo: Encontrar a Média entre Duas Notas
Algoritmo PROGRAMA_EXEMPLO Variaveis a, b, media: REAIS; Inicio ESCREVA ("Digite a nota da primeira prova:"); LEIA ( a ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( b ); media = (a + b) / 2; ESCREVA (“A MEDIA EH: “, media); SE (media >= 60) ENTAO ESCREVA (“APROVADO!”); SENAO ESCREVA (“REPROVADO!”); FIM_SE Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

43 Operadores Relacionais
Exemplo: SE ( num == 20 ) ENTAO ESCREVA (“O NUMERO INFORMADO EH O NUMERO 20!”); FIM_SE Operações Operadores Exemplo Maior > a > b Maior Igual >= a >= b Menor < a < b Menor Igual <= a <= b Diferente != a != b Igual == a == b Instituto Federal do Sul de Minas, câmpus Pouso Alegre

44 Operadores Lógicos Operadores Exemplo E & a > 60 & b > 40 E E &&
Ou | a > 60 | b > 40 Ou Ou || a > 60 || b > 40 Não ! !(a > 60) Instituto Federal do Sul de Minas, câmpus Pouso Alegre

45 Operadores Lógicos V & V = V V & F = F F & V = F F & F = F false && ?
&: Se uma das condições for falsa, todo o resto será falso. Todas as condições são analisadas. &&: Se uma das condições for falsa, todo o resto será falso. Se a primeira condição for falsa, não analisa o restante. V & V = V V & F = F F & V = F F & F = F V && V = V V && F = F F && V = F F && F = F false && ? sempre false (não avalia o segundo operando). Instituto Federal do Sul de Minas, câmpus Pouso Alegre

46 Operadores Lógicos V | V = V V | F = V F | V = V F | F = F V || V = V
|: Se uma das condições for verdadeira, todo o resto será verdadeiro. Todas as condições são analisadas. ||: Se uma das condições for verdadeira, todo o resto será verdadeiro. Se a primeira condição for verdadeira, não analisa o restante. V | V = V V | F = V F | V = V F | F = F V || V = V V || F = V F || V = V F || F = F true || ? sempre true (não avalia o segundo operando). Instituto Federal do Sul de Minas, câmpus Pouso Alegre

47 Operadores Lógicos Exemplo Operador E:
SE ( ( num > 20 ) && ( num < 30 ) ) ENTAO ESCREVA (“O NUMERO EH MAIOR QUE 20 E MENOR QUE 30!”); FIM_SE Exemplo Operador OU: SE ( ( num > 20 ) || ( num < 30 )) ENTAO ESCREVA (“O NUMERO EH MAIOR QUE 20 OU MENOR QUE 30!”); Instituto Federal do Sul de Minas, câmpus Pouso Alegre

48 Algoritmo: Calcular se a Média das Notas e verificar se o aluno está aprovado.
Algoritmo PROGRAMA_EXEMPLO Variaveis a, b, media: REAIS; Inicio ESCREVA ("Digite a nota da primeira prova:"); LEIA ( a ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( b ); media  (a + b) / 2; ESCREVA (“A MEDIA EH: “, media); SE ( media >= 60 ) ENTAO ESCREVA (“Aprovado!”); SENAO SE ( media >= 30 ) ENTAO ESCREVA (“Recuperação!”); ESCREVA (“Reprovado!”); FIM_SE Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

49 Exercícios Sabendo que A = 3, B = 7 e C = 4, informe se as expressões abaixo são verdadeiras ou falsas: (A + C) > B _______________ B >= (A + 2) _______________ C == (B – A) _______________ (B + A) <= C _______________ (C + A) > B _______________ Instituto Federal do Sul de Minas, câmpus Pouso Alegre

50 Exercícios Sabendo que A = 5, B = 4, C = 3 e D = 6, informe se as expressões abaixo são verdadeiras ou falsas: (A > C) && (C <= D) _______________ (A + B) == (C + D) _______________ (A < B) || (D <= C) _______________ (A < B) || (D >= C) _______________ (C < 10) && (D > A) _______________ (B > C) && (C >= A) _______________ (B > C) || (C >= A) _______________ Instituto Federal do Sul de Minas, câmpus Pouso Alegre

51 Exercícios Escrever um algoritmo que leia as notas de três provas que o aluno realizou no semestre. No final informar a sua média (aritmética) e verificar se a sua média foi superior ou igual a 70, caso positivo a mensagem “Você foi aprovado!” deverá ser escrita na tela, caso contrário a mensagem “Você foi reprovado!” deverá ser escrita na tela. Elaborar um algoritmo que leia um número qualquer e exiba uma mensagem informando se ele é negativo ou positivo. (Para ser positivo o número tem de ser maior que 0). Crie um algoritmo que leia 2 valores numéricos e apresente a diferença do maior pelo menor. Elaborar um algoritmo que leia 3 números e apresente na tela o maior deles. Elaborar um algoritmo que leia 3 valores numéricos e apresente os 3 em ordem decrescente. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

52 Exercícios João Pescador comprou um microcomputador para controlar o rendimento diário de seu trabalho. Toda vez que ele traz um peso de peixes maior que o estabelecido pelo regulamento de pesca do estado de Minas Gerais (50 kg) ele deve pagar um multa de 4 reais por kg excedente. Ajude João, crie o diagrama de blocos e o pseudocódigo para um aplicativo que leia o peso dos peixes e, se houver excesso, calcular a quantidade de quilos excedida e a multa correspondente a essa quantidade em reais. Faça um programa que leia um número inteiro e verifique se ele é par ou ímpar. Para saber se o número é par ou ímpar use a seguinte condição: SE ( num % 2 == 0 ) ENTAO ESCREVA (“O número é par!”); SENAO ESCREVA (“O número é ímpar!”); FIM_SE O operador % devolve o resto da divisão de num por 2. Quando um número é divido por 2 e tem resto 0, este número é par. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

53 Exercícios Faça um programa que leia o número de horas trabalhadas de um empregado e calcule seu salário final. Sabendo que cada hora corresponde a 20 reais e quando o número de horas exceder 50 o valor de cada hora excedida corresponde a 40 reais. Faça um algoritmo que receba um número e mostre uma mensagem caso este número seja maior que 10. Faça um algoritmo que receba um número e diga se este número está no intervalo entre 100 e 200. Escrever um algoritmo que leia o nome e as três notas obtidas por um aluno durante o semestre. Calcular a sua média (aritmética), informar o nome e sua menção aprovado (media >= 7), Reprovado (media <= 5) e Recuperação. Faça um algoritmo que receba a idade de uma pessoa e mostre mensagem informando “maior de idade” e “menor de idade”. Considere a idade a partir de 18 anos como maior de idade. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

54 Exercícios Faça um algoritmo que receba o preço de custo e o preço de venda de um produto. Despois o programa deve mostrar como resultado se houve lucro, prejuízo ou empate para o produto. Faça um algoritmo que leia dois números e identifique se são iguais ou diferentes. Faça um algoritmo que leia um número de 1 a 5 e escreva por extenso. Caso o usuário digite um número que não esteja neste intervalo, exibir mensagem: número inválido. A escola “APRENDER” faz o pagamento de seus professores por hora/aula. Faça um algoritmo que leia o nível do professor e as horas trabalhadas, calcule e exiba o salário do professor. Sabe-se que o valor da hora/aula é de acordo com a tabela seguinte: Professor Nível 1 - R$12,00 por hora/aula Professor Nível 2 - R$17,00 por hora/aula Professor Nível 3 - R$25,00 por hora/aula Instituto Federal do Sul de Minas, câmpus Pouso Alegre

55 Exercícios As maçãs custam R$ 1,30 cada se forem compradas menos de uma dúzia, e R$ 1,00 se forem compradas pelo menos 12 unidades. Escreva um programa que leia o número de maçãs compradas, calcule e escreva o custo total da compra. Ler o ano atual e o ano de nascimento de uma pessoa. Escrever uma mensagem que diga se ela poderá ou não votar na próxima eleição (não é necessário considerar o mês em que a pessoa nasceu). Ler a hora de início e a hora de fim de um jogo de Xadrez (considere apenas horas inteiras, sem os minutos) e calcule a duração do jogo em horas, sabendo-se que o tempo máximo de duração do jogo é de 24 horas e que o jogo pode iniciar em um dia e terminar no dia seguinte. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

56 Estruturas de Repetição
Instituto Federal do Sul de Minas, câmpus Pouso Alegre

57 Estruturas de Repetição
As estruturas de repetição se encarregam de repetir determinado bloco de instruções enquanto uma condição for verdadeira. Essa repetição pode ser chamada de laços e também de loops. Temos basicamente dois tipos de loops: O para e o enquanto. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

58 Laço de Repetição ENQUANTO
O primeiro loop que vamos conhecer é o enquanto. Pois se trata do loop mais simples. Funcionamento: O bloco de código definido no loop enquanto fica em execução enquanto uma determinada condição for verdadeira. Cada vez que o bloco é iniciado, a condição é novamente testada, quando não for mais verdadeira, o loop é encerrado. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

59 Sintaxe do loop ENQUANTO
ALGORITMO LOOP_ENQUANTO VARIAVEIS cont : INTEIRO; INICIO cont = 1; ENQUANTO ( cont < 5 ) FAÇA ESCREVA (“Numero: ”, cont); cont = cont + 1; FIM_ENQUANTO FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

60 Exemplo Loop ENQUANTO ALGORITMO PROGRAMA_MEDIA_COM_LOOP VARIAVEIS media, n1, n2: REAIS; opcao: INTEIRO; INICIO opção = 1; ENQUANTO ( opção == 1 ) FAÇA ESCREVA (“Informe a primeira nota: ”); LEIA ( n1 ); ESCREVA (“Informe a segunda nota: ”); LEIA ( n2 ); media = ( n1 + n2 ) / 2; ESCREVA (“Sua media eh: ”, media); ESCREVA (“Digite 1 se deseja continuar no programa”); LEIA ( opcao ); FIM_ENQUANTO FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

61 Exercício Escrever um algoritmo que leia a idade de 5 pessoas. A cada idade lida, verifique se a pessoa é maior de idade ou menor de idade, apresentando essa informação na tela. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

62 Lista de Exercícios: ENQUANTO
Escrever um algoritmo que leia o sexo de 10 pessoas (1 para masculino e 2 para feminino) e no final informe o total de homens e de mulheres. Faça um algoritmo que leia a quantidade de KW/h consumida por uma pessoa e calcule o valor da conta de luz. Sabe-se que o cálculo da conta de luz segue a tabela abaixo: Acrescente o loop enquanto, de forma que o programa pergunte ao usuário se deseja continuar no programa (para isso deve informar um número 1). Tipo de Cliente Valor do KW/h 1 (Residência) 0,60 2 (Comércio) 0,48 3 (Indústria) 1,29 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

63 Lista de Exercícios: ENQUANTO
Sabendo que o primeiro múltiplo de 5 é o zero e que acrescentando cinco unidades a cada múltiplo você encontra o próximo múltiplo. Crie o algoritmo que apresenta os múltiplos do número 5 na faixa de 0 a 100 usando o loop enquanto. Crie um algoritmo usando o loop enquanto que apresente a tabuada completa do número 3. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

64 Estrutura de Repetição PARA
O loop para trabalha de uma forma um pouco diferente do loop enquanto. Funcionamento: No loop para, uma variável pode ser inicializada com um valor qualquer, e o bloco de código definido neste loop vai ser executado até que a variável atinja um determinado valor. No loop também são definidos passos, ou seja, é um valor que será incrementado na variável cada vez que o loop rodar. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

65 A sintaxe do loop PARA ALGORITMO LOOP_PARA VARIAVEIS cont : INTEIRO; INICIO PARA ( cont = 1; cont <= 5; PASSO 1 ) FAÇA ESCREVA (“IF Sul de Minas”); FIM_PARA FIM A cada execução do loop dá-se o nome de iteração (iteração sem o N mesmo, não confunda com interação.) Instituto Federal do Sul de Minas, câmpus Pouso Alegre

66 Exemplo 1 Loop PARA ALGORITMO ESCREVE_ATE_5 VARIAVEIS cont: INTEIRO; INICIO PARA ( cont = 1; cont <= 5; PASSO 1 ) FAÇA ESCREVA (“Numero: ”, cont); FIM_PARA FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

67 Exemplo 2 Loop PARA ALGORITMO EXIBE_PARES VARIAVEIS cont: INTEIRO; INICIO PARA ( cont = 1; cont <= 10; PASSO 2 ) FAÇA ESCREVA (“Numero: ”, cont); FIM_PARA FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

68 Exemplo 3 Loop PARA ALGORITMO SOMA_NUMEROS_ATE_DEZ VARIAVEIS
cont, soma: INTEIRO; INICIO soma = 0; PARA ( cont = 1; cont <= 10; PASSO 1 ) FAÇA soma = soma + cont; FIM_PARA ESCREVA (“A soma dos numeros eh: ”, soma); FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

69 Exemplo 4 Loop PARA Algoritmo PROGRAMA_MEDIA Variaveis a, b, media: REAIS; cont: INTEIRO; Inicio PARA ( cont = 1; cont <= 5; PASSO 1 ) FAÇA ESCREVA ("Digite a nota da primeira prova:"); LEIA ( a ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( b ); media = (a + b) / 2; ESCREVA (“A MEDIA EH: “, media); SE ( media >= 60 ) ENTAO ESCREVA (“Aprovado!”); SENAO SE ( media >= 30 ) ENTAO ESCREVA (“Recuperação!”); ESCREVA (“Reprovado!”); FIM_SE FIM_PARA Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

70 Exercício Faça o algoritmo para um aplicativo que apresenta todos os números de 0 a 100 em ordem decrescente. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

71 Lista de Exercícios: PARA
Desenvolva um algoritmo que apresente os números de 1 até 100 na tela. Desenvolva um algoritmo que some todos os números de 1 até 100 e apresente o resultado na tela. Sabendo que o primeiro múltiplo de 5 é o zero e que acrescentando cinco unidades a cada múltiplo você encontra o próximo múltiplo. Crie o algoritmo que apresenta os múltiplos do número 5 na faixa de 0 a 100 usando o loop para. Crie um algoritmo usando o loop para que apresente a tabuada completa do número 3. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

72 Estrutura de Repetição FAÇA ENQUANTO
O loop faça... enquanto é uma derivação do loop enquanto. A diferença é que com esse loop o bloco de código é executado uma vez antes da condição ser verificada. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

73 A sintaxe do loop FAÇA... ENQUANTO
ALGORITMO LOOP_FACA_ENQUANTO VARIAVEIS cont: INTEIRO; INICIO cont = 0; FAÇA ESCREVA (“Numero: ”, cont); cont = cont + 1; ENQUANTO ( cont < 5 ) FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

74 Exemplo 1 Loop FAÇA... ENQUANTO
Algoritmo MAIOR_NUMERO Variaveis a, b: REAIS; opcao: INTEIRO; Inicio FAÇA ESCREVA ("Digite o primeiro numero: "); LEIA ( a ); ESCREVA ("Digite o segundo numero: "); LEIA ( b ); SE ( a > b ) ENTAO ESCREVA (“O maior numero eh: ”, a); SENAO ESCREVA (“O maior numero eh: ”, b); FIM_SE ESCREVA (“Para continuar digite o numero 1: "); LEIA (opcao); ENQUANTO(opcao == 1) Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

75 Exemplo 2 Loop FAÇA... ENQUANTO
Algoritmo PROGRAMA_MEDIA Variaveis a, b, media: REAIS; opcao: INTEIRO; Inicio FAÇA ESCREVA ("Digite a nota da primeira prova:"); LEIA ( a ); ESCREVA("Digite a nota da segunda prova:"); LEIA ( b ); media = (a + b) / 2; ESCREVA (“A MEDIA EH: “, media); SE (media >= 60) ENTAO ESCREVA (“APROVADO!”); SENAO ESCREVA (“REPROVADO!”); FIM_SE ESCREVA("Digite o numero 1 para continuar:"); LEIA (opcao); ENQUANTO (opcao == 1) Fim Instituto Federal do Sul de Minas, câmpus Pouso Alegre

76 Exercício Crie um algoritmo usando o loop faça...enquanto que apresente a tabuada completa do número 3. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

77 Operadores Relacionais
Exemplo: ENQUANTO ( num <= 20 ) FAÇA ESCREVA (“O NUMERO INFORMADO EH MENOR QUE 20!”); ESCREVA (“INFORME NOVAMENTE UM NUMERO: ”); LEIA ( NUM ); FIM_ENQUANTO Operações Operadores Exemplo Maior > a > b Maior Igual >= a >= b Menor < a < b Menor Igual <= a <= b Diferente != a != b Igual == a == b Instituto Federal do Sul de Minas, câmpus Pouso Alegre

78 Operadores Lógicos Exemplo Operador E:
ENQUANTO ( ( num > 20 ) && ( num < 30 ) ) FAÇA ESCREVA (“O NUMERO EH MAIOR QUE 20 E MENOR QUE 30!”); ESCREVA (“INFORME NOVAMENTE UM NUMERO: ”); LEIA ( NUM ); FIM_ENQUANTO Exemplo Operador OU: ENQUANTO ( ( num < 20 ) || ( num > 30 ) ) FAÇA ESCREVA (“O NUMERO EH MENOR QUE 20 OU MAIOR QUE 30!”); Instituto Federal do Sul de Minas, câmpus Pouso Alegre

79 Lista de Exercícios: FAÇA ... ENQUANTO
Tendo como dados de entrada a altura e o sexo de uma pessoa (valor 1 para masculino e valor 2 para feminino), construa um algoritmo que calcule seu peso ideal, utilizando as seguintes fórmulas: para homens: (72.7 * h) – 58; para mulheres: (62.1 * h) – 44.7. Acrescente o loop faça.. enquanto, de forma que o programa pergunte ao usuário se deseja continuar no programa (para isso deve informar o número 1). Escrever um algoritmo que leia a idade de “N” pessoas e informe se a pessoa é obrigada ou não a votar. LOOP FAÇA... ENQUANTO. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

80 Lista de Exercícios: FAÇA ... ENQUANTO
Elabore um algoritmo que, dada a idade de um nadador. Classifique-o em uma das seguintes categorias: Infantil A = anos Infantil B = anos Juvenil A = anos Juvenil B = anos Sênior = anos Apresentar mensagem “idade fora da faixa etária” quando for outro ano não contemplado. Acrescente o loop faça... enquanto, de forma que o programa pergunte ao usuário se deseja continuar no programa (para isso deve informar um número 1). Instituto Federal do Sul de Minas, câmpus Pouso Alegre

81 Lista de Exercícios: FAÇA ... ENQUANTO
Elabore um algoritmo que leia um número de entrada que indicará a quantidade de números a serem lidos. Em seguida, leia n números (conforme o valor informado anteriormente) e imprima o triplo de cada um. LOOP FAÇA... ENQUANTO Instituto Federal do Sul de Minas, câmpus Pouso Alegre

82 Exercícios: escolha o loop que melhor se adapta ao exercício
Elaborar um programa que efetue a leitura de valores positivos inteiros até que um valor negativo seja informado. Ao final devem ser apresentados o maior e menor valor informado pelo usuário. Desenvolva um programa que faça a leitura de 5 valores numéricos e apresente o dobro de cada valor lido. Desenvolva um algoritmo que leia N valores e, ao final, apresente a média dos valores lidos. Crie um algoritmo que apresente números de 0 a 1000, passando de 10 em 10. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

83 Exercícios Faça a simulação (ou teste de mesa) do programa a seguir:
ALGORITMO EXERCICIO_10 VARIAVEIS num : INTEIRO; INICIO num = 3; ENQUANTO (num <= 30) FAÇA ESCREVA(num); num = num * 2; FIM_ENQUANTO FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

84 Exercícios: escolha o loop que melhor se adapta ao exercício
Elabore um algoritmo que imprima a tabuada de um número que será informado pelo usuário. Elabore um algoritmo que leia 15 números, e imprima quantos números maiores que 10 foram digitados. Escrever um algoritmo que apresente na tela todos os números pares de 0 a 100. Desenvolva um programa que leia dez números e verifique a cada número digitado, se o valor trata-se de um número positivo, negativo ou se é o número 0. Elaborar um algoritmo que calcule o quadrado do número inserido e somente termine quando for inserido o número 0. Faça um algoritmo que leia 10 números inteiros retornando no final qual foi o maior valor lido. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

85 Exercícios: escolha o loop que melhor se adapta ao exercício
Faça um programa de entrevista de emprego que lê a idade e formação escolar (1 para médio, 2 para técnico e 3 para superior) e determina o cargo a que a pessoa pode se candidatar, de acordo com a tabela: Por exemplo, para se candidatar ao cargo de recepcionista a pessoa deve ter idade maior ou igual a 16 e formação de ensino médio. Caso a idade e a formação não se enquadre em nenhum dos cargos listados, a mensagem “Perfil incompatível” deve ser apresentada na tela. Idade Formação Cargo >=16 Médio Recepcionista >=18 Técnico Desenvolvedor Web >=20 Superior Auxiliar de RH Instituto Federal do Sul de Minas, câmpus Pouso Alegre

86 Exercícios: escolha o loop que melhor se adapta ao exercício
Faça um programa que pegue um número do teclado e calcule a soma de todos os números de 1 até ele. Ex.: o usuário entra 7, o programa vai mostrar 28, pois =28. Insira o código do exercício anterior em um laço enquanto, de forma que você pergunte ao usuário se ele deseja continuar ou sair do programa. Desafio: Usando laços de repetição, desenvolva um algoritmo para escrever os números da série numérica apresentada a seguir. Apresente apenas os valores menores que 300. Série: 0, 1, 3, 7, 15, 31, 63, 127, .?.  Instituto Federal do Sul de Minas, câmpus Pouso Alegre

87 Funções Instituto Federal do Sul de Minas, câmpus Pouso Alegre

88 Funções São utilizadas para dividir um algoritmo maior (mais complexo) em partes menores (mais simples). Quando uma mesma tarefa é realizada várias vezes em um programa, não é necessário duplicar o código, apenas faz-se a chamada da função que contém o código da tarefa. Este processo é conhecido como modularização. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

89 Vantagens Reduzem o tamanho do algoritmo.
Melhoram a legibilidade do algoritmo. Reaproveitamento de código. Facilitam a manutenção. Facilitam a divisão de trabalho. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

90 Sintaxe de uma função FUNÇÃO ANALISA_NUMERO (num : INTEIRO) INICIO SE (num > 0) ENTAO ESCREVA (“Numero Positivo”); SENAO SE (num < 0) ENTAO ESCREVA (“Numero Negativo”); SENAO ESCREVA (“Numero Zero”); FIM_SE FIM_FUNÇÃO Instituto Federal do Sul de Minas, câmpus Pouso Alegre

91 Chamada de função ALGORITMO PROGRAMA_EXEMPLO VARIAVEIS num: INTEIRO;
INICIO ESCREVA (“Informe um numero: ”); LEIA ( num ); ANALISA_NUMERO ( num ); FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

92 Sintaxe de função com retorno
FUNÇÃO SOMA (a, b : REAIS) VARIAVEIS result : REAIS; INICIO result = a + b; RETORNE result; FIM_FUNÇÃO Instituto Federal do Sul de Minas, câmpus Pouso Alegre

93 Chamada de função ALGORITMO PROGRAMA_SOMA VARIAVEIS result, a, b: REAIS; INICIO ESCREVA (“Informe o primeiro numero: ”); LEIA ( a ); ESCREVA (“Informe o segundo numero: ”); LEIA ( b ); result = SOMA ( a, b ); ESCREVA (“A soma eh: ”, result); FIM Instituto Federal do Sul de Minas, câmpus Pouso Alegre

94 Alguns pontos importantes
Na chamada de uma função, os valores que são passados para esta função devem vir entre parênteses após o nome da mesma. Exemplo: ANALISA_NUMERO ( num ); Esses valores passados para a função são chamados de argumentos ou parâmetros. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

95 Alguns pontos importantes
A linha de definição da função deve declarar os valores recebidos e o tipo dos mesmos. Exemplo: FUNÇÃO SOMA (a, b : REAIS) Não há a necessidade das variáveis passadas para uma função terem os mesmos nomes dos argumentos declarados na função. Exemplo de chamada para a função do exemplo anterior: result = SOMA (n1, n2); Mas os parâmetros devem ser do mesmo tipo e estar em mesma quantidade que os valores passados. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

96 Alguns pontos importantes
Analisando os exemplos, podemos observar que uma função pode retornar um valor ou não retornar nenhum valor. Mas uma função nunca retorna mais de um valor. Quando um função retorna um valor, em sua chamada deve haver uma variável recebendo esse valor, por exemplo: result = SOMA ( a, b ); Instituto Federal do Sul de Minas, câmpus Pouso Alegre

97 Alguns pontos importantes
Quando necessário, é possível criar variáveis internas à função, ou seja, que serão acessadas somente internamente no escopo da função. Como é o caso da variável result no exemplo abaixo: FUNÇÃO SOMA (a, b : REAIS) VARIAVEIS result : REAIS; INICIO result = a + b; RETORNE result; FIM_FUNÇÃO Instituto Federal do Sul de Minas, câmpus Pouso Alegre

98 Programa que calcula a média de 5 pessoas usando o loop para e função.
ALGORITMO PROGRAMA_MEDIA VARIAVEIS a, b, result, cont : REAIS; INICIO PARA ( cont = 1; cont <= 5; PASSO 1 ) FAÇA ESCREVA ("Digite a nota da primeira prova:"); LEIA ( a ); ESCREVA ("Digite a nota da segunda prova:"); LEIA ( b ); result = CALCULA_MEDIA ( a, b ); ESCREVA (“A MEDIA EH: “, result); FIM_PARA FIM FUNÇÃO CALCULA_MEDIA ( a, b : REAIS) result, soma : REAIS; soma = a + b; result = soma / 2; RETORNE result; FIM_FUNÇÃO Programa que calcula a média de 5 pessoas usando o loop para e função.

99 Exercício Elaborar um programa que efetue a leitura de um valor numérico. Após lido, este valor será passado para uma função que irá apresentar o quadrado do número e, depois, será passado para uma outra função que irá exibir o cubo do valor. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

100 Exercícios Crie um algoritmo que leia dois números e passe estes dois números como parâmetros para uma função. A função será responsável por calcular e escrever na tela a soma e a subtração desses valores. Crie um algoritmo que leia dois números e passe estes dois números como parâmetros para uma função. A função será responsável por calcular a multiplicação desses valores e retornar o resultado para o escopo principal, que apresentará o resultado na tela.  Faça uma função que recebe por parâmetro o raio de uma esfera e calcula o seu volume (v = 4/3 . π . R3). Desenvolva um programa que leia dez números e a cada número digitado, chame uma função que verifica se o valor trata-se de um número positivo, negativo ou se é o número 0. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

101 Exercícios Faça um algoritmo para um aplicativo que leia a média final de um aluno e passe este valor para uma função. A função recebe a média final do aluno por parâmetro e escreve o seu conceito, conforme a tabela abaixo:  Nota Conceito de 0,0 a 4,9 D de 5,0 a 6,9 C de 7,0 a 8,9 B de 9,0 a 10,0 A Instituto Federal do Sul de Minas, câmpus Pouso Alegre

102 Exercícios Elaborar um algoritmo que leia a medida de 3 possíveis lados de um triângulo e passa esses valores como parâmetros para uma função que irá verificar se é possível formar um triângulo com essas medidas. Para formar um triângulo, as somas dos tamanhos de dois lados tem de ser maior que o tamanho lado oposto. Faça um algoritmo que leia as medidas dos lados de um retângulo. Após ler esses valores, o algoritmo deve chamar uma função que recebe a medida dos dois lados, calcula o perímetro do retângulo e retorna o resultado. Na sequência o algoritmo deve passar esses valores como parâmetros para uma função que calcula a área do retângulo e retorna o resultado. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

103 Exercícios Crie uma função chamada intervalo que recebe dois parâmetros e apresenta na tela todos os números que compreende o intervalo entre os dois valores.  Crie uma função chamada triplo. A função deve receber um valor como argumento e retornar seu triplo. Crie uma função com o nome de maior. Esta função deve receber dois valores e retornar o maior deles. Fazer a função POW (base, expoente) que recebe base e expoente como parâmetros e retorna o valor de base elevado a expoente. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

104 Exercícios Faça a simulação (ou teste de mesa) do programa a seguir:
FUNÇÃO PROCESSA_VALORES (A: INTEIRO) VARIAVEIS r : INTEIRO; INICIO SE ( (a >= 5 ) && ( a != 10) ) ENTAO r = a – 5; SENAO r = a * 2; FIM_SE RETORNA r; FIM_FUNÇÃO Para A igual a Valor Retornado 5 11 10 8 3 Instituto Federal do Sul de Minas, câmpus Pouso Alegre

105 Bibliográfica Bibliografia Básica Bibliografia Complementar

106 Regras Proibido uso de celular em sala de aula.
Acessórios como os fones de ouvido também são proibidos durante a aula. O horário de aula, ou seja, o tempo em sala de aula, está descrito no plano pedagógico do curso, portanto sair mais cedo ou chegar mais tarde, somente a critério do professor.


Carregar ppt "Programação de Computadores"

Apresentações semelhantes


Anúncios Google