Buscar

matematicos repeticao_While_resolvido

Prévia do material em texto

Universidade Estácio de Sá 
Sistema de informação – Linguagem C++ 
Profª Paula Faragó 
 
Exercícios Matemáticos (Repetição - While) 
 
1) Refazer todos os exercícios matemáticos de seqüencial e de seleção usando while. 
 
(ex. mat. Sequencial. nº 5) Fazer um programa usando while que entre com a base altura de um 
retângulo e imprimir: 
Perímetro: 
Área: 
Diagonal: 
# include <iostream> 
# include <cmath> 
 
using namespace std; 
 
int main(){ 
 
 float base, altura, perimetro, area, diagonal; 
 char finalizador = 's'; // inicializando uma variável 
 
 while (finalizador == 's' || finalizador == 'S'){ 
 cout << "Digite a base do retangulo "; 
cin >> base; 
 cout << "Digite a altura do retangulo "; 
 cin >> altura; 
 
 perimetro = ((2*base)+(2*altura)); 
 area = altura * base; 
 diagonal = pow(base,2)+ pow(altura,2); 
 
 cout << "\n O perimetro e: " << perimetro; 
 cout << "\n A area e: " << area; 
 cout << "\n A diagonal e: " << sqrt(diagonal); 
 
 cout << "Se deseja continuar, digite s, senao qualquer tecla para sair: "; 
 cin >> finalizador; 
 
 cout << "\n"; 
} 
 system ("pause"); 
} 
2) Entrar com vários números e imprimir o triplo de cada número. O programa acaba quando 
entrar o número -999. 
# include <iostream> 
# include <cmath> 
 
using namespace std; 
 
int main(){ 
 
 float num; 
 cout<< "entre com um numero ou -999 para sair: "; // pedindo que usuário entre 
 cin >> num; 
 
 while (num != -999){ 
 cout << "Triplo do numero " << num << " eh " << num * 3) << endl; 
 cout << "entre com um numero ou -999 para sair: "; 
 cin >> num; 
 cout << endl; // endl é igual a "\n", ou seja, ambos pulam linha! 
 } 
 system ("pause"); 
} 
 
3) Entrar com vários números e enquanto forem positivos e imprimir quantos números foram 
digitados. 
# include <iostream> 
# include <cmath> 
 
using namespace std; 
 
int main(){ 
 
 float num; 
 int cont = 0; 
 
 cout << "Entre com um numero ou negativo para sair: "; 
 cin >> num; 
 
 while (num > 0){ 
 cont++; // ou cont = cont + 1; 
 cout << "\nEntre com um numero ou negativo para sair: "; 
 cin >> num; 
 
 } 
 cout<< "\n\nForam digitados " << cont << " numeros\n\n"; 
 system ("pause"); 
} 
4) Entrar com vários números positivos e imprimir a média dos números digitados. 
#include<iostream> 
using namespace std; 
 
int main(){ 
float num, soma = 0; 
int cont = 0; 
 
cout << "\nEntre com um numero positivo ou entao digite um numero negativo 
pra sair "; 
 cin >> num; 
 
 while(num > 0) { 
 cont++; 
 soma+=num;// soma=soma+num; 
 cout << "\n Entre com um numero positivo ou entao um numero negativo 
para sair "; 
 cin >> num; 
 } 
 
 cout<<"\n Media "<< soma/cont; 
 system ("PAUSE"); 
 return 0; 
 } 
5) Ler vários números e informar quantos números entre 100 e 200 foram digitados. Quando o 
valor 0 (zero) for lido, o programa deverá cessar sua execução 
#include<iostream> 
 
using namespace std; 
 
int main(){ 
float num; 
int cont = 0; 
cout << "\nEntre com um numero ou zero para sair "; 
 cin >> num; 
 while(num != 0) { 
 if(num>=100 && num<=200) { 
 cont++; 
 } 
 cout << "\nEntre com um numero ou zero para sair "; 
 cin>> num; 
 } 
 
cout << "\nForam digitados " << cont << " entre 100 e 200 " << endl; 
 system ("PAUSE"); 
 return 0; 
} 
 
6) Entrar com sexo de várias pessoas e imprimir quantas pessoas são do sexo masculino e 
quantas pessoas são do sexo feminino.(considerar m, M, f e F). 
 
#include<iostream> 
using namespace std; 
 
