Baixe o app para aproveitar ainda mais
Prévia do material em texto
Programação de Computadores Ms. Jacqueline Felix da Silva – jacfel@gmail.com Aula 1- Lógica de Programação Algorítmica 06.10.18 Conteúdo Programático Conceitos de algoritmos - Algoritmos computacionais. - Algoritmos não computacionais. - Prática de criação de algoritmo não computacional. Apresentação da ferramenta Visualg - Descrição da ferramenta. - Descrição dos menus. - Apresentação do ambiente. AULA 1 Inserção de programas simples com o Visualg Apresentação do conceito de variáveis - Criação de variáveis no visualg, com o uso de programas. Conceitos de entrada e saída - Exercícios práticos de entrada e saída. Conceitos de estruturas de seleção - Exercícios de estruturas de seleção. Lógica de Programação É a técnica de desenvolver algoritmos (sequências lógicas) para atingir determinados objetivos dentro de certas regras baseadas na Lógica Matemática e em outras teorias básicas da Ciência da Computação e que depois são adaptados para a Linguagem de Programação utilizada pelo programador para construir seu software. Fonte: https://pt.wikibooks.org/wiki/Introdu%C3%A7%C3%A3o_%C3%A0_programa%C3%A7%C3%A3o/Defini%C3%A7%C3%B5es_sobre_L%C3%B3gica_de_Programa%C3%A7%C3%A3o Fonte: http://www.startupsstars.com/wp-content/uploads/2015/01/user-154199_12801.jpg Linguagens de Programação Quando queremos escrever um software para realizar um determinado tipo de processamento de dados, devemos escrever um programa ou vários interligados. No entanto, para que o computador compreenda e execute esse programa, devemos descrevê-lo usando uma linguagem que o computador e o programador entenda, essa linguagem é chamada de Linguagem de Programação. Fonte: https://d2tycqyw09ngo1.cloudfront.net/be-content/uploads/2017/07/10133040/Primeira-Linguagem-4.png Observação: Linguagens mais comumente utilizadas para iniciar o aprendizado em programação: PASCAL C PYTHON É adequado ao processo de ensino-aprendizagem de algoritmos porque, entre outros motivos, permite ao aluno entender melhor os diferentes tipos de dados, pois ela verifica os tipos das variáveis no momento da compilação, sendo considerada uma linguagem fortemente tipificada (tipada). O uso da linguagem de programação C é adequado ao processo de ensino- aprendizagem de algoritmos porque, entre outros motivos, permite ao aluno entender melhor sobre alocação e endereçamento de memória para as variáveis, pois esse aprendizado necessita do uso de ponteiros. O uso da linguagem de programação Python é adequado ao processo de ensino- aprendizagem de algoritmos porque, entre outros motivos, permite ao aluno conhecer as estruturas de dados e as formas de manipulação, sem precisar implementá-las, permitindo o desenvolvimento de programas mais elaborados, mesmo por alunos com pouco conhecimento de algoritmos. Porque criamos algoritmos? - A linguagem natural não pode ser interpretada por computadores; ALGORITMO - Computadores são projetados para executar tarefas bem definidas a partir de instruções; - Para desenvolver software, utilizamos linguagens de programação. - A linguagem algorítmica é similar a uma linguagem de programação; Logo, aprendendo a criar algoritmos, estamos aptos a programar em qualquer linguagem de programação. Ação – é um acontecimento que, a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e bem definido (FARRER et al., 1989, p. 16) ALGORITMO Algoritmo – é uma sequência de passos que visa atingir um objetivo bem definido (FORBELLONE, 1999). Conceitos Conceitos Um algoritmo não computacional é um algoritmo cuja sequência de passos, a princípio, não pode ser executada por um computador. ALGORITMO “Um algoritmo é uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema”. (TONET; KOLLIVER, s.d.)” Exemplo de um Algoritmo Algoritmo para retirar o carro da garagem: Fonte: https://thumbs.dreamstime.com/b/garagem-com-carro-32491822.jpg 1) Pegar a chave do portão 2) Abrir o portão da garagem 3) Pegar a chave do carro 4) Ligar o carro 5) Retirar o carro da garagem Exemplo de um Algoritmo Algoritmo para retirar o carro da garagem: Mas, e se o carro não funcionar? Exemplo de um Algoritmo Algoritmo para retirar o carro da garagem: Fonte: https://thumbs.dreamstime.com/b/garagem-com-carro-32491822.jpg 1) Pegar a chave do portão 2) Abrir o portão da garagem 3) Pegar a chave do carro 4) Ligar o carro 5) Retirar o carro da garagem 4.1) Se o carro não funcionar, então irei chamar o mecânico para consertar 4.1.1) Volta para o passo 4) Exemplo de um Algoritmo Fazer uma ligação telefônica, usando telefone fixo: http://programebem.blogspot.com/2013/06/algoritmos-nao-computacionais.html 1) Tirar o fone do gancho 2) Ouvir o sinal de linha 3) Teclar o número desejado 4) Se a pessoa do outro lado atender... - Conversar, e aos final da conversa... Desligar. Senão - Desligar, e repetir o roteiro a partir do item 1. Qual seria o conceito de Programa? Conceito de Programa É a implementação de um algoritmo por meio de uma determinada linguagem de programação. É uma sequência de instruções específicas que descrevem uma tarefa a ser realizada por um computador, de maneira lógica. Etapas para o desenvolvimento de um programa: Análise – Estuda-se o enunciado do problema para definir do dados de entrada, o processamento e os dados de saída; Algoritmo – Utiliza-se ferramentas do tipo: descrição narrativa, fluxograma, pseudocódigo ou portugol (português estruturado) para descrever o problema com suas soluções; Codificação – O algoritmo é transformado em códigos da linguagem de programação escolhida para se trabalhar. Conceitos Básicos Entrada Processamento Saída Percepção das impressões sensoriais Processo de pensamento A memória é utilizada para executar processos como: controlar, comparar, combinar, deduzir... Resultado Fonte: https://www.slideshare.net/AndreRocha1/introduo-lgica-de-programao Como a principal finalidade de um computador é processar dados apresentamos a seguir algumas analogias, exemplificando assim os conceitos de entrada (Input), processamento (Processing) e saída de dados (Output). Conceitos Básicos Como a principal finalidade de um computador é processar dados apresentamos a seguir algumas analogias, exemplificando assim os conceitos de entrada (Input), processamento (Processing) e saída de dados (Output). Fonte: https://www.slideshare.net/AndreRocha1/introduo-lgica-de-programao Fonte: http://2.bp.blogspot.com/-V_O2u-sCtyA/VBI0d2SAboI/AAAAAAAAAEQ/-SY1Z-1wOec/s1600/EPS.jpg Entrada Processamento Saída Conceitos Básicos Fonte: https://www.slideshare.net/AndreRocha1/introduo-lgica-de-programao Como a principal finalidade de um computador é processar dados apresentamos a seguir algumas analogias, exemplificando assim os conceitos de entrada (Input), processamento (Processing) e saída de dados (Output). A = 5 B = 9 A > B FALSO Entrada Processamento Saída Como pudemos ver... Algoritmo - É uma sequência finita de instruções, ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Ele é dividido em 3 partes: Entrada, Processamento de dados e Saída de dados INPUT PROCESSING OUTPUT O teste de mesa simula a execução de um algoritmo sem utilizar o computador, empregando apenas "papel e caneta". TESTE DE MESA Cria-se uma coluna para cada variável e uma colunapara saída de dados. Fonte: https://eadfordummies.files.wordpress.com/2009/08/teste_de_mesa.jpg?w=645 Var O teste de mesa simula a execução de um algoritmo sem utilizar o computador, empregando apenas "papel e caneta". Escreva um algoritmo para ler 2 números e apresente o resultado da soma desses 2 números: Exemplo: ENTRADA DE DADOS: num1, num2, soma PROCESSAMENTO DE DADOS: soma: num1 + num2 SAÍDA DE DADOS: o resultado da soma Digite o 1o. número: Digite o 2o. Número: O resultado da soma é: 21 Conceitos: ENTRADA DE DADOS: Quais são os dados necessários? PROCESSAMENTO DE DADOS: Quais são os cálculos necessários? SAÍDA DE DADOS: Quais os resultados desejados? Num1 Num2 Soma 13 8 21 4 9 13 15 17 32 Fonte: https://pt.slideshare.net/henriquecarmona/aula-4-teste-de-mesa TESTE DE MESA TESTE DE MESA Opção 2: Algoritmo "soma2numeros" Var num1, num2:inteiro Inicio escreva("Digite o 1o. numero: ") leia (num1) escreva("Digite o 2o. numero: ") leia (num2) escreva ("O resultado da soma é: ", num1 + num2) Fimalgoritmo Digite o 1o. número: Digite o 2o. Número: O resultado da soma é: Opção 1: Algoritmo "soma2numeros" Var num1, num2, soma: inteiro Inicio escreva(“Digite o 1o. numero: ") leia (num1) escreva("Digite o 2o. numero: ") leia (num2) soma := num1 + num2 escreva ("O resultado da soma é: ", soma) Fimalgoritmo Num1 Num2 Soma 13 8 21 4 9 13 15 17 32 Tipos de Algoritmos Tipos de Algoritmos Descrição Narrativa; Fluxograma; Pseudocódigo, Portugol ou Português Estruturado; SUBJETIVIDADE PRECISÃO Descrição Narrativa Vantagem: não é necessário aprender nenhum conceito novo, pois uma língua natural, neste ponto, já é bem conhecida. Desvantagem: a língua natural abre espaço para várias interpretações, o que posteriormente dificultará a transcrição desse algoritmo para programa. A descrição narrativa consiste em analisar o enunciado do problema e descrever passo a passo, em linguagem natural, a resolução do problema. Exemplo 1: Somar três números Passo 1 – Receber os três números; Passo 2 – Somar os três números; Passo 3 – Mostrar o resultado obtido. Descrição Narrativa Fluxograma Vantagem: é mais fácil compreender a utilização dos elementos gráficos do que de textos. Desvantagem: é necessário aprender o uso de cada símbolo do fluxograma. Além disso, a montagem do fluxograma não facilita a sua transcrição para elaboração de um programa. O fluxograma consiste em analisar o enunciado do problema e escrever passo a passo a resolução do problema, utilizando símbolos gráficos pré- definidos. Fonte: https://img3.stockfresh.com/files/n/nasirkhan/m/77/7150332_stock-photo-3d-confused-man-and-process-flow-chart.jpg Exemplo de Algoritmo Conjunto de símbolos utilizados no Fluxograma Símbolo utilizado para indicar o início e o fim do algoritmo. Permite indicar o sentido do fluxo de dados. Serve exclusivamente para conectar os símbolos ou blocos existentes. Símbolo utilizado para indicar cálculos e atribuições de valores. Símbolo utilizado para representar a entrada de dados. Símbolo utilizado para representar a saída de dados. Símbolo que indica que deve ser tomada uma decisão, indicando a possibilidade de desvios. Exemplo de Algoritmo Fluxograma a) Faça um algoritmo para mostrar o resultado da multiplicação de dois números. Fonte: ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da Programação de Computadores: Algoritmos, Pascal, C/C++ (Padrão ANSI) e JAVA. 3 ed. São Paulo: Pearson Education do Brasil, 2012 (Biblioteca Virtual). Pág.4 Exemplo de Algoritmo Fluxograma b) Faça um algoritmo para mostrar o resultado da divisão de 2 números. Observação: se o segundo número for igual a zero, não poderá ser feita a divisão, pois não existe divisão por zero, logo, deverá aparecer uma mensagem na tela informando "Impossível Dividir". Se o 2º número for diferente de zero, a divisão deverá ser realizada e os resultados apresentados na tela. Fonte: ASCENCIO, CAMPOS, 2012, p. 5 36/34 Pseudocódigo, Portugol ou Português Estruturado Vantagem: migrar um algoritmo para uma linguagem de programação é quase instantâneo, basta para isso ter o conhecimento das palavras reservadas da linguagem de programação adotada. Desvantagem: aprender as regras do pseudocódigo. O pseudocódigo consiste em analisar o enunciado do problema e escrever passo a passo a resolução do problema, por meio de regras previamente definidas. Exemplo de Algoritmo Pseudocódigo, Portugol ou Português Estruturado a) Faça um algoritmo para mostrar o resultado da multiplicação de dois números. ALGORITMO “NomedoAlgoritmo” VAR INICIO (bloco de comandos) FIMALGORITMO Estrutura de um programa ALGORITMO “NomedoAlgoritmo” VAR N1, N2, M : INTEIRO INICIO ESCREVA (“Digite 1o número: ”) LEIA (N1) ESCREVA (“Digite 2o número: ”) LEIA (N2) M := (N1 * N2) ESCREVA (“Multiplicação = ”, M) FIMALGORITMO Faça o teste de mesa Exercícios Propostos: (Português Estruturado) 1) Escreva um algoritmo para ler dois números e apresentar o resultado das 4 operações aritméticas básicas (adição, subtração, multiplicação e divisão). Obs.: O num2 não pode ser igual a zero. Fonte: http://www.canalkids.com.br/tecnologia/invencoes/imagens/introd.gif Resolvendo: ENTRADA DE DADOS: num1 e num2 PROCESSAMENTO DE DADOS: soma num1 + num2 subtracao num1 – num2 multiplicacao num1 * num2 divisao num1 / num2 SAÍDA DE DADOS: soma, subtracao, multiplicacao, divisao 2) Escreva um algoritmo para ler dois números (A e B) e trocar os seus valores. Exibir os valores de A e B após a troca. Fonte: http://www.canalkids.com.br/tecnologia/invencoes/imagens/introd.gif Resolvendo: ENTRADA DE DADOS: A e B PROCESSAMENTO DE DADOS: SAÍDA DE DADOS: valores de A e B trocados AUX A A B B AUX Obs.: Você precisará utilizar uma variável Auxiliar para a resolução deste algoritmo. Faça o teste de mesa Exercícios Propostos: (Português Estruturado) Tipos de Dados: Inteiro; Real; Logico; Caracter(e). Resumindo... Tipos de Dados PORTUGOL EXEMPLOS INTEIRO 0; -2; 1902389 REAL 0.4; -98.3; 67 CARACTER(E) “A”; “A música é: ”; “&” LOGICO VERDADEIRO ou FALSO Ao utilizarmos um algoritmo nos deparamos com diferentes tipos de dados - inteiro: define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais. - real: define variáveis numéricas do tipo real, ou seja, com casas decimais. - caractere: define variáveis do tipo string, ou seja, cadeia de caracteres. - logico: define variáveis do tipo booleano, ou seja, com valor VERDADEIRO ou FALSO. VARIÁVEIS - Variável” é o nome que se dá para uma região da memória onde é armazenado algum dado que está ou estará sendo manipulado pelo programa. - Um programa pode manipular várias variáveis distintas; - Cada variável pode armazenar vários valores, mas apenas um de cada vez; - “Variáveis” são criadas no início da execução do programa e destruídas ao término da sua execução; Observação... - Toda “variável” precisa estar associada a algum “tipo” de dados. - Uma vez atribuído um valor para uma variável, este permanece até que sofra nova modificação pelo programa; - As “variáveis” são referenciadas por intermédio de nomes (identificadores), que devem ser distintos entre si. - Os “tipos” de todas as “variáveis” precisam ser definidos antes de se iniciar a execução do programa. Identificadores: Identificadores: são os nomes das variáveis, dos programas,das constantes, das rotinas, das unidades, etc. As regras básicas para a formação dos identificadores são: - Os caracteres que podem ser utilizados na formação dos identificadores são: os números, as letras maiúsculas ou minúsculas e o caractere underline ( _ ); - O 1º caractere deve ser sempre uma letra; - Não são permitidos espaços em branco e caracteres especiais (@, $, +, -, %, !); - Não é permitido utilizar palavras reservadas nos identificadores, ou seja, palavras que pertencem a uma linguagem de programação. Identificadores: Exemplo de Identificadores VÁLIDOS: A a nota NOTA X5 A35 NOTA1 MATRICULA nota_1 dia IDADE Identificadores: Exemplo de Identificadores INVÁLIDOS: 5b – por começar por número e 12 – por conter espaço em branco x-y – por conter o caractere especial “-” prova 2n – por conter espaço em branco nota (2) - por conter os caracteres especiais “()” caso e por ser palavra reservada nao ou faca repita enquanto ... Operadores Relacionais SÍMBOLO SIGNIFICADO = Igual < > Diferente de > Maior que < Menor que >= Maior ou igual que <= Menor ou igual que Operadores Lógicos E OU NAO Se vários operadores aparecerem em uma expressão, a ordem de execução das operações será dada segundo os critérios abaixo: - Pelo emprego explícito de parênteses; - Pela ordem de precedência existente entre os operadores; - Se existirem operadores de mesma ordem de precedência, a avaliação será feita da esquerda para a direita. Vejamos a ordem de precedência dos operadores (da maior para a menor): Prioridade das Operações Operadores Categoria ( ) Parênteses ** Potenciação *, /, mod ou %, div Multiplicação, Divisão, Resto e Divisão de nºs inteiros + , - Adição, Subtração Precedência Geral de Operadores Aritméticos Operador Lógico (E) O Operador do tipo E é utilizado quando DOIS ou MAIS relacionamentos lógicos de uma determinada condição forem verdadeiros. p q p E q V V V V F F F V F F F F TABELA - VERDADE O resultado será falso, quando pelo menos um valor lógico for falso. Operador Lógico (E) Exemplo: Algoritmo "Testa_Logica_E" Var num: inteiro Inicio escreva("Informe um número: ") leia(num) escreval se (num >=20) e (num <=90) entao escreval ("O número está na faixa de 20 a 90") senao escreval ("O número está fora na faixa de 20 a 90") fimse Fimalgoritmo Operador Lógico (OU) O Operador do tipo OU é utilizado PELO MENOS UM dos relacionamentos lógicos de uma determinada condição for verdadeiro. p q p OU q V V V V F V F V V F F F TABELA - VERDADE O resultado só será falso, quando todos os valores lógicos forem falsos. Operador Lógico (OU) Algoritmo "Testa_Logica_OU" Var nacional: caracter Inicio escreva("Informe sua nacionalidade: ") leia (nacional) escreval se (nacional ="brasileiro") ou (nacional ="português") ou (nacional ="brasileira") ou (nacional ="portuguesa") entao escreval ("Poderá prestar concurso público") senao escreval ("Você não está apto para prestar este concurso público") fimse Fimalgoritmo Exemplo: Operador Lógico (NAO) O Operador do tipo NAO é utilizado quando se necessita estabelecer que uma determinada condição NÃO deve ser verdadeira ou NÃO deve ser falsa. Este operador se caracteriza por inverter o estado lógico de uma condição. TABELA DA VERDADE p NAO p V F F V Operador Lógico (NAO) Algoritmo "Testa_Logica_NAO" Var A,B,C,X: inteiro Inicio escreva ("Entre com um valor para a variável A: ") leia(A) escreva ("Entre com um valor para a variável B: ") leia (B) escreva ("Entre com um valor para a variável X: ") leia(X) se (nao (X>5)) entao C:= (A+B) * X senao C:= (A-B) * X fimse escreval("O resultado da variável C corresponde a: ", C) Fimalgoritmo Exemplo: Algoritmo "Operadores_E_OU_NAO" Var NomeAluno1, NomeAluno2: caractere A, B, C: inteiro Inicio A:= 2 B:= 3 C:= 1 NomeAluno1:=("Maria Nazaré") NomeAluno2:=("MariaNazaré") se (B=A+C) e (NomeAluno1 <> NomeAluno2) entao escreval (NomeAluno1," ",B) fimse se (A=C) ou (NomeAluno1 = NomeAluno2) entao escreval (NomeAluno1) fimse se (nao (A=C)) entao escreval (NomeAluno1) fimse Fimalgoritmo O que aparecerá na tela? Operadores Aritméticos e Funções Pré-definidas (Algoritmo) OPERADOR SIGNIFICADO EXEMPLO TIPO DOS OPERANDOS + Adição a + b Reais e/ou inteiros - Subtração a - b Reais e/ou inteiros * Multiplicação a * b Reais e/ou inteiros / Divisão Real a / b Reais e/ou inteiros Div Divisão Inteira a Div b Inteiros Mod ou % Resto Div. Int. a Mod b a % b Inteiros Exp Exponenciação exp(n,m) Reais e/ou inteiros Raiz Quadrada n^(1/2) ou raizq(n) Inteiro positivo Raiz Cúbica n^(1/3) Inteiro positivo Quadrado de número n^2 ou quad(n) Algoritmo "exemplo_constante" const n1= 5 n2= 3 var x,y:inteiro comp:logico Inicio escreva("Digite um múltiplo de ",n1, ": ") leia(x) escreva("Digite outro múltiplo de ", n2, ": ") leia(y) comp:= x > y {Vai comparar se x é maior que y e apresentar o resultado} escreva(x, " > ", y, " = ", comp) pausa //Para sair da pausa... clicar em CTRL + F2 Fimalgoritmo Constantes Tem-se como definição de constante tudo aquilo que é fixo ou estável. Exemplo de uso de Constantes Comentários no programa Os comentários são excelentes instrumentos de documentação e devem sempre estar no seguinte formato: Exemplo de comentário no VisualG: //JUROS := (11/100); // está recebendo 11% de juros – é um valor fixo Obs.: Tudo que aparecer após o símbolo // Será inibido na linha de comando. Finalidade: Ao inibir uma linha de comando, é possível testar o comando, sem precisar ficar apagando e redigitando. Permite testar várias possibilidades e anular aquela que não corresponder ao desejo do programador. Estrutura de Seleção Um comando só será executado se a condição for verdadeira. Uma condição é uma comparação entre dois valores possíveis, verdadeiro ou falso. Os comandos só serão executados SE a condição for verificada. A execução ou não de uma determinada sequência de comandos e chamada de estrutura de seleção, estrutura de decisão ou comando de seleção. SE (condição) ENTAO comando1 comando2 comando3 FIMSE Estrutura Condicional Simples Estrutura Condicional Composta SE (condição) ENTAO comando1 SENAO comando2 FIMSE Ex1.: Ex2.: SE (condição) ENTAO comando1 comando2 SENAO comando1 comando2 FIMSE SE (condição) ENTAO comando1 FIMSE Ex1.: Ex2.: Ex3.: SE (condição) ENTAO comando1 SENAO SE (condição)ENTAO comando1 comando2 SENAO comando1 FIMSE FIMSE (Encadeada) Estrutura de Seleção FAÇA UM PROGRAMA QUE RECEBA DOIS NÚMEROS E MOSTRE O MAIOR: ALGORITMO “MAIOR” VAR N1, N2 INTEIRO INICIO ESCREVA (“Digite 1º. Num: “) LEIA (N1) ESCREVA (“Digite 2º. Num: “) LEIA (N2) SE N1>N2 ENTAO ESCREVA (“O maior nº é: “, N1) FIMSE SE N2>N1 ENTAO ESCREVA (“O maior nº é: “, N2) FIMSE SE N1=N2 ENTAO ESCREVA (“Os números são iguais”) FIMSE FIMALGORITMO Estrutura Condicional Simples Sabendo que o programa ao lado trata-se de uma Estrutura Condicional Simples, refaça esse programa transformando-o em uma Estrutura Condicional Composta. Desafio: Estrutura de Seleção - Múltipla Escolha Com a estrutura ESCOLHA-CASO, a decisão é baseada na escolha em uma lista de ações, sendo dada previamente uma condição para seleção (seletor - expressões ou conteúdos de variáveis), tornando-o bem legível e estruturado,evitando o uso do SE de forma repetida. O comando ESCOLHA-CASO traz junto com ele uma restrição, onde, o seletor tem que ser do tipo caracter, inteiro ou logico. A sintaxe do comando ESCOLHA-CASO é a seguinte: ESCOLHA <codigo> CASO <codigo1> <comando1> CASO <codigo2> <comando2> ... OUTROCASO <comando3> FIMESCOLHA ESCOLHA - CASO Portugol Algoritmo "Modelo_Sapato" var modelo:caracter Inicio {********************MENU DE OPÇÕES****************** } Escreval ("Entre com o modelo do calçado: ") Escreval ("1 - Mocassim") Escreval ("2 - Rasteirinha") Escreval ("3 - Baby") Escreval Escreva ("Digite o número que corresponde à sua escolha: ") Leia(modelo) Escreval Escolha modelo caso ("1") Escreval ("O modelo do calçado é masculino.") caso ("2") Escreval ("O modelo do calçado é feminino.") caso ("3") Escreval ("O modelo do calçado é infantil.") outrocaso Escreval ('Essa opção não existe') FimEscolha FimAlgoritmo Algoritmo "Codigo_e_Categoria" var idade, Codigo: Inteiro inicio Escreval ("TABELA DE CÓDIGO DE NADADOR") Escreval ("Código------Categoria") Escreval (" 1001-------Infantil") Escreval (" 1002-------Juvenil") Escreval (" 1003-------Junior") Escreval (" 1004-------Profissional") Escreval Escreva ("Digite sua idade: ") Leia (idade) Escreval Escolha idade Caso 10,11,12,13 Escreval ("Seu código é 1001 e sua categoria é Infantil") Caso 14,15,16,17 Escreval ("Seu código é 1002 e sua categoria é Juvenil") Caso 18,19,20,21 Escreval ("Seu código é 1003 e sua categoria é Junior") Caso 22,23,24,25,26,27,28,29,30,31,32,33,34,35 Escreval ("Seu código é 1004 e sua categoria é Profissional") OutroCaso Escreval ("Idade fora da faixa etária") fimescolha FimAlgoritmo Portugol Exercícios Propostos: 1) Faça um programa que receba quatro números inteiros, calcule e mostre a soma desses números. 2) Faça um programa que receba três notas, calcule e mostre a média aritmética entre elas. 3) Faça um programa que receba três notas, calcule e seus respectivos pesos, calcule e mostre a média ponderada dessas notas. Fonte: http://www.canalkids.com.br/tecnologia/invencoes/imagens/introd.gif Escrever no Português Estruturado 4) Faça um programa que receba 2 números inteiros, calcule e mostre na tela os seguintes resultados: a) Quociente de uma divisão b) Resto de uma divisão c) Exponenciação de num1 elevado a num2; 5) Faça um programa que receba um número inteiro fornecido pelo usuário, e se este número for positivo, calcule a raiz quadrada do mesmo. Caso o número seja negativo, escreva na tela número inválido; 6) Desenvolver um programa que efetue o salário líquido de um profissional que trabalhe por hora. Para isso considere: valor de hora trabalhada, número de horas trabalhadas por mês e percentual de 11% desconto (INSS). O programa deverá fazer os seguintes procedimentos: a) Ler a variável HT (horas trabalhadas no mês); b) Ler a variável VH (valor hora trabalhada) c) Uma constante receberá o PD (percentual de desconto) equivalente a 11% d) Calcular o salário bruto (SB); e) Calcular o TD (total de desconto) aplicado ao salário; f) Calcular o SL (Salário Líquido); g) Apresentar na tela os valores: salário bruto (SB) e salário líquido (SL) , e os descontos efetuados (TD). 8) Faça um programa que: a) Informe se deseja a raiz quadrada ou cúbica de um número b) Se desejar raiz quadrada resolva a raiz quadrada Senão resolva a raiz cúbica. Obs.: Só calcular a raiz se for um número positivo, caso contrário, escrever na tela que o número é inválido; 7) Faça um programa que receba o custo de um espetáculo teatral e o preço do convite desse espetáculo. Este programa deverá calcular e mostrar a quantidade de convites que devem ser vendidos para que pelo menos o custo do espetáculo seja alcançado. Escrever no Português Estruturado Para revisar os conteúdos: Tipos de Algoritmos https://www.youtube.com/watch?v=1aFgQ-w3hRo Fonte: http://www.canalkids.com.br/tecnologia/invencoes/imagens/introd.gif Teste de Mesa https://pt.slideshare.net/henriquecarmona/aula-4-teste-de-mesa https://www.youtube.com/watch?v=2KWiOpGDlKc Conectivos Lógicos: E , OU https://www.youtube.com/watch?v=VzefcnQBuQk Estrutura de seleção: Simples, Composta e Encadeada Estruturas de Seleção (Múltipla Escolha): Caso – Outro Caso https://www.youtube.com/watch?v=5FNebG7sBP4 Para revisar os conteúdos: ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da Programação de Computadores: Algoritmos, Pascal, C/C++ (Padrão ANSI) e JAVA. 3 ed. São Paulo: Pearson Education do Brasil, 2012 (Biblioteca Virtual). Fonte: http://www.canalkids.com.br/tecnologia/invencoes/imagens/introd.gif (páginas 1 – 10) Sugestão: Instalar Aplicativo para os nossos estudos: No celular No PC http://visualg3.com.br/VisualG: https://www.schoolofnet.com/curso-logica-de- programacao/?gclid=CjwKCAjwhqXbBRAREiwAucoo- 08XZMMq77cXRPtxNj0230pRC8Y56jcX79m- hXG_iQhC_Gw7UnXMfRoCLAUQAvD_BwE Reforço do Aprendizado Contato: jacfel@gmail.com Bons estudos! Fonte: http://academia.unse.edu.ar/nic3b1o-con-pc-gif1.gif
Compartilhar