Buscar

Aula 01 - Introdução a Lógica 2014

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 1 
 
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. 
 
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 ____ _____ 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 2 
 
2) 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 
 
 
 
 
 
3) 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) 
 
 
4) 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? 
 
5) Qual o valor da pedra que deve ser colocada em cima de todas estas para completar a sequência abaixo? 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 3 
 
Algoritmos 
video aula (Aula 945: Algoritmos e Lógica de Programação – Introdução) 
 
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. 
 
Algoritmo 2: Fazer um sanduíche 
 
Algoritmo 3 – Ir para a Escola 
 
Algoritmo 4 – Sacar o dinheiro no banco 24 horas. 
 
Algoritmo 5 - 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. 
 
Algoritmo 6 - Exercício das moedas. 
 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: Trocar 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. 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 4 
 
Algoritmos Computacionais 
 
 Fases de concepção de um algoritmo. 
 
1) Entradas: dados que alimentam o sistema, são as informações inseridas pelo usuário. 
2) Processamento: cálculo e manipulação dos dados de entrada. 
3) Saída: Resultado obtido do processamento dos dados. 
4) Teste de mesa: É a execução das 3 fases mencionadas anteriormente, verificando o funcionamento na 
prática das instruções executadas. 
 
video aula (Aula 946: Algoritmos e Lógica de Programação –Algoritmo 1) 
 
 
video aula (Aula 947: Algoritmos e Lógica de Programação – Exercício 1) 
 
 
Programação utilizando a liguagem C. 
 
Histórico da Linguagem C 
 
C é uma das linguagens de programação mais populares e existem poucos SistemasOperacionais 
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. 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 5 
 
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. 
 
Operadores Aritméticos: +, -, *, / e % (resto da divisão). 
Prioridades ou precedência de operadores 
Prioridade mais alta: * / % 
Prioridade mais baixa: + - 
 
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 =>4
2
 => pow (4,2) = 16 
 25½ = pow (25, 0.5) = 5 
Exemplo: 
a) 10 + 6 / 2 *20 = 70 
b) 10 % 3 = 1 
c) 4 + 5 * 3= 19 
d) (4 + 5) * 3= 27 
e) pow (3,2) = 9 
f) pow (9, 0.5) = 3 
g) pow (5, 3 ) = 125 
h) pow (27, 0.33333) = 2.99996704181 
 
Exercícios: Resolva as expressões determinando o valor de x. 
 
a) x = 5 + 3 * 2 + 8 
 
 
 
b) x = ( 5 + 3 * 2) % 4 c) x = 64 / pow (4,2) 
 
 
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). 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 6 
 
 == (igualdade) , >, <, >=, <=, != (diferente) 
 Exemplo: 
a) 10 > 7 = verdadeiro (true) 
b) 7 != 7 = falso (false) 
Importante: um sinal de = significa atribuição 
Exercícios: Qual o valor lógico das expressões abaixo. 
a) (2+5) > 4 b) 3 != 3 c) (2*5) > 3 d) (5+1) < 2 
e) 2 < (7-2) f) pow (3,2) <= 16 g) (30 % 7) != 6 h) (4+3*3) < 14 
 
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
a
x 
  
bax /
 
b) 
c
ba
x


  
cbax /)( 
 
c) 
a
deltab
x
2


  
d) 
a
x
3
5

 
e) 
9.
4
32
x
x
x



 
f) 
6.3
2
)1( 2




a
x
x
 
 
Estrutura Sequencial em C-C++ 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 7 
 
 
#include <nome da biblioteca> 
main( ) 
{ 
 Bloco de comandos; 
} 
 
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”; 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 8 
 
 cout << “Cheque : “ ; 
 cin >> cheque; 
 
 cout << “nome : “; 
 gets (nome); 
 
cout <<“Opção : “; 
 cin >> opcao; 
 
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 realizadosDefinir os dados de saída 
Construir o algoritmo 
Testa o algoritmo utilizando simulações 
 
Exercícios: Desenvolva na linguagem LINGUAGEM C os seguintes algoritmos: 
 
Exiba na tela do computador a mensagem: Aprendendo programação!!!. 
 
 Construção em Linguagem C 
 #include <conio.h> 
#include <iostream.h> 
#include <math.h> 
#include <stdio.h> 
main(){ 
 cout << "Aprendendo programação \n"; 
 system(“pause”); 
} 
salvar o arquivo: exemplo01.cpp 
 
Exercícios: Desenvolva na linguagem C os seguintes exercícios. 
 
1 Exiba na tela do computador a mensagem: Aprendendo programação!!!. 
 
2. Exiba na tela do computador a mensagem: Aprendendo programação!!! Na disciplina de Lógica 
 
3. Exiba na tela do computador a mensagem: Aprendendo programação!!!. 
 Na disciplina de Lógica 
 
4. Exiba na tela do computador a mensagem: Aprendendo programação!!!. 
 Na disciplina de Lógica 
 Fica tudo mais fácil. 
 
Fluxograma 
 
Consiste em analisar o enunciado do problema e escrever, utilizando símbolos gráficos 
predefinidos, a solução. 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 9 
 
 
 
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. 
 
5. 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 
 
 
 
 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#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 
 
 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 10 
 
6. 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 
 
 
 
 
 
 
 
 
 
 
 
7. 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 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#include <iostream.h> 
#include <math.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 do combustivel " << valorTotal << "\n"; 
 system("pause"); 
} 
distancia:100 
valor do litro:2.79 
Km por litro: 10 
pedagio: 10 
valor do combustível: 37.9 
 
