Buscar

[RESOLUÇÃO] Exercícios de Estruturas de Seleção Switch-Case (Programação de Computadores/C)

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 8 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 8 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

Prévia do material em texto

Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
 Programação de Computadores | 3ª Fase - Engenharia Elétrica | Matheus Willian Sprotte 
Atividade 3 - Estrutura de Seleção Switch-Case 
 1. Um clube de futebol pretende classificar seus atletas em categorias e para isso ele contratou 
você para resolver este problema usando um programa de computador. a partir da leitura do nome e 
da idade, classifique-o de acordo com a tabela. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t**********************************\n"); 
 printf("\t\t* Classificador de Atletas *\n"); 
 printf("\t\t**********************************\n\n"); 
 printf("\tQual a idade? -> "); 
 int i; 
 scanf("%d", &i); 
 fflush(stdin); 
 switch(i) 
 { 
 case 5 ... 10: 
 printf("\n\tCategoria Infantil.\n\n"); 
 break; 
 case 11 ... 15: 
 printf("\n\tCategoria Juvenil.\n\n"); 
 break; 
 case 16 ... 20: 
 printf("\n\tCategoria Júnior.\n\n"); 
 break; 
 case 21 ... 25: 
 printf("\n\tCategoria Profissional.\n\n"); 
 break; 
 default: 
 printf("\n\tIdade inválida.\n\n"); 
 
 } 
 system("PAUSE"); 
 return 0; 
} 
 
 2. Faça um algoritmo que leia dois números e uma operação (A)dição, (S)ubtração, 
(M)ultiplicação, (D)ivisão, (Q)uociente Inteiro, (R)esto. A seguir execute a operação desejada, e 
informe uma mensagem caso a operação seja inválida. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,""); 
 printf("\n\t****************************************\n"); 
 printf("\t* Cálculo de Múltiplas Operações *\n"); 
 printf("\t****************************************\n\n"); 
 printf("\tDigite um número -> "); 
 int x; 
 scanf("%d", &x); 
 fflush(stdin); 
 printf("\tDigite outro número -> "); 
 int y; 
 scanf("%d", &y); 
 fflush(stdin); 
 int a = x + y; 
 int s = x - y; 
 int m = x * y; 
 float xc = (float)x; 
 float yc = (float)y; 
 float d = (xc / yc); 
 int r = x % y; 
 printf("\n\tDigite a inicial da operação desejada (ex.: a para adição) -> "); 
 char var; 
 scanf("%s", &var); 
 fflush(stdin); 
 switch(var) 
 { 
 case 'a': 
 case 'A': 
 printf("\n\tAdição.\n"); 
 printf("\tO resultado da operação é: -> %d.\n\n", a); 
 break; 
 case 's': 
 case 'S': 
 printf("\n\tSubtração.\n"); 
 printf("\tO resultado da operação é: -> %d.\n\n", s); 
 break; 
 case 'm': 
 case 'M': 
 printf("\n\tMultiplicação.\n"); 
 printf("\tO resultado da operação é: -> %d.\n\n", m); 
 break; 
 case 'd': 
 case 'D': 
 printf("\n\tDivisão.\n"); 
 printf("\tO resultado da operação é: -> %f.\n\n", d); 
 break; 
 case 'r': 
 case 'R': 
 printf("\n\tResto.\n"); 
 printf("\tO resultado da operação é: -> %d.\n\n", r); 
 break; 
 default: 
 printf("\n\tOperação inválida!\n\n"); 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
 system("PAUSE"); 
 return 0; 
 } 
} 
 
 3. Suponha que você comprou um novo smartphone e você deseja conhecer as várias condições 
