Baixe o app para aproveitar ainda mais
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 Lista de exercícios 1 - Estruturas de Seleção Simples 1. Construa um algoritmo que mostre a mensagem “FRIO” se a temperatura informada for inferior a 22ºC, caso contrário, mostre a mensagem “QUENTE”. Código fonte da resolução: #include<stdio.h> #include<locale.h> #include<stdlib.h> int main() { setlocale(LC_ALL,""); printf("\n\t\t*****************************\n"); printf("\t\t* Leitor de Temperatura *\n"); printf("\t\t*****************************\n\n"); printf("\tQual é a temperatura? -> "); int temp; scanf("%d",&temp); fflush(stdin); if (temp < 22) { printf("\tFRIO\n\n"); } else { printf("\tQUENTE\n\n"); } system("PAUSE"); return 0; } 2. Faça um algoritmo que leia dois números A e B e imprima o maior deles. Código fonte da resolução: #include<stdio.h> #include<locale.h> #include<stdlib.h> int main() { setlocale(LC_ALL,""); printf("\n\t\t*****************************\n"); printf("\t\t* Comparador de números *\n"); printf("\t\t*****************************\n\n"); printf("\tDigite um número: -> "); int a; scanf("%d",&a); fflush(stdin); printf("\tDigite outro número: -> "); int b; scanf("%d",&b); fflush(stdin); 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 if (a > b) { printf("\n\tO maior número é: %d.\n\n", a); } if (a < b) { printf("\n\tO maior número é: %d.\n\n", b); } system("PAUSE"); return 0; } 3. Crie um algoritmo que leia o numero total de aulas e o numero de faltas de um aluno. Em seguida, calcule o percentual de frequencia. Com base nessa frequencia, o sistema deve mostrar as mensagens: → se a frequencia for igual ou superior a 75% “FREQUENCIA SUFICIENTE” → caso contrario, “FREQUENCIA INSUFICIENTE”. Código fonte da resolução: #include<stdio.h> #include<math.h> #include<locale.h> #include<stdlib.h> int main() { setlocale(LC_ALL,""); printf("\n\t************************************\n"); printf("\t* Cálculo da Frequência do Aluno *\n"); printf("\t************************************\n\n"); printf("\tQual é o número de aulas do aluno? -> "); float aulas; scanf("%f", &aulas); fflush(stdin); printf("\tQual é o número de faltas desse aluno? -> "); float faltas; scanf("%f", &faltas); fflush(stdin); int pres = (aulas - faltas); float freq = pres*100/aulas; printf("\tEle tem %d presenças.", pres); printf("\n\tA frequência dele é de: %.2f por cento.\n", freq); if (freq >= 75) { printf("\n\tSUFICIENTE.\n\n"); } if (freq < 75) { printf("\n\tINSUFICIENTE.\n\n"); } } 4. Desenvolva um algoritmo que leia o valor de vendas do mes de um representante e que determine a comissao que recebera. Se o valor das vendas for abaixo de R$ 50.000,00 a comissao sera de 2.5% sobre o valor das vendas, senao a comissao sera de 3.2%. 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 * Arredonde o valor da comissao para 2 casas decimais. Código fonte da resolução: #include<stdio.h> #include<math.h> #include<locale.h> #include<stdlib.h> int main() { setlocale(LC_ALL,""); printf("\n\t**************************************\n"); printf("\t* Cálculo do valor da comissão *\n"); printf("\t**************************************\n\n"); printf("\tQual o valor de vendas? -> "); float v; scanf("%f", &v); fflush(stdin); if (v > 50000) { float vc = v*0.032; printf("\tA comissão será de: R$%.2f\n\n", vc); } if (v < 50000) { float vc = v*0.025; printf("\tA comissão será de: R$%.2f\n\n", vc); } system("PAUSE"); return 0; } 5. Uma determinada empresa pretende diminuir a amplitude da distribuicao de renda de forma gradativa aos seus colaboradores. Aqueles que ganham ate 2000 receberao 3% de aumento. O restante dos funcionarios nao recebera aumento. Leia o nome e o salario atual de um funcionario. Em seguida determine e mostre o novo salario dele com 2 casas decimais. Código fonte de resolução: #include<stdio.h> #include<math.h> #include<locale.h> #include<stdlib.h> int main() { setlocale(LC_ALL,""); printf("\n\t******************************************\n"); printf("\t* Cálculo da Distribuição de Renda *\n"); printf("\t******************************************\n"); printf("\n\tQual o nome do funcionário? -> "); char n [20]; gets(n); fflush(stdin); printf("\tQual o salário dele? -> "); float s; 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 scanf("%f", &s); fflush(stdin); if (s < 2000) { float ns = s*1.03; printf("\n\tO novo salário do(a) %s será: R$%.2f\n\n", n, ns); } if (s > 2000) { printf("\n\tO(A) %s não receberá aumento.\n\n", n); } system("PAUSE"); return 0; } 6. Faca um algoritmo que leia um numero e determine se este numero e par ou impar. • Modifique seu programa, criando uma funcao chamada "PAR" que: → receba um inteiro de entrada → retorne True (1) se o numero for par, caso contrario retorne FALSE (0) Código fonte da resolução: #include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int main () { setlocale(LC_ALL,""); printf("\n\t*******************\n"); printf("\t* Par ou Ímpar *\n"); printf("\t*******************\n\n"); printf("\tDigite um numero: -> "); int num; scanf("%d", &num); if (num % 2 == 0) { printf("\n\tO número é par.\n\n"); } else { printf("\n\tO número é ímpar.\n\n"); } system("PAUSE"); return 0; } Código modificado para o segundo item: #include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int par(int num) 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 { setlocale(LC_ALL,""); printf("\n\tDigite um número: "); scanf("%d", &num); if (num % 2 == 0) { return 1; } else { return 0; } } int main () { setlocale(LC_ALL,""); printf("\n\t*******************\n"); printf("\t* Par ou Ímpar *\n"); printf("\t*******************\n\n"); int valor; int resultado; resultado = par(valor); if (resultado == 1) { printf("\n\tO número é par.\n\n"); } else { printf("\n\tO número é ímpar.\n\n"); } system("PAUSE"); return 0; } 7. Ler um valor e dizer se este e positivo, negativo ou zero. Código fonte da resolução:#include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int main () { setlocale(LC_ALL,""); printf("\n\t*******************************\n"); printf("\t* Interpretador de Sinais *\n"); printf("\t*******************************\n\n"); printf("\tDigite um número: -> "); float n; scanf("%f", &n); fflush(stdin);if (n == 0) { printf("\tZERO\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 if (n > 0) { printf("\tPOSITIVO\n\n"); } if (n < 0) { printf("\tNEGATIVO\n\n"); } system("PAUSE"); return 0; } 8. Desenvolva um algoritmo que leia o valor de vendas do mes de um vendedor de automoveis usados e que determine a comissao que recebera de acordo com a tabela abaixo. O sistema deve exibir a mensagem valor invalido caso este seja menor que 0 (zero). Código fonte da resolução: #include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int main () { setlocale(LC_ALL,""); printf("\n\t***************************\n"); printf("\t* Cálculo da Comissão *\n"); printf("\t***************************\n\n"); printf("\tQual o valor das vendas (em milhares)? -> "); float v; scanf("%f", &v); fflush(stdin); if (v >= 0 && v < 100) { float c; c = (v*0.02)*1000; printf("\tA comissão será de: R$%.2f\n\n", c); } if (v>= 100 && v <=200) { float c; c = (v*0.025)*1000; printf("\tA comissão será de: R$%.2f\n\n", c); } if (v > 200) { float c; c = (v*0.03)*1000; printf("\tA comissão será de: R$%.2f\n\n", c); } if (v < 0) { printf("\tVALOR INVÁLIDO.\n\n"); } system("PAUSE"); 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 return 0; } 9. Um hotel cobra R$ 60.00 a diaria e mais uma taxa de limpeza. A taxa de limpeza e de: - R$ 8.00 por diaria, se o numero de diarias for ate 5 - R$ 6.50 por diaria, se o numero de diarias for ate 15 - R$ 5.50 por diaria, se o numero de diarias for superior a 15 Construa um algoritmo que mostre o total da conta de um cliente. * Formate os numeros com 2 casas decimais ** Se o numero de diarias informado for menor que 0, atribuir o valor 0 a conta do cliente. Código fonte da resolução: #include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int main () { setlocale(LC_ALL,""); printf("\n\t*************************************\n"); printf("\t* Cálculo da Conta do Cliente *\n"); printf("\t*************************************\n\n"); printf("\tQual foi o número de diárias? -> "); int d; scanf("%d", &d); fflush(stdin); if (d <= 0) { printf("\n\tNão há diária, o total é: R$0,00.\n\n"); } float v; if (d>0 && d<=5) { v= d*68; printf("\n\tO total é: R$%.2f.\n\n", v);; } if (d>5 && d<=15) { v= d*66.50; printf("\n\tO total é: R$%.2f.\n\n", v); } if (d>15) { v= d*65.50; printf("\n\tO total é: R$%.2f.\n\n", v); } system("PAUSE"); return 0; } 10. Elabore um algoritmo que leia dois numeros e mostre qual e o maior, qual e o menor ou se eles sao iguais. Código fonte da resolução: 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<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int main () { setlocale(LC_ALL,""); printf("\n\t**********************************\n"); printf("\t* Interpretador de Números *\n"); printf("\t**********************************\n\n"); printf("\tDigite um número -> "); int a; scanf("%d", &a); printf("\tDigite outro número -> "); int b; scanf("%d", &b); if (a>b) { printf("\n\tO maior é %d e o menor é %d.\n\n", a, b); } if (a<b) { printf("\n\tO maior é %d e o menor é %d.\n\n", b, a); } if (a==b) { printf("\tEles são iguais!\n\n"); } system("PAUSE"); return 0; } 11. Desenvolva um algoritmo que leia dois numeros e o tipo da operacao: (A)dicao, (S)ubtracao, (M)ultiplicacao, (D)ivisao, (R)esto. Caso a operacao informada nao seja nenhuma das anteriores, o programa deve mostrar a mensagem: “Operacao Invalida”. Caso seja valida, execute a operacao e mostre o resultado. Código fonte da resolução: #include<stdio.h> #include<math.h> #include<stdlib.h> #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); 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("\tDigite outro número -> "); int y; scanf("%d", &y); fflush(stdin); int adi = x + y; int sub = x - y; int mul = x * y; float xc = (float)x; float yc = (float)y; float div = (xc / yc); int rst = x % y; printf("\n\tDigite a inicial da operação desejada (ex.: a para adição) -> "); char op [2]; scanf("%s", &op); fflush(stdin); if (strcmp(op,"a")==0) { printf("\n\tAdição.\n"); printf("\tO resultado da operação é: -> %d.\n\n", adi); } else if (strcmp(op,"s")==0) { printf("\n\tSubtração.\n"); printf("\tO resultado da operação é: -> %d.\n\n", sub); } else if (strcmp(op,"m")==0) { printf("\n\tMultiplicação.\n"); printf("\tO resultado da operação é: -> %d.\n\n", mul); } else if (strcmp(op,"d")==0) { printf("\n\tDivisão.\n"); printf("\tO resultado da operação é: -> %f.\n\n", div); } else if (strcmp(op,"r")==0) { printf("\n\tResto.\n"); printf("\tO resultado da operação é: -> %d.\n\n", rst); } else printf("\n\tOperação inválida!\n\n"); system("PAUSE"); return 0; } 12. Desenvolva um algoritmo/programa que leia tres valores inteiros correspondentes ao dia, mes e ano de uma determinada data. Em seguida o programa deve mostrar a data por extenso. Código fonte da resolução: #include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.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 int main () { setlocale(LC_ALL,""); printf("\n\t********************************\n"); printf("\t* Interpretador de datas *\n"); printf("\t********************************\n\n"); printf("\tDigite um dia: "); int d; scanf("%d", &d); fflush(stdin); printf("\tDigite um mês: "); int m; scanf("%d", &m);fflush(stdin); printf("\tDigite um ano: "); int a; scanf("%d", &a); fflush(stdin); if (m==1) { printf("\n\tA data é: %d de janeiro de %d.\n\n", d, a); } if (m==2) { printf("\n\tA data é: %d de fevereiro de %d.\n\n", d, a); } if (m==3) { printf("\n\tA data é: %d de março de %d.\n\n", d, a); } if (m==4) { printf("\n\tA data é: %d de abril de %d.\n\n", d, a); } if (m==5) { printf("\n\tA data é: %d de maio de %d.\n\n", d, a); } if (m==6) { printf("\n\tA data é: %d de junho de %d.\n\n", d, a); } if (m==7) { printf("\n\tA data é: %d de julho de %d.\n\n", d, a); } if (m==8) { printf("\n\tA data é: %d de agosto de %d.\n\n", d, a); } if (m==9) { printf("\n\tA data é: %d de setembro de %d.\n\n", d, a); } if (m==10) 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\tA data é: %d de outuro de %d.\n\n", d, a); } if (m==11) { printf("\n\tA data é: %d de novembro de %d.\n\n", d, a); } if (m==12) { printf("\n\tA data é: %d de dezembro de %d.\n\n", d, a); } system("PAUSE"); return 0; } 13. Escrever um programa para ler um peso na Terra, e o numero de um planeta, e imprimir o valor do seu peso equivalente neste planeta segundo a tabela abaixo. Mostre o peso com apenas uma casa decimal. Código fonte da resolução: #include<stdio.h> #include<math.h> #include<stdlib.h> #include<locale.h> int main () { setlocale(LC_ALL,""); printf("\n\t********************************************\n"); printf("\t* Cálculo do peso em vários planetas *\n"); printf("\t********************************************\n\n"); printf("\tQual o peso terreste que desejas converter? -> "); float pt; scanf("%f", &pt); fflush(stdin); printf("\n\n\tTecle o número correspondente a cada planeta: \n\n\t1 -> Mercúrio\n\t2 -> Vênus\n\t3 -> Marte\n\t4 -> Júpter\n\t5 -> Saturno\n\t6 -> Urano\n\n\t-> "); int n; scanf("%d", &n); fflush(stdin); if (n==1) { float pm = pt*0.37; printf("\n\tEsse peso em Mercúrio é: %.1f.\n\n", pm); } if (n==2) { float pv = pt*0.88; printf("\n\tEsse peso em Vênus é: %.1f.\n\n", pv); } if (n==3) { float pma = pt*0.38; printf("\n\tEsse peso em Marte é: %.1f.\n\n", pma); } 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 if (n==4) { float pj = pt*2.64; printf("\n\tEsse peso em Júpter é: %.1f.\n\n", pj); } if (n==5) { float ps = pt*1.15; printf("\n\tEsse peso em Saturno é: %.1f.\n\n", ps); } if (n==6) { float pu = pt*1.17; printf("\n\tEsse peso em Urano é: %.1f.\n\n", pu); } system("PAUSE"); return 0; }
Compartilhar