int main(){ 
char sexo; 
int contm = 0, contf=0; 
cout << "\nDigite M para confirmar sexo masculino ou F para sexo feminino ou outra 
letra para sair"; 
cin>>sexo; 
 
 while(sexo == 'M'||sexo == 'm' || sexo == 'F' ||sexo== 'f') { 
 if(sexo=='M'||sexo=='m'){ 
 contm++; 
 }else{ 
 if(sexo = 'F'||sexo== 'f') { 
 contf++; 
 } 
 } 
cout << "\nDigite M para confirmar sexo masculino ou F para sexo feminino ou outra 
letra para sair"; 
cin>>sexo; 
 } 
 
 cout << "\nQuantidade do sexo masculino eh " << contm; 
 cout << "\nQuantidade do sexo feminino eh " << contf; 
 system ("PAUSE"); 
 return 0; 
} 
 
7) Entrar com números e imprimir o quadrado de cada número até entrar um número múltiplo de 
6 que deverá ter seu quadrado também impresso. 
 
#include <iostream> 
#include <cstdlib> 
using namespace std; 
 
int main () { 
 int num; 
 cout << "Entre com um numero"; 
 cin>>num; 
 
while (num%6 != 0){ 
 cout << "\n O quadrado de " << num << " eh " << num * num; 
cout << "Entre com um numero"; 
 cin>>num; 
} 
 cout << "\n O quadrado de " << num << " eh " << num * num; 
 system("Pause"); 
 return 0; 
} 
 
 
8) Dado um país A, com 5.000.000 de habitantes e uma taxa de natalidade de 3% ao ano, e um 
país B com 7.000.000 de habitantes e uma taxa de natalidade de 2% ao ano. Calcular e 
imprimir o tempo é necessário para que a população do país A ultrapasse a população do país 
B. 
 
#include <iostream> 
#include <cstdlib> 
using namespace std; 
 
int main () { 
float A, B; 
int ano=0; 
A=5000000.00; 
B=7000000.00; 
 
while (A<B){ 
A=A*1.03; 
B=B*1.02; 
ano++; 
} 
cout<<" A populacao A levara " << ano << " anos para ultrapassar a populacao 
B "; 
cout<<"\n A populacao A tera " << A << " habitantes " << " e a populacao B 
tera " << B << " habitantes." ; 
 system("PAUSE"); 
 return 0; 
} 
 
9) Faça um algoritmo que deixe entrar com 10 números positivos e imprima raiz quadrada de 
cada número. Para cada entrada de dados deverá ter um trecho de proteção para que um número 
negativo não seja aceito. (Depois fazer este exercício para a estrutura FOR). 
 
#include <iostream> 
#include <cstdlib> 
using namespace std; 
int main () { 
int cont; 
float num; 
cont=0; 
 
while(cont<10){ 
 cout << "Entre com um numero"; 
 cin>>num; 
 if(num>0){ 
 cout << " A raiz quadrada de " << num << " eh " << sqrt(num); 
 cont++; 
 } 
} 
 
 system("PAUSE"); 
 return 0; 
} 
 
10) Entrar com a idade de várias pessoas e imprimir: 
 - total de pessoas com menos de 21 anos 
 - total de pessoas com mais de 50 anos. 
 
#include <iostream> 
#include <cstdlib> 
using namespace std; 
int main () { 
int contmenor=0, contmaior=0, idade; 
 
cout<< "\n Entre com a sua idade ou digite numero negativo pra sair "; 
cin>>idade; 
 
while(idade>0){ 
 if(idade<21){ 
 contmenor++; 
 } 
 if(idade>50){ 
 contmaior++; 
 } 
cout<< "\n Entre com a sua idade ou digite numero negativo pra sair"; 
cin>>idade; 
} 
 
cout<<"\n Total de pessoas menores de 21 anos eh " << contmenor; 
cout<<"\n Total de pessoas maiores de 50 anos eh " << contmaior; 
 
 system("PAUSE"); 
 return 0; 
} 
 
11) Entrar com vários números e imprimir o maior número. O algoritmo acaba quando se digita -
9999. 
#include <iostream> 
#include <cstdlib> 
 
