Algoritmos em C: Salário, Switch/Case e Condicionais

Classificado em Grego

Escrito em em português com um tamanho de 4,53 KB

Esta seção apresenta três exercícios fundamentais de programação em C, focados no uso de estruturas condicionais (if/else) e estruturas de múltipla escolha (switch/case) para manipulação de dados e criação de menus interativos.

1. Cálculo de Reajuste Salarial e Impostos

Descrição do Problema

Desenvolva um algoritmo para ler o nome e o salário de um funcionário e reajustá-lo. O aumento será de 15% se o salário for superior a R$ 1.200,00, e 21% se for menor ou igual a R$ 1.200,00. Após o aumento, desconte 8% de impostos. Imprima o nome do funcionário, o salário inicial, o salário reajustado e o salário final.

Código em C (If/Else)

#include <stdio.h>
#include <stdlib.h>

int main() { char nome[50]; float si; // Salário Inicial float sr; // Salário Reajustado float sf; // Salário Final

printf("INFORME O NOME: ");
scanf("%s", nome);

printf("INFORME O SALARIO INICIAL (R$): ");
scanf("%f", &amp;si);

if (si &gt; 1200.00) {
    sr = si * 1.15; // Aumento de 15%
} else {
    sr = si * 1.21; // Aumento de 21%
}

sf = sr * 0.92; // Desconto de 8% de impostos (100% - 8% = 92%)

printf("\n--- RESULTADO DO CALCULO ---\n");
printf("NOME DO FUNCIONARIO: %s\n", nome);
printf("SALARIO INICIAL: R$ %.2f\n", si);
printf("SALARIO REAJUSTADO: R$ %.2f\n", sr);
printf("SALARIO FINAL (APOS IMPOSTOS): R$ %.2f\n", sf);

system("pause");
return 0;

}

2. Seleção de Dia da Semana

Descrição do Problema

Crie um algoritmo que solicite ao usuário uma opção inteira de 1 a 7 e exiba o dia da semana correspondente. Caso a opção seja inválida, uma mensagem de erro deve ser mostrada. Este exercício demonstra o uso eficiente da estrutura switch/case.

Código em C (Switch/Case)

#include <stdio.h>
#include <stdlib.h>

int main() { int OP;

printf("--- DIAS DA SEMANA ---\n");
printf("1 - Domingo\n");
printf("2 - Segunda-feira\n");
printf("3 - Terça-feira\n");
printf("4 - Quarta-feira\n");
printf("5 - Quinta-feira\n");
printf("6 - Sexta-feira\n");
printf("7 - Sábado\n\n");

printf("Digite a Opção Desejada: ");
scanf("%d", &amp;OP);

system("cls"); // Limpa a tela

printf("O dia correspondente é: ");
switch(OP) {
    case 1: 
        printf("Domingo\n"); 
        break; 
    case 2: 
        printf("Segunda-feira\n"); 
        break; 
    case 3: 
        printf("Terça-feira\n"); 
        break; 
    case 4: 
        printf("Quarta-feira\n"); 
        break; 
    case 5: 
        printf("Quinta-feira\n"); 
        break; 
    case 6: 
        printf("Sexta-feira\n"); 
        break; 
    case 7: 
        printf("Sábado\n\n"); 
        break; 
    default: 
        printf("Opção Inválida\n"); 
        break; 
} 

system("pause"); 
return 0;

}

3. Menu de Opções para Estado Civil

Descrição do Problema

Desenvolva um algoritmo que apresente um menu de opções para o estado civil de uma pessoa e exiba a escolha do usuário. As opções devem incluir: Casado(a), Solteiro(a), Viúvo(a), Desquitado(a) e Divorciado(a). Caso a opção seja inválida, uma mensagem de erro deve ser exibida.

Código em C (Switch/Case)

#include <stdio.h>
#include <stdlib.h>

int main() { int opcao;

printf("********* ESTADO CIVIL **********\n\n");
printf("1 - CASADO(A)\n");
printf("2 - SOLTEIRO(A)\n");
printf("3 - VIÚVO(A)\n");
printf("4 - DESQUITADO(A)\n");
printf("5 - DIVORCIADO(A)\n");

printf("\n\nDigite a Opção Desejada ---&gt; ");
scanf("%d", &amp;opcao);

system("cls");

printf("****************************************\n\n");
printf("Estado Civil Selecionado: ");

switch (opcao) {
    case 1: 
        printf("CASADO(A)\n");
        break;
    case 2: 
        printf("SOLTEIRO(A)\n");
        break;
    case 3: 
        printf("VIÚVO(A)\n");
        break;
    case 4: 
        printf("DESQUITADO(A)\n");
        break;
    case 5: 
        printf("DIVORCIADO(A)\n");
        break;
    default: 
        printf("Opção Inválida\n"); 
        break;
}

printf("\n\n****************************************\n\n");
system("pause");
return 0;

}

Entradas relacionadas: