Etapa 4 - Introdução à Estrutura Condicional
Introdução
Nos tópicos anteriores aprendemos um pouco sobre o processo de resolução de problemas computacionais pela criação de programas em linguagem C. Vimos os principais conceitos de compilação e linguagem de programação, console e alguns comandos básicos. Segue a lista deles:
-
printf(“Texto”, variáveis): comando de saída que imprime dados na tela do console;
-
scanf(“caractere_de_controle”, &var): comando de entrada que realiza a leitura de um valor digitado e armazenado em uma variável previamente declarado;
-
int/float/double/char var: declaração de variáveis do tipo int, float, double, char;
-
+, -, *, /, (,): operadores matemáticos de soma, subtração, multiplicação, divisão e parêntesis para fórmulas matemáticas;
-
=: operador de atribuição de valores à variáveis em memória.
Neste tópico vamos aprender de forma prática como utilizar estruturas condicionais para executar comandos somente se uma determinada condição for verdadeira.
Problema Resolvido: Monitor de Temperatura de uma Caldeira
Imagine que você é responsável por fiscalizar a temperatura de uma caldeira e, caso ela ultrapasse 200ºC, você deve informar ao responsável pelo setor e disparar um alarme. A fim de automatizar essa tarefa, você decidiu criar um programa em C que recebe uma temperatura e verifica se ela está acima de 200ºC. Caso esteja, o programa mostrará uma mensagem de alerta na tela do console.
Resolução
Vamos imaginar como esse programa deve funcionar. Veja os quadrinhos abaixo:
Repare que, o computador solicita a digitação de uma temperatura. O usuário digita a temperatura de 201 Cº. Como a temperatura digitada é maior que 200, ele emite uma mensagem de alerta.
Etapa 1: Montando o “Esqueleto” do Programa
Vamos colocar a mão na massa! Crie um novo programa C no Repl.it (se não tiver acesso, você pode fazer no papel também) e siga os passos abaixo
Passo 1 - Inserindo a biblioteca padrão stdio.h
Como vimos nos tópicos anteriores, todo programa C possui a declaração da biblioteca padrão de entrada e saída stdio.h, que contém as funções scanf() e printf() que usaremos a seguir. Insira o código abaixo:
#include <stdio.h>
Passo 2 - Insira a função principal int main(void)
int main(void) {
return 0;
}
Etapa 2: Declarando as Variáveis
Como vimos no tópico anterior, todo programa opera sobre dados informados e armazenados em memória. Nesse caso, temos apenas um dado que precisamos armazenar: a temperatura que será digitada (entrada de dados). Declare a variável na função principal:
int main(void) {
int temperatura;
return 0;
}
O código acima informa ao computador para reservar uma região na memória para armazenar uma temperatura inteira. Agora vamos usar os comandos printf e scanf para solicitar a temperatura e realizar sua leitura na variável temperatura.
Etapa 3: Programando a Entrada de Dados
O computador deve pedir ao usuário que informe um valor de temperatura em graus Célsius. Esse valor será do tipo int e será armazenado na variável temperatura. Para isso, o computador deverá mostrar uma mensagem na tela e aguardar a digitação do valor.
Vamos programar agora. Siga os passos abaixo:
Passo 1 - Imprimir a solicitação da velocidade na tela com a função printf()
printf("Informe uma temperatura em ºC: ");
Passo 2 - usar a função scanf() para fazer o computador aguardar a digitação de um valor e armazenar na variável temperatura.
scanf("%d", &temperatura);
Etapa 4: Programando a Verificação da Temperatura
Nesta etapa, vamos programar uma estrutura condicional simples, que permite que alguns comandos sejam executados somente se uma condição for verdadeira. Utilize o comando If(condição){ } abaixo:
Repare que o comando "if" ("se" do Inglês) inicia com a palavra reservada if, seguida de uma condição entre parêntesis (temperatura > 200) e um par de chaves { } com o comando printf dentro. O comando printf(“Disparar Alarme!”) somente será executado se a condição temperatura > 200 for verdadeira, ou seja se o valor digitado e armazenado na variável temperatura seja maior que 200.
Etapa 5: Imprimindo um texto de encerramento
Para finalizarmos esta etapa, adicione mais um printf() após a chave de fechamento do if com um texto de finalização.
O printf() que você acabou de escrever está fora do escopo do if, ou seja, fora do abre e fecha chaves do if “{“ “}”. Desse modo, esse printf não é afetado pela condição do if e sempre será executado, independente do valor da temperatura ser maior do que 200 ou não.
Agora, execute o programa várias vezes e digite valores maiores e menores do que 200. Observe atentamente o comportamento do programa.
Empacotando
Nesta etapa aprendemos a utilizar a forma mais simples da estrutura condicional if(condição){ comandos… }. Veja sua estrutura geral e a tabela de operadores de comparação abaixo e faça os exercícios propostos.
Tabela de Operadores de Comparação do C
Veja abaixo os operadores que podemos utilizar para comparar valores, chamados operadores relacionais da linguagem C.