de pagamento. Construa um algoritmo que receba o valor da venda, escolha a condição de pagamento 
no menu e mostre o total da venda final conforme condições mostradas na tabela. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t********************************\n"); 
 printf("\t\t* Cálculo do Valor Final *\n"); 
 printf("\t\t********************************\n\n"); 
 printf("\tQual o preço do smartphone? -> "); 
 float p; 
 scanf("%f", &p); 
 fflush(stdin); 
 float vv = p*0.90; 
 float vpt = p*0.95; 
 float vps = p; 
 float vpn = p*1.05; 
 float vpd = p*0.92; 
 float vpc = p*0.93; 
 printf("\tQual é a condição de pagamento? \n\tNigite: \n\t'A' Para venda a vista.\n\t'B' Para venda a prazo 
30 dias.\n\t'C' Para venda a prazo 60 dias.\n\t'D' Para venda a prazo 90 dias.\n\t'E' Para venda com cartão de 
débito.\n\t'F' Para venda com cartão de crédito.\n\t-> "); 
 char op; 
 scanf("%s", &op); 
 fflush(stdin); 
 switch(op) 
 { 
 case 'A': 
 case 'a': 
 printf("\n\tO valor final fica: R$%.2f.\n\n", vv); 
 break; 
 case 'B': 
 case 'b': 
 printf("\n\tO valor final fica: R$%.2f.\n\n", vpt); 
 break; 
 case 'C': 
 case 'c': 
 printf("\n\tO valor final fica: R$%.2f.\n\n", vps); 
 break; 
 case 'D': 
 case 'd': 
 printf("\n\tO valor final fica: R$%.2f.\n\n", vpn); 
 break; 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
 case 'E': 
 case 'e': 
 printf("\n\tO valor final fica: R$%.2f.\n\n", vpd); 
 break; 
 case 'F': 
 case 'f': 
 printf("\n\tO valor final fica: R$%.2f.\n\n", vpc); 
 break; 
 default: 
 printf("\n\tOpção inválida.\n\n"); 
 
 } 
 system("PAUSE"); 
 return 0; 
} 
 
 4. Elabore um algoritmo que leia a primeira letra do estado civil de uma pessoa e mostre uma 
mensagem com a sua descrição (Solteiro, Casado, Viúvo, Divorciado). Mostre uma mensagem de erro, 
se necessário. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t***********************************\n"); 
 printf("\t\t* Definidor do Estado Civil *\n"); 
 printf("\t\t***********************************\n\n"); 
 printf("\tQual é a inicial do seu estado civil? -> "); 
 char ec; 
 scanf("%s", &ec); 
 fflush(stdin); 
 switch(ec) 
 { 
 case 'S': 
 case 's': 
 printf("\n\tO estado civil é solteiro.\n\n"); 
 break; 
 case 'C': 
 case 'c': 
 printf("\n\tO estado civil é casado.\n\n"); 
 break; 
 case 'V': 
 case 'v': 
 printf("\n\tO estado civil é viúvo.\n\n"); 
 break; 
 case 'D': 
 case 'd': 
 printf("\n\tO estado civil é divorciado.\n\n"); 
 break; 
 default: 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
 printf("\n\tInválido.\n\n"); 
 system("PAUSE"); 
 return 0; 
 } 
} 
 
 5. Considerando os números de 1 a 7 como dias da semana (1=Domingo), crie um algoritmo 
que contenha uma função que receba um número inteiro como parâmetro e mostre o dia da semana 
por extenso. Exiba mensagem de erro caso necessário. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
intmain () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t*********************************\n"); 
 printf("\t\t* Definidor Dia da Semana *\n"); 
 printf("\t\t*********************************\n\n"); 
 printf("\tQual é o número do dia da semana desejado?\n\t-> "); 
 int d; 
 scanf("%s", &d); 
 fflush(stdin); 
 switch(d) 
 { 
 case '1': 
 printf("\n\tO dia é domingo.\n\n"); 
 break; 
 case '2': 
 printf("\n\tO dia é segunda.\n\n"); 
 break; 
 case '3': 
 printf("\n\tO dia é terça.\n\n"); 
 break; 
 case '4': 
 printf("\n\tO dia é quarta.\n\n"); 
 break; 
 case '5': 
 printf("\n\tO dia é quinta.\n\n"); 
 break; 
 case '6': 
 printf("\n\tO dia é sexta.\n\n"); 
 break; 
 case '7': 
 printf("\n\tO dia é sábado.\n\n"); 
 break; 
 default: 
 printf("\n\tInválido.\n\n"); 
 system("PAUSE"); 
 return 0; 
 } 
} 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
 
 6. Crie um algoritmo que leia um caracter e determine se este caracter é uma vogal ou uma 