int main ({ 
int num, maior; 
cout<<"Digite um numero ou para sair -9999 : "; 
cin>>num; 
maior = num; 
 
while(num != -9999){if(num > maior){ 
 maior = num; 
 } 
 cout<<"\nDigite um numero ou para sair -9999 : "; 
 cin>>num; 
 } 
 
cout<<"\no maior numero e "<<maior; 
 system("PAUSE"); 
 return 0; 
} 
 
12) Entrar com o número da conta e o saldo de várias pessoas. Imprimir uma listagem contendo 
todas as contas, os respectivos saldos e uma das mensagens: positivo / negativo. Ao final, o 
percentual de pessoas com saldo negativo. O algoritmo acaba quando se digita um número 
negativo para a conta. 
 
int main () { 
int conttotal=0, contneg=0; 
float conta, saldo; 
cout<<" \n Digite o numero de sua conta bancaria ou digite um numero 
negativo: "; 
cin>>conta; 
 
while(conta>0){ 
 conttotal++; 
 cout<<"\n Digite o numero do seu saldo: "; 
 cin>>saldo; 
 if(saldo<0){ 
 contneg++; 
 cout<<"\n Conta numero " << conta << " com saldo -"<< saldo; 
 }else{ 
 cout<<"\n Conta numero " << conta << " com saldo +"<< saldo; 
 } 
 cout<<" \n\n\n Digite o numero de sua conta bancaria ou digite um 
 numero negativo: "; 
 cin>>conta; 
} 
 
cout<<"\n O percentual de contas com saldo negativo eh "<< 
contneg*100/conttotal<< " \% \n"; 
// tem que colocar “\” antes de % devido ser um sinal específico da linguagem C++ 
cout<<"\n\n\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
13) Chico tem 1.50m e cresce 2 centímetros por ano, enquanto Joca tem 1.10m e cresce 3 
centímetros por ano. Construir um algoritmo que calcule e imprima quantos anos serão 
necessários para que Joça seja maior que Chico. 
 
#include <iostream> 
#include <cstdlib> 
using namespace std; 
 
int main () { 
float chico, juca; 
int ano=0; 
juca=1.1; 
chico=1.5; 
 
while(juca<=chico){ 
 juca += 1.03; // mesmo que juca = juca + 1.03; 
 chico += 1.02; // mesmo que chico = chico + 1.02; 
 ano++; 
} 
 
cout<<"\n Juca levara " <<ano<< "anos para ultrapassar a altura de 
Chico.\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
14) Criar um programa que receba o valor e o código de várias mercadorias vendidas em um 
determinado dia. Os códigos obedecem a lista a seguir: 
‘L’ – Limpeza 
‘A’ – Alimentação 
‘H’ – Higiene 
Calcule e imprima: 
 O total vendido naquele dia, com todos os códigos juntos 
 O total vendidos naquele dia em cada um dos códigos 
Para encerrar a entrada de dados, digite o valor da mercadoria zero. 
 
Exercício da aula do dia 16/11 
15) Crie um programa que calcule, quantos litros de gasolina são usados em uma viagem, 
sabendo que um carro faz 10 km/litros. O usuário fornecerá a velocidade do 
carro e o período de tempo que viaja nesta velocidade para cada trecho do percurso. 
Então, usando as formulas distancia=tempo*velocidade e litros consumidos = distancia/10. 
O programa computara, para todos os valores não negativos de velocidade, 
os litros de combustível consumidos. O programa devera imprimir a distancia 
e o numero de litros de combustível gastos naquele trecho. Deverá imprimir, 
também,o total de litros gastos na viagem. O programa pára quando for 
digitado o valor negativo de velocidade. 
 
#include<iostream> 
using namespace std; 
int main() 
{ 
 float veloc,tempo,litro,distancia; 
 int num,totalgas=0; 
 
 cout<<"digite o tempo em minutos que voce gastou neste trecho"<<endl; 
 cin>>tempo; 
 tempo\=60.0; 
 cout<<"digite sua velocidade neste trecho"<<endl; 
 cin>>veloc; 
 
 while(veloc>0){ 
 distancia=tempo*veloc; 
 cout<<"a distancia percorrida neste trecho foi "<<distancia<<"km"<<endl; 
 litro=distancia/10.0; 
 cout<<"e voce gastou de combustivel "<<litro<<"litros"<<endl; 
 totalgas=totalgas+litro; 
 cout<<"\ndigite o tempo que voce gastou neste trecho"<<endl; 
 cin>>tempo; 
 cout<<"\ndigite sua velocidade neste trecho"<<endl; 
 cin>>veloc; 
 } 
 
 cout<<"voce gastou na viagem"<<totalgas<<endl; 
 system("pause>0"); 
 return 0; 
}

Continue navegando

Outros materiais