Baixe o app para aproveitar ainda mais
Prévia do material em texto
Estácio de Sá Professor Rogério Disciplina: Lógica de Programação (algoritmos) Curso de Engenharia Civil , Engenharia de Produção, Automação AULA 01: Conceitos Básicos de Programação: Lógica de Programação e Algoritmos. Conceitos Básicos O homem sempre procurou criar máquinas que o auxiliassem em seu trabalho, diminuindo esforço e economizando tempo. Dentre essas máquinas, o computador vem se mostrando uma das mais versáteis, rápidas e seguras. O computador pode auxiliar em qualquer tarefa. É muito trabalhador, possui muita energia, mas não tem iniciativa, nenhuma independência, não é criativo nem inteligente, por isso precisa receber instruções nos mínimos detalhes. A finalidade de um computador é receber, manipular e armazenar dados. Visto somente como um gabinete composto de circuitos eletrônicos, cabos e fontes de alimentação, certamente ele parece não ter nenhuma utilidade. O computador só consegue armazenar dados em discos, imprimir relatórios, gerar gráficos, realizar cálculos, entre outras funções, por meio de programas. Portanto, a finalidade do computador é realizar a tarefa de processamento de dados, isto é receber dados por um dispositivo de entrada (por exemplo, o teclado), realizar operações com esses dados e gerar uma resposta que será expressa em um dispositivo de saída (por exemplo, o monitor de vídeo). Um computador possui duas partes distintas que trabalham juntas: o hardware (composto pelas partes físicas) e o software (composto pelos programas). Quando se desenvolve um software para realizar determinado tipo de processamento de dados, deve-se escrever um programa ou vários programas interligados. No entanto, para que o computador compreenda e execute esse programa, devemos escrevê-lo usando uma linguagem que tanto o computador quanto o criador do software entendam. Essa linguagem é chamada de linguagem de programação. As etapas para o desenvolvimento de um programa são: Análise: nesta estuda-se o enunciado do problema para definir os dados de entrada, o processamento e os dados de saída. Algoritmo: ferramentas (descrição narrativa, fluxograma ou português estruturado) que são utilizados 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. O que é Lógica. O homem por si só é um ser lógico, e essa lógica é um dom que não se aprende de uma hora para outra. Resulta, em geral, de experiências do dia a dia. Usamos a lógica quando executamos ordenadamente uma série de rotinas predeterminadas, tais como: levantar da cama, pegar chinelos, trocar uma lâmpada e etc. Conceito de lógica: conjunto de leis, princípios ou métodos que determinam um raciocínio coerente, induzindo a uma solução prática e eficaz do problema. Exercício 1: Qual a sequência lógica a seguir: a) 1, 4, 9, 16, 25, ______ b) 1 1 2 3 5 8 13 ______ c) U D T Q C S S ____ _____ Algoritmos Lógica não computacional Algoritmos é uma sequência de passos que visa atingir um objetivo bem definido. Algoritmo é a descrição de uma sequência de passos que deve ser seguida para a realização de uma tarefa. Algoritmo é uma sequência finita de instruções ou operações cuja execução, tem tempo finito, resolve um problema computacional. Analisando as definições anteriores, pode-se perceber que executamos no dia-a-dia vários algoritmos: Algoritmo 1: Trocar uma Lâmpada Passo 1 - Pegar a lâmpada nova. Passo 2 - Pegar a escada. Passo 3 - Posicionar a escada embaixo da lâmpada queimada. Passo 4 - Subir na escada com a lâmpada nova na mão. Passo 5 - Retirar a lâmpada queimada. Passo 6 - Colocar a lâmpada nova. Passo 7 - Descer da escada. Passo 8 - Testar o interruptor. Passo 9 - Guardar a escada. Passo 10 - Jogar a lâmpada velha no lixo Importante: Essa atividade pode ser realizada de uma maneira diferente, pois às vezes um problema pode ser resolvido de diversas maneiras, porém, gerando a mesma resposta, ou seja, podem existir vários algoritmos para solucionar o mesmo problema. Exercício 02: Algoritmo 2 - Um homem precisa atravessar o rio com um barco que possui capacidade apenas para transportar ele mesmo e mais uma de suas três cargas, que são: um lobo, um bode e um maço de alfafa. Aula 1: Exercícios Complementares Exercício 3) Três irmãos receberam um pacote de formato diferente, contendo uma camisa e um cheque. Partindo das premissas abaixo, pode-se descobrir o nome dos três irmãos, o formato do pacote, a cor da camisa e o valor do cheque que cada um ganhou? Premissas O cheque de R$ 350,00 estava no mesmo pacote da camisa roxa. O cheque de R$ 400,00 estava no pacote oval. O cheque de Bento era no valor de R$ 250,00. A camisa de Benedito era Rosa. A camisa abóbora não estava no pacote redondo. Antônio não desembrulhou o pacote quadrado. Resposta: Nome Pacote Camisa Cheque Exercício 4) Retire três palitos da figura A e obtenha apenas três quadrados. Qual será o próximo símbolo da sequência da figura B? Reposicione dois palitos na figura C e obtenha uma figura com cinco quadrados iguais. A) B) C) Exercício 5) Observe as multiplicações a seguir: 12.345.679 × 18 = 222.222.222 12.345.679 × 27 = 333.333.333 ... ... 12.345.679 × 54 = 666.666.666 Para obter 999.999.999 devemos multiplicar 12.345.679 por quanto? Exercício 6) Qual o valor da pedra que deve ser colocada em cima de todas estas para completar a sequência abaixo? 5) Desenhe 5 círculos. Nos círculos 1 e 2 coloque uma moeda de R$ 0,05 e nos círculos 4 e 5 uma moeda de R$ 0,10. Objetivo: Desenvolva um algoritmo que troque as moedas de lugar Regras: Cada moeda só avança em uma direção e só um círculo. Se encontrar outra moeda, poderá saltá-la desde que o próximo círculo esteja desocupado. � Aula 02: Programação utilizando a linguagem C. Histórico da Linguagem C C é uma das linguagens de programação mais populares e existem poucos Sistemas Operacionais para as quais não existem compiladores para C. A linguagem C tem influenciado muitas outras linguagens de programação mais notavelmente C++, que originalmente começou como uma extensão para a linguagem C. Dados são os fatos em sua forma primária ou é o registro de um evento. Exemplo: nome de um empregado; número de horas trabalhadas em uma semana; número de peças em estoque; pedidos de venda. Tipos de Dados: Os dados necessários para a execução de um programa deverão ser identificados em um dos tipos abaixo: Exemplo: João tem 25 anos. (INTEIRO) Esta classe tem 40 alunos. (INTEIRO) Ana tirou 9.5 em matemática. (REAL) A altura de Pedro é 1.85m (REAL) A placa daquele carro é “BPP 6745”. (CARACTERE) O nome dela é : “Maria”. (CARACTERE) int: O tipo de dado int (inteiro) serve para armazenar valores numéricos inteiros. char: serve para armazenar caracteres. float: O tipo de dado float serve para armazenar números de ponto flutuante, ou seja, com casas decimais. double: O tipo de dado double serve para armazenar números de ponto flutuante de dupla precisão. Variáveis: Nos algoritmos destinados a resolver um problema no computador, cada variável corresponde a uma posição de memória, cujo conteúdo pode variar ao longo do tempo durante a execução de um programa. Embora possa assumir diferentes valores, ela só pode armazenar um valor a cada instante. Identificador: Toda variável tem um nome que é formado por um ou mais caracteres, sendo o primeiro obrigatoriamente uma letra e os caracteres seguintes, letras ou dígitos, não sendo permitido o uso de símbolos especiais, exceto o _ (underline). Não são aceitos palavras reservadas da linguagem. Exemplo: nomes válidos: a, a1,nome_funcionario. Case sensitive é um termo da língua inglesa que significa sensível ao tamanho, ou sensível a maiúsculas e minúsculas, ele é usado para indicar que há diferenças entre letras com caixa alta e com caixa normal. Estrutura Sequencial em C-C++ #include <nome da biblioteca> main( ) { Bloco de comandos; } Bibliotecas As Bibliotecas são arquivos contendo várias funções que podem ser incorporadas aos programas escritos em C/C++. A diretiva #include faz com o texto contido na biblioteca especificada seja inserido no programa. Há várias bibliotecas que podem ser inseridas em um programa escrito na linguagem C, entre elas estão: iostream.h, stdio.h, conio.h e math.h. É importante salientar que a linguagem C/C++ é sensível a letras maiúsculas e minúsculas, ou seja, considera que letras maiúsculas são diferentes de minúsculas (por exemplo, a é diferente de A). Sendo assim, todos os comandos devem, obrigatoriamente, ser escritos com letras minúsculas. Comando de atribuição. Utilizar o igual (=). Exemplo: a = 10; Declaração de variáveis. As variáveis são declaradas após especificarmos os seus tipos, de acordo com os exemplos abaixo: int a; // int => inteiro float b; // float => real char opcao; // char => um caracter char nome[50] // char ... [50] => conjunto de caracteres. Comando de Saída de dados em C/C++. O comando de saída, cout, é utilizado para mostrar dados no monitor do computador. cout: mostra uma mensagem na tela ou o valor de uma variável. Exemplo: cout << “mensagem”; // mostra mensagem cout << “valor de uma variável : “ << delta; // mostra mensagem e depois o valor de delta. Comando de entrada de dados. O comando de entrada é utilizado para receber dados digitados pelo usuário. Os dados recebidos são armazenados em variáveis. São os comandos de entrada: cin >> e o gets. Exemplos: int a, b; char nome[30]; float cheque; char opcao; cout << “Entre com o valor de a : “; cin >> a; cout << “Entre com o valor de b: “ cin >> b”; cout << “Cheque : “ ; cin >> cheque; cout << “nome : “; gets (nome); cout <<“Opção : “; cin >> opcao; Exercício 7: Desenvolva na linguagem LINGUAGEM C/C++ o seguinte algoritmo: Exiba na tela do computador a mensagem: Aprendendo programação!!!. Na disciplina de Lógica Construção em Linguagem C #include <iostream.h> main(){ cout << "Aprendendo programação \n"; cout << "Na disciplina de Lógica \n"; system("pause"); } salvar o arquivo: exemplo01.cpp OPERADORES ARITMÉTICOS NA LINGUAGEM C/c++ Os operadores aritméticos utilizados na linguagem C/C++ são: +, -, *, / e % (resto da divisão). Prioridades ou precedência de operadores Prioridade mais alta: * / % Prioridade mais baixa: + - Exemplos: 10 + 6 / 2 *20 = 70 10 % 3 = 1 4 + 5 * 3= 19 (4 + 5) * 3= 27 Obs : Parêntese garantem maior prioridade; Ex: para a expressão 2*(4+2) o resultado será 12 para a expressão 2*4+2 o resultado será 10 Funções: pow (base, potencia) => Exemplo =>42 => pow (4,2) = 16 25½ = pow (25, 0.5) = 5 pow (3,2) = 9 pow (9, 0.5) = 3 pow (5, 3 ) = 125 pow (27, 0.33333) = 2.99996704181 Exercício 8: Resolva as expressões determinando o valor de x. x = 5 + 3 * 2 + 8 b) x = ( 5 + 3 * 2) % 4 c) x = 64 / pow (4,2) Exercício 9: Resolva na Linguagem C/C++ as expressões abaixo. #include <iostream.h> #include <math.h> main(){ int x1, x2, x3; x1 = 5 + 3 * 2 + 8; cout << "x1 vale:"<< x1 << "\n"; x2 = ( 5 + 3 * 2) % 4; cout << "x2 vale:"<< x2 << "\n"; x3 = 64 / pow (4,2); cout << "x3 vale: "<< x3 <<"\n"; system("PAUSE"); } Aula 2: Exercícios complementares Método para a construção de Algoritmos Ler atentamente o problema a ser resolvido Definir os dados de entrada Definir o processamento, ou seja, quais os cálculos a serem realizados Definir os dados de saída Construir o algoritmo Testa o algoritmo utilizando simulações Exercício 10) Calcular os juros simples de uma aplicação financeira. Juros = capital * taxa/100 *periodo ANÁLISE ALGORITMO CODIFICAÇÃO TESTE //entrada capital taxa período // processamento Calcular juros //saída juros Exercício 11) Calcular o valor de uma viagem de uma cidade a outra. ANÁLISE ALGORITMO CODIFICAÇÃO TESTE //entrada distancia valorLitro desempenho pedagio //processamento Calcular valorTotal //saída valorTotal � Aula 03: Operadores Relacionais, Lógicos e Linearização Operadores Relacionais: São necessárias para fazer algum tipo de comparação. O resultado é sempre um valor lógico verdadeiro (true) ou falso (false). == (igualdade) , >, <, >=, <=, != (diferente) Exemplo: 10 > 7 => 1 (verdadeiro ou true) 7 != 7 => 0 (falso ou false) (30 % 7) != 6 => 1 (verdadeiro ou true) Importante: um sinal de = significa atribuição Exercício 12) Qual o valor lógico das expressões abaixo. (2+5) > 4 b) 3 != 3 c) (2*5) > 3 d) pow (3,2) <= 16 (Exercício 13) Resolva na Linguagem C/C++ as expressões acima. #include <iostream.h> main(){ int x1, x2; x1 = (2+5) > 4; cout << "x1: "<<x1 << "\n"; x2 = 3 != 3; cout << "x2: "<<x2 << "\n"; system("PAUSE"); } Operadores Lógicos: São utilizados para combinar duas ou mais expressões. Retornam verdadeiro (true) ou falso (false). &&: e lógico | | : ou lógico !: negação Complete a tabela verdade abaixo: Proposição A Proposiçao B Operador e (A && B) Operador ou (A || B) Operador não (! A) Verdadeiro verdadeiro V v F Verdadeiro Falso F v F Falso verdadeiro F V V Falso Falso F F v Exemplo: (( 4 > 5) && (2 != 4)) ( F && V ( F (( 4 > 5) || (2 != 4)) ( F || V ( V Linearização de Comandos: Todas as expressões matemáticas devem ser colocadas em uma linha, devendo ser feito o mapeamento dos operadores (precedência). a) ( b) ( c) ( d) ( Exercício 14 : Calcular o valor de x1 e x2 em uma equação do 2º grau (considere que o valor de delta é positivo). ANÁLISE ALGORITMO CODIFICAÇÃO TESTE //entrada de dados a b c // processamento Calcula delta Calcula x1 Calcula x2 // Saída x1 x2 Aula 4: Fluxograma e Exercícios de revisão Fluxograma Consiste em analisar o enunciado do problema e escrever, utilizando símbolos gráficos predefinidos, a solução. Indica o início e fim da solução Indica que uma entrada de dados (em uma variável). Indica o qual o sentido do fluxo de instruções Indica saída de dados, normalmente em um monitor. Indica um processo, normalmente uma atribuição de valores a uma variávei Indica decisão. Exercício 15) Calcular o valor do perímetro de um retângulo. Perimetro = 2*comprimento + 2*largura ANÁLISE ALGORITMO CODIFICAÇÃO TESTE //entrada comprimento largura // processamento Calcular o perimetro // saída perimentro Exercício 16) Calcule a área e o perímetro de um quadrado.(fórmulas: area = lado*lado e perímetro = 4*lado). ANÁLISE ALGORITMO CODIFICAÇÃO TESTE // entrada lado //processamento Calcular a area Calcular o perímetro // saída area perimetro Exercício 16) Dado o valor em quilômetros, converte esse valor em metros. ANÁLISE ALGORITMO CODIFICAÇÃO TESTE //entrada quilometros //processamento Converter para metros //saída metros Exercício 17) Uma empresa paga o salário bruto dos funcionários e deduz 5% de imposto. Qual o salário líquido e o valor do desconto para cada funcionário. Tela: Salário Bruto (R$): 1000.00 Imposto de Renda: R$ 50.00 Salário Líquidio: R$ 950.00 ANÁLISE ALGORITMO CODIFICAÇÃO TESTE //entrada salarioBruto //processamento Calcular imposto Calcular salarioLiquido // saída imposto salarioLiquido Exercício 18) Calcule o volume de uma esfera. (fórmula: ) ANÁLISE ALGORITMO CODIFICAÇÃO TESTE Teste (Tela): entrada de dados: Valor do raio:3 raio Volume vale: 113.04 processamento: cálculo do volume saída de dados: volume � Exercício 19) Calcule a média final (média ponderada) da disciplina de lógica de programação, de acordo com a seguinte fórmula: ) ANÁLISE ALGORITMO CODIFICAÇÃO TESTE Teste (Tela): entrada de dados nota da prova:8 nota da prova nota do trabalho:6 nota do trabalho nota final: 7.6 processamento calcular nota final saída nota final � Aula 5: Exercícios para desenvolver em Classe Exercícios: Desenvolva a codificação de acordo (na linguagem C) de acordo com o fluxograma. Exercício 20) Um funcionário recebe um salário fixo mais 4% de comissão sobre vendas. Faça um programa que receba o salário fixo do funcionário e o valor de suas vendas, calcule e mostre a comissão e seu salário final. ANÁLISE ALGORITMO CODIFICAÇÃO TESTE Exercício 21) Faça um programa que receba o peso de uma pessoa, calcule e mostre: O novo peso, se a pessoa engordar 15% sobre o peso digitado; O novo peso, se a pessoa emagrecer 20% sobre o peso digitado. ANÁLISE ALGORITMO CODIFICAÇÃO TESTE Exercício: Vamos fazer os programas na linguagem C, sem algoritmo (fluxograma). Exercício 22) Faça um programa que calcule e mostre a área de um losango. Sabendo-se que Area = (diagonal maior * diagonal menor) / 2 Exercício 23) Faça um programa que receba o valor do salário mínimo e o valor do salário de um funcionário, calcule e mostre a quantidade de salários mínimos que esse funcionário ganha. Exercício 24) Faça um programa que receba o ano do nascimento de uma pessoa e o ano atual, calcule e mostre: A idade da pessoa em anos; A idade da pessoa em meses; A idade da pessoa em dias. � Aula 6: ESTRUTURAS CONDICIONAIS (IF..ELSE) Comando if – else Comandos condicionais permitem que executemos blocos de comandos apenas em determinadas situações. Até o momento, nossos programas executavam todas as instruções. Imagine esta situação, lemos dois números do teclado e queremos mostrar apenas o maior deles. O que podemos fazer até o momento é mostrar nenhum, algum (fixo) dos dois ou mostrar os dois, não podemos escolher, durante a execução do programa, qual mostrar. É justamente para este tipo de situação que usamos o comando if. Condicional Simples if (condição) { comando1; comando2; ... } Estrutura Condicional Composta if (condição) { comando1; } else { comando2; } Estrutura Condicional Aninhadas if (condição) { comando1; } else if (condição) { comando2; } else if (condição) { comando3; } else { comando4; } Exemplo. Desenvolva um programa que consulte uma pessoa sobre o seu dinheiro disponível e se ela tem R$ 10,00 ou mais, ela irá ao cinema, se tiver menos, ela ficará em casa. Teste 1 : Qual e o dinheiro disponível: 5 Vou ficar em casa!! Teste 2: Qual e o dinheiro disponível: 15 Vou ao cinema!! Algoritmos Exercício 24. Um vendedor possui um salário fixo mensal. O vendedor ganha comissão de acordo com as suas vendas. Se vender até R$ 50.000,00 ganha 5% de comissão sobre as vendas, caso contrário, ganha 8% de comissão sobre as vendas mensais. Calcule o salário final desse vendedor. Exercício 25. Desenvolva um algoritmo que leia um número inteiro e exiba na tela se o mesmo é par ou impar. O operador % tem como função retornar o resto inteiro de uma divisão. Teste 1: Qual e o numero: 5 O número 5 é Impar. Teste 2: Qual e o numero: 10 O número 10 é Par. Algoritmo Codificação Exercício 26) Desenvolva um programa na linguagem C que leia duas provas bimestrais, calcule a média aritmética simples e exiba na tela: a) “aprovado”: se o aluno obteve média >= 6.0. b) “reprovado”: se o aluno obteve média < 6.0. Exercício 27. Elabore um algoritmo que leia a idade de um nadador e exiba na tela a categoria que ele pertence: Se a idade é menor que 13 anos = infantil Se a idade é maior ou igual a 13 e a idade é menor que 21 = juvenil. Se a idade é maior que 21 = senior � Exercício 28) O índice de Massa Corpórea (IMC) é uma fórmula que indica que se um adulto está acima do peso, se está obeso ou abaixo do peso ideal considerado saudável. A fórmula para calcular o IMC é: IMC = peso / (altura)2 Elabore um algoritmo que mostre a condição de um indivíduo segundo o IMC: Condição IMC em Adultos Abaixo do peso Abaixo de 18.5 No peso normal Entre 18.5 (inclusive) e 25 Acima do peso Entre 25 (inclusive) e 30 Obeso Acima ou igual a 30 � Aula 7. Exercícios para desenvolvimento em sala de aula Exercício 29) Uma companhia de seguros classifica seus segurados em três categorias de grupo de risco baseadas na idade. Somente pessoas com pelo menos18 anos e não mais de 70 anos podem adquirir apólices de seguros, caso esteja fora dessa faixa informar “impossível seguro”. A tabela a seguir fornece o grupo de risco com sua respectiva idade: Idade Grupo de Risco 18 a 24 Baixo 25 a 40 Médio 41 a70 Alto Desenvolva um programa que leia a idade e informe o seu grupo de risco, ou se é impossível realizar o seguro. Exercício 30) Elabore um algoritmo que calcule e escreva o salário de um determinado operário de uma fábrica de peças automotivas. Sabe-se que o salário do funcionário é calculado da seguinte forma: salário final = salário fixo + comissão. O salário fixo deverá ser lido pelo teclado e a comissão calculada de acordo com a quantidade de peças produzidas (também lidas) durante o mês pelo funcionário: * se o total de peças <= 50 então a comissão = 0. * se total de peças > 50 e o total de peças <=70 então a comissão = 10% sobre o salário fixo. * se total de peças > 70 então a comissão = 20% sobre o salário fixo. Exercício 31) Faça um programa que receba o salário base de um funcionário. Calcule e mostre o novo salário de acordo com a tabela abaixo. O desconto deve ser aplicado sobre o salário base e depois soma-se a gratificação. Salário base Desconto Gratificação até 1000,00 5% R$ 130,00 de 1000,01 até 3000,00 6% R$ 160,00 Acima de 3000,00 10% R$ 200,00 Teste 1 Salário: 1000.00 Novo Salário: 1080,00 Teste 2 Salário: 2500.00 Novo Salário: 2510,00 Teste 3 Salário: 5000.00 Novo Salário: 4700,00 Aula 7: Exercício Complementar Exercício 32) Faça um programa que receba o salário base de um funcionário. Calcule e mostre salário a receber, o valor da gratificação e do imposto pagos, sabendo-se que esse funcionário tem gratificação e imposto (este são calculados cada um em cima do salário base) conforme tabela abaixo: Salário Gratificação Imposto até 2000,00 10% 8% de 2000,01 até 8000,00 15% 9% Acima de 8000,00 20% 11% Teste 1: Teste 2: Salário base: 2000.00 Salário base: 5000.00 Gratificação: 200.00 Gratificação: 750.00 Imposto: 160.00 Imposto: 450.00 Salário a Receber: 2040.00 Salário a Receber: 5300.00 � Exercício de Revisão 1) Resolva as expressões lógicas, determinando se a expressão é verdadeira (true) ou falsa (false): a.) (12 < 13) = b.) (6 < 8) || (3 > 7) = c.) !(pow (2,4) < 23) = d.) ( 15 == 6) || ( 16< 7) && ! (a+5-6 = 8) {onde a = 7} = 2) Construa a tabela verdade. 3) Identificar o tipo de dado (inteiro, real, caractere) de cada valor abaixo. a) 21 : b) “bola” : c) 0.21 : d) 4 : e) “0.21” : 4) Assinale com um X os nomes de variáveis válidos. ( ) abc ( ) 3abc ( ) a ( ) 123a ( ) –a ( ) acd1 ( ) A&a ( ) guarda-chuva ( ) A123 ( ) Aa ( ) guarda_chuva ( ) ABC DE ( ) etc. ( ) b316 5) Qual é a regra para os nomes de variáveis (identificadores) em uma linguagem de programação? 6) Desenvolva a linearização das expressões abaixo. a) b) c) 7) Sendo P, Q, R variáveis inteiras e S, variável real, cujos valores, em um determinado momento da execução do programa, são respectivamente 2, 3, 12 e 4.5, quais são os valores de cada uma das seguintes expressões aritméticas? a) 100 * (Q / P) + R = b) P * (R % 5) – Q/2 = c) pow (R – Q, 0.5) + S = 8) Complete a tabela. Variáveis Relações X Y Z COR NOME (X*X + Y) > Z COR ==”AZUL” NOME != “JOSE” 1 2 5 “AZUL” “PAULO” FALSE 4 3 1 “VERDE” “JOSE” 1 1 2 “BRANCO” “PEDRO” 1 2 1 “AZUL” “JOSE” 9) Considerando as variáveis (A=3, B=16, NOME=”MIRIAM” E PROFISSAO=”ADVOGADO”), avalie as expressões a seguir. a) ( (A+1) > pow (B, 0.5 ) || (NOME != “ANA”) b) ( (A+1) > pow (B, 0.5 ) && (PROFISSAO!= “MEDICO”) 10) O que é case sensitive? 11) As expressões abaixo estão formato utilizado pela linguagem utilizada pela Linguagem C. Escreva as expressões na forma convencional. a) sqrt ( 10 + x / 45) = __________________________________ b) b*b – 4*a*c = ________________________________________ 12) Resolva as expressões determinando o valor de x. a) x = 14 - 8 / 4 + 3 = ________________________________ b) x = 5 + 3 * 2 - 4 = _____________________________ c) x = 64 / (pow (4, 2)) = ____________________________________ d) x = 30 + 60 / 5 = ____________________________________ 13) Assinale com um X os nomes de variáveis (identificadores) válidos e explique os não válidos. a) ( ) resposta ___________________________________________________________ b) ( ) estacio+ ________________________________________________________ c) ( ) a2333r ___________________________________________________________ d) ( ) func_primeiro_nome __________________________________________________ 14) Quais são os operadores relacionais presentes na linguagem C? 15) Quais são os operadores lógicos presentes na linguagem C? 16) Quais são os operadores aritméticos presentes na linguagem C? 17) Faz parte do desenvolvimento de uma algoritmo declarar as variáveis que armazenarão dados a ser manipulados pelo algoritmo. De acordo com as regras para criação dos nomes para as variáveis, assinale a alternativa que possui um exemplo de nome INCORRETO: a) nome_aluno b) num1 c) cad1_id d) salariofinal e) 2nota 18) Assinale com um X os nomes de variáveis válidos. ( ) abc ( ) 3abc ( ) a ( ) 123a ( ) –a ( ) acd1 ( ) A&a ( ) guarda-chuva ( ) A123 ( ) Aa ( ) guarda_chuva ( ) ABC DE ( ) etc. ( ) b316 19) Analise os algoritmos abaixo e assinale o correto: (O algoritmo está sendo usado para calcular a área de um quadrado a partir da leitura do lado do quadrado). a) main(){ float lado; cout << "Digite o valor do lado : "; cin >> lado; area = pow (lado,2); cout << "\n A area vale : " << area; system("pause"); } b) main(){ float lado, area; cout << "Digite o valor do lado : "; cin >> lado; area = pow (lado,2); cout << "\n A area vale : " << area; system("pause"); } c) main(){ float lado, area; cout << "Digite o valor do lado : "; area = pow (lado,2); cout << "\n A area vale : " << area; system("pause"); } d) main(){ cout << "Digite o valor do lado : "; cin >> lado; area = pow (lado,2); cout << "\n A area vale : " << area; system("pause"); } 20) Assinale a alternativa que possui o resultado da saída da execução do algoritmo abaixo, supondo que o usuário tenha digitado 500.00 (quinhentos reais) para o salário do funcionário (variável salario): main () { float salario, valorc; cout << “Digite salário de um funcionario:”; cin >> salario; valorc=salario * 5/100; cout << “\n Comissão é:” << valorc; system("pause"); } a) Comissão é: 5.00 b) Comissão é: 25.00 c) Comissão é:50.00 d) Comissão é:45.00 e) Comissão é:20.00 21) Observe o programa abaixo com muita atenção e suponha que você digitou nessa ordem 30, 50. Selecione a opção cujo conteúdo é igual aos valores exibidos na tela. float ha,total; int h; cin >> ha; cin >> h; total = ha * h * 4.5; cout << total ; cout << total * 0.1; cout << total * 0.9; a) 6750 675 6075 b) 6750 67.5 6682.5 c) 6750 675 607.5 d) 67500 675 66825 e) 67500 6750 60750 22) Façaum programa que calcule o aumento de um salário. Ele deve solicitar o valor do salário e a porcentagem do aumento. Exiba o valor do aumento e do novo salário. 23) Faça um programa que solicite o preço de uma mercadoria e o percentual de desconto. Exiba o valor do desconto e o preço a pagar. 24) Faça um programa para ler um valor e escrever se é positivo ou negativo (considere o valor zero como positivo). 25) Ler as notas da 1a. e 2a. avaliações de um aluno. Calcular a média aritmética simples e escrever uma mensagem que diga se o aluno foi ou não aprovado (considerar que nota igual ou maior que 6 o aluno é aprovado). Escreva também a média. 26) Ler o ano atual e o ano de nascimento de uma pessoa. Escrever uma mensagem que diga se ela poderá ou não votar este ano (não precisa considerar o mês em que a pessoa nasceu). 27) Ler o salário fixo e o valor das vendas efetuadas pelo vendedor de uma empresa. Sabendo-se que ele recebe uma comissão de 3% sobre o total das vendas até R$ 1.500,00 mais 5% sobre o que ultrapassar este valor, calcular e escrever o seu salário total. 28) Uma sorveteria vende três tipos de picolés. Sabendo-se que o picolé do tipo 1 é vendido por R$ 0.50, o do tipo 2 por R$ 0.60 e o do tipo 3 por R$ 0.75, faça um algoritmo que, para cada tipo de picolé, mostre a quantidade vendida e o total arrecadado. Teste 1: Tipo de Picole: 1 Teste 2: Tipo de Picole: 2 Quantidade: 100 Quantidade: 3 Valor a Pagar: 50,00 Valor a Pagar: 1.80 29) Um hotel cobra R$ 60.00 a diária e mais uma taxa de serviços. A taxa de serviços é de: • R$ 5.50 por diária, se o número de diárias for maior que 15; • R$ 6.00 por diária, se o número de diárias for igual a 15; • R$ 8.00 por diária, se o número de diárias for menor que 15. Construa um programa que mostre o nome e o total da conta de um cliente. #include <iostream.h> #include <math.h> main() { // declaração de variáveis float volume, raio; // entrada de dados cout << "Valor do raio: "; cin>> raio; // processamento volume= 4 * 3.14 * pow (raio,3)/3; // saída de dados cout << " Volume vale : " << volume; system("pause"); } #include <iostream.h> main() { float notaP, notaT, notaFinal; cout << "nota da prova: "; cin>> notaP; cout << "nota do trabalho: "; cin>> notaT; notaFinal=notaP*0.8 + notaT*0.2; cout<< "nota final : " << notaFinal; system("pause"); } #include <iostream.h> #include <math.h> main(){ float salarioFixo, comissao, vendas,salarioFinal; cout<< “Salario Fixo: “; cin >> salarioFixo; cout << “Vendas : “; cin >> vendas; if (vendas <= 50000) { comissao = vendas * 0.05; } else { comissao = vendas *0.08; } salarioFinal = salarioFixo + comissao; cout << “Salario Final : “<< salarioFinal<<”\n”; system (“pause”); } Salario Bruto: 1000 Imposto: 50 Liquido: 950 #include <iostream.h> #include <math.h> main(){ float idade; cout << " Idade: "; cin >> idade; if (idade < 13){ cout << " Infantil \n"; } else if (idade < 21) { cout << " Juvenil \n"; } else { cout << " Senior \n"; } system("pause"); } #include <iostream.h> #include <math.h> main(){ float prova1, prova2, media; cout << "Prova 1: "; cin >> prova1; cout << "Prova 2: "; cin >> prova2; media = (prova1 + prova2)/2; if (media >= 6.0){ cout << "Aprovado \n"; } else { cout << "Reprovado \n"; } system("pause"); } #include <iostream.h> #include <math.h> main(){ int numero; cout << "Numero: "; cin>> numero; if (numero % 2 == 0){ cout <<"Par \n"; } else{ cout << "Impar \n"; } system("pause"); } #include <iostream.h> #include <math.h> main(){ float peso, altura, imc; cout << " Peso : "; cin >> peso; cout << " Altura : "; cin >> altura; imc = peso/pow (altura,2); if (imc < 18) { cout << " abaixo do peso \n"; } else if (imc < 25){ cout << " peso ideal \n"; } else if (imc < 30){ cout << " acima do peso \n"; } else { cout << " obeso \n"; } system("pause"); } #include <iostream.h> main(){ float dinheiro; cout << " Dinheiro: "; cin >> dinheiro; if (dinheiro >= 10){ cout << " Vou ao cinema \n"; } else{ cout << " Fico em casa \n"; } system("pause"); } valor em KM: 10 metros: 10000 #include <iostream.h> main(){ //declarar as variaveis float metros, quilometros; cout << "valor em KM: "; cin >> quilometros; metros = quilometros*1000; cout << "metros " << metros << "\n"; system("pause"); } Lado: 3 Area: 9 Perimetro: 12 #include <iostream.h> main(){ float lado, area, perímetro; cout << “ Lado : “; cin >> lado; area = lado * lado; perímetro = 4*lado; cout<< “Area : “<< area << “\n”; cout<< “Perimetro: “<< perimetro << “\n”; system (“pause”); } #include <iostream.h> main(){ //declarar as variaveis float imposto,salarioLiquido; float salarioBruto; cout << "Salario Bruto: "; cin >> salarioBruto; imposto = salarioBruto*0.05; salarioLiquido=salarioBruto-imposto; cout<<"Imposto: "<<imposto << "\n"; cout<<" Liquido: "<<salarioLiquido<<"\n"; system("pause"); } Comprimento:10 Largura: 5 Perimetro: 30 #include <iostream.h> main(){ float perimetro, comprimento, largura; cout << " Comprimento : "; cin >> comprimento; cout << " Largura : "; cin >> largura; perímetro=2*comprimento+2*largura; cout << "Perimetro: " << perimetro << "\n"; system("pause"); } Capital: 1000 Taxa: 2 Periodo: 4 Juros vale: 80 #include <iostream.h> main(){ //declarar as variaveis float capital, taxa, periodo, juros; cout << " Capital : "; cin >> capital; cout << " Taxa : "; cin >> taxa; cout << " Periodo : "; cin >> periodo; juros = capital*(taxa/100)*periodo; cout << "Juros vale: " << juros << "\n"; system("pause"); } #include <iostream.h> main(){ float distancia, valorLitro; float valorTotal, desempenho, pedagio; cout << " distancia: "; cin >> distancia; cout << " valor do litro: "; cin >> valorLitro; cout << " Km por litro: "; cin >> desempenho; cout << " pedagio : "; cin >> pedagio; valorTotal=(distancia*valorLitro)/desempenho + pedagio; cout << " valor total: " << valorTotal << "\n"; system("pause"); } #include <iostream.h> #include <math.h> main(){ float a, b, c, delta, x1,x2; cout << " valor de a: "; cin >> a; cout << " valor de b: "; cin >> b; cout << " valor de c: "; cin >> c; delta = pow (b,2) - 4*a*c; x1 = (-b+pow (delta,0.5)) / (2*a); x2 = (-b-pow (delta,0.5)) / (2*a); cout<< " x1 vale: " << x1 << "\n"; cout<< " x2 vale: " << x2 << "\n"; system("pause");} valor de a: 1 valor de b: 3 valor de c: -4 x1 vale: 1 x2 vale: -4 distancia:100 valor do litro:2.79 Km por litro: 10 pedagio: 10 valor total :37.9 � EMBED PBrush ��� Linguagem de programação C Página � PAGE \* MERGEFORMAT �19� _1342674974.unknown _1423135953.unknown _1471112290.unknown _1500310798/ole-[42, 4D, A6, 3A, 01, 00, 00, 00] _1500310799/ole-[42, 4D, 16, A7, 00, 00, 00, 00] _1500310797/ole-[42, 4D, E6, 67, 00, 00, 00, 00] _1436181678.unknown _1468394290/ole-[42, 4D, F6, 93, 03, 00, 00, 00] _1423135280.unknown _1342674877.unknown _1342674940.unknown _1342674823.unknown
Compartilhar