Buscar

Lista de Condicional

Prévia do material em texto

LISTA 1 DE EXERCÍCIOS
Estruturas de Seleção (SE e ESCOLHA – IF e SWITCH)
	Aluno
	Curso
	Davi Silva Sousa
	Engenharia de Telemunicaçõ
	Instruções
	
- Leia os exemplos antes de iniciar a execução da lista.
- Tente desenvolver os programas no DEV C++ usando a linguagem C.
- Leve dúvidas para nossa próxima aula.
- A entrega desta lista será realizada no Portal Didático.
EXERCÍCIOS
Proponha um programa capaz de ler dois números reais (numerador e denominador). Se o denominador for diferente de 0, o programa deve imprimir o resultado da divisão do numerador pelo denominador. Caso contrário, o programa deve imprimir a mensagem “Divisão Impossível”. Utilize a estrutura if-else.
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
float numerador, denominador, divisao;
printf ("Digite o valor do numerador: \n");
scanf ("%f", &numerador);
printf ("Digite o valor do denominador:");
scanf ("%f", &denominador);
if (denominador !=0)
 {
 divisao = (numerador)/(denominador);
 printf ("O resultado da divisao e %f", divisao);
 }
else
 {
 printf ("Divisao impossivel");
 }
return 0;
}
Proponha um programa que leia dois valores inteiros e imprima o maior deles. Utilize a estrutura if-else.
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
int numero1, numero2;
printf ("Digite o valor do primeiro numero: \n");
scanf ("%d", &numero1);
printf ("Digite o valor do segundo numero:\n");
scanf ("%d", &numero2);
if ((numero1) != (numero2))
 {
 if ( numero1 > numero2)
 {
 printf ("O maior numero e %d", numero1);
 }
 else
 {
 printf ("O maior numero e %d", numero2);
 }
 }
 else
 {
 printf ("Os numeros sao iguais, digite numeros diferentes");
 }
return 0;
}
Proponha um programa que leia um código de produto e retorne seu nome utilizando a estrutura if-else. Considere os seguintes códigos: 
	Código
	Nome do produto
	1
	Parafuso
	2
	Porca
	3
	Prego
	<qualquer outro número>
	<escrever produto não-cadastrado>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
 int codigo;
 printf ("Digite o codigo do produto desejado:");
 scanf ("%d", &codigo);
 if (codigo == 1)
 {
 printf ("Parafuso");
 }
 else if (codigo == 2) 
 {
 printf ("Porca");
 }
 
 else if(codigo == 3)
 {
 printf ("Prego");
 } 
 
 else 
 {
 printf ("Produto nao cadastrado");
 }
return 0;
}
 
Construa o programa do exercício anterior utilizando a estrutura switch.
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
int codigo;
printf ("Digite o codigo do produto desejado:");
scanf ("%d", &codigo);
switch (codigo)
 {
 case 1: printf("Parafuso");
 break;
 case 2: printf ("Porca");
 break;
 case 3: printf ("Prego");
 break;
 default: printf ("Produto nao cadastrado");
 break;
 }
return 0;
}
Faça um programa que receba 3 valores que representarão os lados de um triângulo e verifique se os valores formam um triângulo. Lembre-se que para formar um triângulo: 
- nenhum dos lados pode ser menor ou igual a zero; 
- um lado não pode ser maior do que a soma dos outros dois;
	Construa este programa utilizando a estrutura if-else.
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
 float ladoA, ladoB, ladoC;
 printf ("Digite o primeiro valor para um lado do triangulo:");
 scanf ("%f", &ladoA);
 printf ("Digite o segundo valor para um lado do triangulo:");
 scanf ("%f", &ladoB);
 printf ("Digite o terceiro valor para um lado do triangulo:");
 scanf ("%f", &ladoC);
if (((ladoA && ladoB && ladoC) != 0) && ((ladoA && ladoB && ladoC) > 0))
{
 if ( ladoA <= ladoB + ladoC)
 {
 if (ladoB <= ladoA + ladoC)
 {
 if (ladoC <= ladoA + ladoC)
 {
 printf ("os valores formam um triangulo");
 }
 }
 }
}
else
{
 printf ("Os valores não formam um triangulo");
}
return 0;
}
Faça um programa para um Caixa que receba o preço de um produto e o valor pago pelo cliente e retorne o troco a ser dado. Se o valor do produto for menor ou igual a zero, o programa deve emitir a mensagem “produto com preço errado” e abortar a operação. Caso contrário, o programa deve imprimir o valor de troco a ser dado. Construa este programa utilizando a estrutura if-else.
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
float valordoproduto, valorpago, troco;
printf ("Digite o valor do produto\n");
scanf ("%f", &valordoproduto);
printf ("Digite o valor pago:\n");
scanf ("%f", &valorpago);
troco = (valordoproduto) - (valorpago);
 if (valordoproduto <=0)
 {
 printf ("O valor esta com preco errado e\n");
 "pause";
 }
 else
 {
 printf ("O valor do troco e: %f\n", troco);
 }