#include <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <math.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"); 
} 
Capital: 1000 
Taxa: 2 
Periodo: 4 
 
Juros vale: 80 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 11 
 
8. 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 
 
 
 
 
9. 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 
 
10. 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 
 
 
 
 
 
#include <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <math.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"); 
} 
Comprimento:10 
Largura: 5 
Perimetro: 30 
#include <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <math.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”); 
} 
Lado: 3 
Area: 9 
Perimetro: 12 
#include <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <math.h> 
main(){ 
 //declarar as variaveis 
 float metros, quilometros; 
 cout << "valor em KM: "; 
 cin >> quilometros; 
 metros = quilometros*1000; 
 cout << "metros " << metros << "\n"; 
 system("pause"); 
} 
valor em KM: 10 
metros: 10000 
Estácio de Sá 
Professor RogérioDisciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 12 
 
11. 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ícios: Desenvolva o algoritmo (fluxograma) de acordo com a codificação 
12. Calcule o volume de uma esfera. (fórmula: 
3
4 3r
V


) 
 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 
 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#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 <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <math.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"); 
} 
Salario Bruto: 1000 
Imposto: 50 
Liquido: 950 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 13 
 
 
13. Calcule a média final (média ponderada) da disciplina de lógica de programação, de acordo com a seguinte 
fórmula: 
2.0*_8.0*__ trabalhonotaprovanotafinalmédia 
) 
 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 
 
 
 
 
 
 
 
14. Calcule a raiz quadrada e raiz cúbica de um determinado número. 
 
 ANÁLISE ALGORITMO CODIFICAÇÃO TESTE 
 
 
entrada de dados Numero: 9 
 numero raiz quadrada: 3 
 R raiz cubica: 2.08 
 
 processamento 
 Calcular raiz quadrada 
 Calcular raiz cúbica 
 
saída 
 raiz quadrada 
 raiz cúbica 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#include <iostream.h> 
#include <math.h> 
main() 
{ // declaração de variáveis 
 float notaP, notaT, notaFinal; 
 // entrada de dados 
 cout << "nota da prova: "; 
 cin>> notaP; 
 cout << "nota do trabalho: "; 
 cin>> notaT; 
 // processamento 
 notaFinal=notaP*0.8 + notaT*0.2; 
 // saída de dados 
 cout<< "nota final : " << notaFinal; 
 getch(); 
} 
#include <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <math.h> 
main(){ 
 //declarar as variaveis 
 float numero, quadrado, cubo; 
 cout << "digite um numero "; 
 cin >> numero; 
 quadrado = pow (numero,0.5); 
 cubo = pow (numero,0.333333); 
 cout<< " raiz quadrada:"<<quadrado << "\n"; 
 cout<< "raiz cúbica : "<<cubo << "\n"; 
 system("pause"); 
} 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 14 
 
Exercícios: Desenvolva a codificação de acordo (na linguagem C) de acordo com o fluxograma. 
15.) 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 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16.) Faça um programa que receba o peso de uma pessoa, calcule e mostre: 
a) O novo peso, se a pessoa engordar 15% sobre o peso digitado; 
b) 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). 
17) Faça um programa que calcule e mostre a área de um losango. Sabendo-se que Area = (diagonal maior * diagonal menor) / 2 
 
18) Faça um programa quereceba 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 que esse funcionário ganha. 
 
19) Faça um programa que receba o ano do nascimento de uma pessoa e o ano atual, calcule e mostre: 
a) A idade da pessoa em anos; 
b) A idade da pessoa em meses; 
c) A idade da pessoa em dias. 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 15 
 
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; 
} 
 
 
Exercícios 
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 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#include <iostream.h> 
#include <math.h> 
main(){ 
 float dinheiro; 
 cout << " Dinheiro: "; 
 cin >> dinheiro; 
 
 if (dinheiro >= 10){ 
 cout << " Vou ao cinema \n"; 
 } 
 else{ 
 cout << " Fico em casa \n"; 
 } 
 system("pause"); 
 } 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 16 
 
1. 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. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2. 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 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#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 <conio.h> 
#include <stdio.h> 
#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”); 
} 
 
 
 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 17 
 
3. 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. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4. 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 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#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 <conio.h> 
#include <stdio.h> 
#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"); 
 } 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 18 
 
5. 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 
 
 
 
 
#include <conio.h> 
#include <stdio.h> 
#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"); 
} 
Estácio de Sá 
Professor Rogério Disciplina: Lógica de Programação (algoritmos) 
Curso de Engenharia Civil e Engenharia de Produção 
 
Linguagem de programação C Página 19 
 
6. Uma companhia de seguros classifica seus segurados em três categorias de grupo de risco baseadas na idade. 
Somente pessoas compelo menos 18 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. 
 
7. 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. 
 
8. Faça um programa que receba as 2 notas do estudante, calcule e imprima a média aritmética simples final e o 
conceito desse estudante. O conceito segue a tabela abaixo: 
Média final Conceito 
8.00 até 10.0 A 
7.00 até 8.0 B 
6.00 até 7.0 C 
5.00 até 6.0 D 
< 5.0 E 
 
9. 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 
 
10. 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: 
Salario 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

Outros materiais