Prévia do material em texto
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 1/1
ENGENHARIA AMBIENTAL/ELÉTRICA
DISCIPLINA: LÓGICA DE PROGRAMAÇÃO
PROFESSOR: MARCUS SILVA
Lista de Exercícios
01) Considere que você recebe informações de um serviço de meteorologia norte-americano e precisa
converter as informações para as unidades de medidas nacionais. Assim, crie algoritmos em
pseudocódigo para:
a) Ler uma quantidade de chuva (dada em polegadas) e apresentar a mesma quantidade em milímetros
(1 polegada = 25,4 mm).
b) Ler uma temperatura dada na escala Fahrenheit (tF) e mostrar a mesma temperatura em Celsius (tC),
pela fórmula tC = 5 (tF – 32)/9.
1) a)
ALGORITMO chuva em mm
DECLARE qtd_pol, qtd_mm, NUMÉRICO
ESCREVA “Digite a qtd. de chuva em pol”
LEIA qtd_pol
qtd_mm <- qtd_pol*25.4
ESCREVA “A qtd. de chuva em mm e” qtd_mm
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float qtd_pol, qtd_mm;
cout<<"Digite a quantidade de chuva em polegadas: ";
cin>>qtd_pol;
qtd_mm = qtd_pol*25.4;
cout<<"A qtd. de chuvas em mm e: "<<qtd_mm;
return 0;
}
b)
ALGORITMO Temperatura
DECLARE tempF, tempC, NUMÉRICO
ESCREVA “Digite a Temp. em Fahrenheit”
LEIA tempF
tempC <- 5*(tempF-32)/9
ESCREVA “A temperatura em Celcius e” tempC
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float tempF, tempC;
cout<<"Digite a temperatura em Fahrenheit: ";
cin>>tempF;
tempC = 5*(tempF-32)/9;
cout<<"A temperatura em Celsius e: "<<tempC;
return 0;
}
02) Faça um algoritmo que receba o salário de um funcionário, calcule e mostre o novo salário,
sabendo-se que este sofreu um aumento de 13,5%.
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 2/1
02)
ALGORITMO aumento salarial
DECLARE sal, aumento, novo_sal NUMÉRICO
ESCREVA “Digite o salario do funcionário ”
LEIA sal
aumento <- (0.135)*sal
novo_sal <- sal+aumento
ESCREVA “O novo salario e” novo_sal
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float sal, aumento,novo_sal;
cout<<"Digite o salario do funcionario: ";
cin>>sal;
aumento = sal*(0.135);
novo_sal = aumento +sal;
cout<<"O novo salario e: "<<novo_sal;
return 0;
}
03) Sabe-se que o valor de cada 1.000 litros de água correspondente a 2% do salário mínimo. Faça um
algoritmo que receba o valor do salário mínimo e a quantidade de água consumida em uma residência
por mês. Calcule e mostre:
a) o valor da conta de água.
b) o valor a ser pago com desconto de 15%.
03)
ALGORITMO chuva em mm
DECLARE sal_min, qtd_agua_mes, valor_pag, valor_desc, qtd_agua_cobrada NUMÉRICO
ESCREVA “Digite o valor do salario mínimo ”
LEIA sal_min
ESCREVA “Digite a qtd de agua consumida ”
LEIA qtd_agua_mes
qtd_agua_cobrada <- qtd_agua_mes/1000
valor_pag <- qtd_agua_cobrada *0.02*sal_min
valor_desc <- 0.85*valor_pag
ESCREVA “O valor da conta e” valor_pag
ESCREVA “O valor da conta com desconto de 15% e” valor_desc
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float sal_min, qtd_agua_mes, valor_pag, valor_desc;
int qtd_agua_cobrada;
cout<<"Digite o valor do salario minimo: ";
cin>>sal_min;
cout<<"Digite a quantidade de agua consumida: ";
cin>>qtd_agua_mes;
qtd_agua_cobrada = qtd_agua_mes/1000;
valor_pag = qtd_agua_cobrada*0.02*sal_min;
valor_desc = 0.85*valor_pag;
cout<<"O valor da conta e: R$ "<<valor_pag<<"\n";
cout<<"O valor da conta com desconto de 15% e: R$ "<<valor_desc;
return 0;
}
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 3/1
04) Escreva um algoritmo que leia o salário bruto de um engenheiro, calcule e apresente o salário
líquido do mesmo. Sabe-se que o salário líquido é igual ao salário bruto mais 5% de Abono menos 8%
de INSS (ambas as porcentagens aplicadas sobre o salário bruto).
ALGORITMO salario engenheiro
DECLARE sal_bruto, sal_liquido, abono, desc_inss NUMÉRICO
ESCREVA “Digite o salario bruto: ”
LEIA sal_bruto
abono <-(0.05)*sal_bruto
desc_inss <- (0.08)*sal_bruto
sal_liquido <- sal_bruto+abono-desc_inss
ESCREVA “O salario liquido e: ” sal_liquido
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float sal_bruto, sal_liquido,abono, desc_inss;
cout<<"Digite o salario bruto: ";
cin>>sal_bruto;
abono = (0.05)*sal_bruto;
desc_inss = (0.08)*sal_bruto;
sal_liquido = sal_bruto + abono - desc_inss;
cout<<"O salario liquido e: "<<sal_liquido;
return 0;
}
05) Num triângulo retângulo, segundo Pitágoras, o quadrado da hipotenusa a) é igual a soma dos
quadrados dos catetos (b e c), isto é, a² = b² + c². Faça um algoritmo que receba os valores dos catetos
(b e c) e imprima o valor da hipotenusa.
Obs: Raiz quadrada em português estruturado é denotado por SQRT
ALGORITMO salario engenheiro
DECLARE a, b, c NUMÉRICO
ESCREVA “Digite o primeiro cateto: ”
LEIA b
ESCREVA “Digite o segundo cateto: ”
LEIA c
a <- SQRT(b*b + c*c)
ESCREVA “O valor da hipotenusa e: ” a
FIM
#include <iostream>
#include <cmath>
using namespace std;
int main(int argc, char** argv) {
float a, b, c;
cout<<"Digite o primeiro cateto: ";
cin>>b;
cout<<"Digite o segundo cateto: ";
cin>>c;
a = sqrt(b*b + c*c);
cout<<"A hipotenusa e: "<<a;
return 0;
}
Obs: Para que a função sqrt (raiz quadrada) funcione, é necessário utilizar a biblioteca cmath, que está
em vermelho no código acima.
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 4/1
06) Determine os resultados de D0, D1 e D2 após a execução do algoritmo abaixo.
Algoritmo exe1
DECLARE: N, D0, D1, D2
N ← 352
D0 ← N mod 10
D1 ← (N div 10) mod 10
D2 ← N div 100
ESCREVA D0, D1, D2
FIM
Obs¹: x mod y indica o resto da divisão de x por y.
Obs²: x div y indica o valor de x divido por y.
Inicialmente temos que N = 352, se fizermos a divisão de 352 por 10 o resultado é 35 com resto 2, deste
modo D0 = 2.
D1 é: 352 div 10 que é 32. 32 mod 10 é 2, logo D1 = 2
D2 é: 352 div 100 = 3
Assim D0 = 2, D1 = 2 e D2 = 3
07) Sabe-se que:
Pé = 12 polegadas
Jarda = 3 pés
Milha = 1.76 jardas
Faça um algoritmo que receba uma medida em pés, faça as conversões a seguir e mostre os resultados:
a) Polegadas
b) Jardas
c) Milhas
ALGORITMO conversão de unidade
DECLARE pes, pol, jardas, milhas NUMÉRICO
ESCREVA “Digite a medida em pes: ”
LEIA pes
pol <- 12*pes
jardas <- 3*pes
milhas <- 1.76*jardas
ESCREVA “O valor em polegadas e: ” pol
ESCREVA “O valor em jardas e: ” jardas
ESCREVA “O valor em milhas e: ” milhas
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float pes, pol, jardas, milhas;
cout<<"Digite a medida em pes: ";
cin>>pes;
pol = 12*pes;
jardas = 3*pes;
milhas = 1.76*jardas;
cout<<"A valor em polegadas e: "<<pol<<"\n";
cout<<"A valor em jardas e: "<<jardas<<"\n";
cout<<"A valor em milhas e: "<<milhas;
return 0;
}
07) Sabe-se que o quilowatt de energia custa um quinto do salário mínimo. Faça um programa que
receba o valor do salário mínimo e a quantidade de quilowatts consumida por uma residência. Calcule e
mostre:
a) o valor de cada quilowatt;
b) o valor a ser pago por essa residência
c) ovalor a ser pago com desconto de 15%
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 5/1
ALGORITMO quilowatts
DECLARE sal_min, quiwatts_cons, v_quiwatt, val_pago, val_desc NUMÉRICO
ESCREVA “Digite o valor do salario minimo: ”
LEIA sal_min
ESCREVA “Digite a qtd. de quilowatts consumidos: ”
LEIA quiwatts_cons
v_quiwatt <- sal_min/5
val_pago <- v_quiwatt*quiwatts_cons
val_desc <- 0.85*val_pago
ESCREVA “O valor do quilowatt e: ” v_quiwatt
ESCREVA “O valor pago e: ” val_pago
ESCREVA “O valor com desconto e: ” val_desc
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float sal_min, quiwatts_cons, v_quiwatt, val_pago, val_desc;
cout<<"Digite o valor do salario minimo: ";
cin>>sal_min;
cout<<"Digite a qtd de quilowatts consumida: ";
cin>>quiwatts_cons;
v_quiwatt = sal_min/5;
val_pago = v_quiwatt*quiwatts_cons;
val_desc = 0.85*val_pago;
cout<<"O valor do quilowatt e: "<<v_quiwatt<<"\n";
cout<<"O valor pago e: "<<val_pago<<"\n";
cout<<"O valor com desconto e: "<<val_desc;
return 0;
}
08) Faça um programa que receba duas notas, calcule e mostre a média ponderada dessas notas,
considerando peso 2 para a primeira e peso 3 para a segunda.
ALGORITMO Media Notas
DECLARE nota1, nota2, media NUMÉRICO
ESCREVA “Digite a primeira nota: ”
LEIA nota1
ESCREVA “Digite a segunda nota: ”
LEIA nota2
media <- (nota1*2 + nota2*3)/5
ESCREVA “A media das notas e: ” media
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float nota1, nota2, media;
cout<<"Digite a primeira nota: ";
cin>>nota1;
cout<<"Digite a segunda nota: ";
cin>>nota2;
media = (nota1*2+nota2*3)/5;
cout<<"A media das notas e: "<<media;
return 0;
}
09) Faça um programa que receba o raio, calcule e mostre:
a) o comprimento de um círculo: C=2*π*R
b) a área de um círculo: A= π*R²
c) o volume de uma esfera: V =(3/4)* π*R³
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 6/1
ALGORITMO Circulo
DECLARE r, comp, area, volume NUMÉRICO
ESCREVA “Digite o raio da circunferencia: ”
LEIA r
comp <- 2*3.14*r
area = 3.14*r*r
volume = (3/4)*3.14*r*r*r
ESCREVA “O comprimento e: ” comp
ESCREVA “A area e: ” area
ESCREVA “O volume: ” volume
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float r, comp, area, volume;
cout<<"Digite o valor do raio: ";
cin>>r;
comp = 2*3.14*r;
area = 3.14*r*r;
volume = (3.0/4.0)*3.14*r*r*r;
cout<<"O comprimento e: "<<comp<<"\n";
cout<<"A area e: "<<area<<"\n";
cout<<"O volume e: "<<volume;
return 0;
}
10) Faça um programa que recebe o número de lados de um polígono convexo, calcule e mostre o
número de diagonais desse polígono. Sabe-se que ND = N * (N – 3)/2, em que N é o número de lados do
polígono.
ALGORITMO Circulo
DECLARE lados, diagonal NUMÉRICO
ESCREVA “Digite o numero de lados: ”
LEIA lados
diagonal <- lados*(lados-3)/2.0
ESCREVA “O numero de diagonais e: ” diagonal
FIM
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
float lados, diagonal;
cout<<"Digite o numero de lados: ";
cin>>lados;
diagonal = lados*(lados-3)/2.0;
cout<<"O numero de diagonais e: "<<diagonal;
return 0;
}
11) Diga qual o tipo de cada variável abaixo (NUMÉRICO (REAL/INTEIRO), LITERAL, LÓGICO):
a) idade LITERAL/char
b) peso NUMERICO/float
c) Nome LITERAL/char
d) Endereço LITERAL/char
e) Placa de um automóvel LITERAL/char
ESTÁCIO-IESAM – Engenharias – Lógica de Programação – Prof. Marcus Silva. 7/1
12) Qual dos seguintes comandos abaixo indica
uma operação de LEITURA na linguagem C++:
a) cout<< c) cin>>
b) cout>> d) cin<<
13) Qual dos seguintes comandos abaixo indica uma operação de ESCRITA na linguagem C++:
a) cout<< c) cin>>
b) cout>> d) cin<<