consoante. Caso o caracter não esteja na lista das 26 letras, exiba uma mensagem de erro. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t****************************************\n"); 
 printf("\t\t* Definidor de Vogais/Consoantes *\n"); 
 printf("\t\t****************************************\n\n"); 
 printf("\tDigite uma letra:\n\t-> "); 
 char lt; 
 scanf("%s", &lt); 
 fflush(stdin); 
 switch(lt) 
 { 
 case 'A': 
 case 'a': 
 printf("\n\tÉ uma vogal.\n\n"); 
 break; 
 case 'E': 
 case 'e': 
 printf("\n\tÉ uma vogal.\n\n"); 
 break; 
 case 'I': 
 case 'i': 
 printf("\n\tÉ uma vogal.\n\n"); 
 break; 
 case 'O': 
 case 'o': 
 printf("\n\tÉ uma vogal.\n\n"); 
 break; 
 case 'U': 
 case 'u': 
 printf("\n\tÉ uma vogal.\n\n"); 
 break; 
 case '!'...'9': 
 printf("\n\tNão alfabético.\n\n"); 
 break; 
 default: 
 printf("\n\tÉ uma consoante.\n\n"); 
 system("PAUSE"); 
 return 0; 
 } 
} 
 
 7. Usando números aleatórios, construa o jogo "Pedra-Papel-Tesoura", considerando 
1=Pedra, 2=Papel, 3=Tesoura, e determine o vencedor. 
 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
 Código fonte da resolução: 
 
#include<stdio.h> 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t*****************************\n"); 
 printf("\t\t* Pedra Papel Tesoura *\n"); 
 printf("\t\t*****************************\n\n"); 
 printf ("\n\tDigite:\n\t'0' para pedra\n\t'1' para Papel\n\t'2' para tesoura\n\t-> "); 
 int pl, pc; 
 scanf ("%d", &pl); 
 if (pl < 0 || pl >=3) 
 { 
 printf("\n\tVocê deu um comando inválido.\n\n"); 
 } 
 srand(time(NULL)); 
 pc = rand() % 3; 
 switch(pc) 
 { 
 case 0: 
 printf ("\n\tPC jogou pedra...\n"); 
 break; 
 case 1: 
 printf ("\n\tPC jogou papel...\n"); 
 break; 
 case 2: 
 printf ("\n\tPC jogou tesoura...\n"); 
 break; 
 } 
 if ((pl == 0 && pc == 2) || (pl == 1 && pc == 0) || (pl == 2 && pc == 1)) 
 { 
 printf("\tVocê venceu!\n\n"); 
 } 
 else if (pl == pc) 
 { 
 printf ("\tEmpate!\n\n"); 
 } 
 else 
 { 
 printf ("\tVocê perdeu!\n\n"); 
 } 
 system("PAUSE"); 
 return 0; 
} 
 
 8. Construa um algoritmo que mostre um número de 0 a 9 lido pelo teclado, e mostre seu 
correspondente por extenso. 
 
 Código fonte da resolução: 
 
#include<stdio.h> 
 
Instituto Federal de Santa Catarina – Jaraguá do Sul - RAU 
Rua dos Imigrantes, 445 | Rau | Jaraguá do Sul /SC | CEP: 89254-430 
Fone: (47) 3276-9600 | www.gw.ifsc.edu.br | CNPJ 11.402.887/0005-94 
#include<math.h> 
#include<stdlib.h> 
#include<locale.h> 
int main () 
{ 
 setlocale(LC_ALL,"portuguese"); 
 printf("\n\t\t***************************\n"); 
 printf("\t\t* Leitor de Números *\n"); 
 printf("\t\t***************************\n\n"); 
 printf("\tDigite algum número:\n\t-> "); 
 int n; 
 scanf("%s", &n); 
 fflush(stdin); 
 switch(n) 
 { 
 case '0': 
 printf("\n\tO número é zero.\n\n"); 
 break; 
 case '1': 
 printf("\n\tO número é um.\n\n"); 
 break; 
 case '2': 
 printf("\n\tO número é dois.\n\n"); 
 break; 
 case '3': 
 printf("\n\tO número é três.\n\n"); 
 break; 
 case '4': 
 printf("\n\tO número é quatro.\n\n"); 
 break; 
 case '5': 
 printf("\n\tO número é cinco.\n\n"); 
 break; 
 case '6': 
 printf("\n\tO número é seis.\n\n"); 
 break; 
 case '7': 
 printf("\n\tO número é sete.\n\n"); 
 break; 
 case '8': 
 printf("\n\tO número é oito.\n\n"); 
 break; 
 case '9': 
 printf("\n\tO número é nove.\n\n"); 
 break; 
 default: 
 printf("\n\tComando inválido.\n\n"); 
 system("PAUSE"); 
 return 0; 
 } 
}

Outros materiais