return 0;
}
Exercício Extra
#include <iostream>
using namespace std;
char * centenas[] = {"", "cento", "duzentos", "trezentos", "quatrocentso", "quientos", "seiscentos", "setecentos", "oitocentos", "novecentos"};
char * dezenas[] = {"dez", "onze", "doze", "treze", "quatorze", "quinze", "dezesseis", "dezessete", "dezoito", "dezenove"};
char * dezenasVinte[] = {"", "dez", "vinte", "trinta", "quarenta", "cinquenta", "sessenta", "setenta", "oitenta", "noventa"};
char * unidades [] = { "", "um", "dois", "tres", "quatro", "cinco", "seis", "sete", "oito", "nove"};
void imprimirUnidade(int centena, int dezena, int unidade) {
 if (centena == 0 && dezena == 0 && unidade == 0) {
 return;
 }
 
 cout << centenas[centena] << " ";
 
 if (centena > 0 && dezena > 0) {
 cout << "e ";
 }
 
 if (dezena == 1) {
 cout << dezenas[unidade] << " ";
 } else {
 cout << dezenasVinte[dezena] << " ";
 
 if (dezena > 0 && unidade > 0) {
 cout << "e ";
 }
 
 cout << unidades[unidade] << " ";
 }
}
void imprimirBilhao(int unidade) {
 switch (unidade) {
 case 1:
 cout << "um bilhao ";
 break;
 case 2: 
 cout << "dois bilhoes ";
 break;
 }
}
void imprimirMilhao(int centena, int dezena, int unidade) {
 if (centena == 0 && dezena == 0 && unidade == 0) {
 return;
 }
 
 imprimirUnidade(centena, dezena, unidade);
 
 if (unidade == 1 && dezena == 0 && centena == 0) {
 cout << "milhao ";
 } else {
 cout << "milhoes ";
 }
}
void imprimirMilhar(int centena, int dezena, int unidade) {
 if (centena == 0 && dezena == 0 && unidade == 0) {
 return;
 }
 
 imprimirUnidade(centena, dezena, unidade);
 
 cout << "mil ";
}
void numeroPorExtenso(unsigned long long long int num) {
 int ub, centMilhao, dezMilhao, unidMilhao, centMilhar, dezMilhar, uniMilhar, centena, dezena, unidade;
 cout << num << " = ";
 
 if (num == 0) {
 cout << "zero" << endl;
 return;
 }
 //Bilhao
 ub = num / 1000000000;
 num = num - (ub * 1000000000);
 //Milhao
 centMilhao = num / 100000000;
 num = num -(centMilhao *100000000);
 dezMilhao = num / 10000000;
 num = num -(dezMilhao *10000000);
 unidMilhao = num / 1000000;
 num = num - (unidMilhao *1000000);
 
 //Milhar
 centMilhar = num / 100000;
 num = num -(centMilhar *100000);
 dezMilhar = num / 10000;
 num = num - (dezMilhar*10000);
 uniMilhar = num / 1000;
 num = num - (uniMilhar *1000);
 
 //Unidade
 centena = num / 100;
 num = num - (centena *100);
 dezena = num / 10;
 num = num - (dezena*10);
 unidade = num / 1;
 num = num - (unidade *1);
 
 imprimirBilhao(ub);
 imprimirMilhao(centMilhao, dezMilhao, unidMilhao);
 imprimirMilhar(centMilhar, dezMilhar, uniMilhar);
 imprimirUnidade(centena, dezena, unidade);
 
 cout << endl;
}
int main() {
 unsigned long long long int numero;
 double f;
 
 cout << "Digite um numero:" << endl;
 cin >> numero;
 
 if (numero >= 0 && numero <= 2000000000)
 {
 for (unsigned long long long int i = 1; i <= 5; i++) {
 //f = numero * i;
 numeroPorExtenso(numero * i);
 } 
 } else {
 cout << "Numero invalido" << endl;
 }
 
 return 0;
}