Você está na página 1de 17

1º Exercício resolvido - Estrutura de de seleção - if e if-else em

linguagem C

Faça um algoritmo para ler dois números inteiros e informar se


estes são iguais
ou diferentes.

Código-fonte

#include<stdio.h>
#include<locale.h> /* Arquivo de cabeçalho que contém a
declaração da função setlocale que nos permite mostrar na
tela, os caracteres da língua Portuguesa como por exemplo ç ,
á, ã */

int main ()
{
int num1,num2,maior;

setlocale(LC_ALL,"Portuguese");
printf("\n Digite o primeiro numero : ");
scanf("%d",&num1);
printf("\n Digite o segundo numero : ");
scanf("%d",&num2);

if(num1==num2)
{
printf("\n Os números digitados são iguais \n");
} else
printf("\n Os números digitados são diferentes \n");
return 0;
}

2º Exercício resolvido - estrutura de seleção - if e if-else


Faça um programa que o usuário informe o salário recebido e o
total gasto.
Deverá ser exibido na tela “Gastos dentro do orçamento” caso
o valor gasto não
ultrapasse o valor do salário e “Orçamento estourado” se o
valor gasto
ultrapassar o valor do salário.

Código-fonte

#include<stdio.h>
#include<locale.h>/* Arquivo de cabeçalho que contém a
declaração da função setlocale que nos permite mostrar na
tela, os caracteres da língua Portuguesa como por exemplo ç ,
á, ã */

int main()
{
float sal_recebido,total;

setlocale(LC_ALL,"Portuguese");
printf("\n Informe seu salário: ");
scanf ("%f",&sal_recebido);
printf("\n Informe o total de seus gastos: ");
scanf ("%f",&total);

if(sal_recebido>=total)
{
printf ("\n Gastos dentro do Orçamento");
}else
printf ("\n Orçamento estourado");
return 0;
}

3º Exercício resolvido - if e if-else

Escrever um programa em Linguagem C para ler um número


inteiro e informar se ele é divisível por 5.
Código-fonte

#include<stdio.h>
#include<locale.h>

int main()
{
int num;
setlocale(LC_ALL,"Portuguese");
printf("\n Informe o número: \n\n");
scanf("%d",&num);

if(num%5==0)
{
printf("\n O número %d é divisível por 5",num);
}else
{
printf("\n O número %d não é divisível por 5",num);
}
return 0;
}

4º Exercício resolvido - if e if-else

Escrever um programa em C que lê um valor i,inteiro e positivo


e 3 valores a, b e c. Se o valor de i é par então calcular e
imprimir na tela a média aritmética de a, b e c. Caso contrário,
se i>10 então calcular e imprimir na tela a média ponderada de
a, b e c. Os pesos dos valores são respectivamente 2, 3 e 4.

Solução

#include<stdio.h>
int main ( )
{
int i;
float a, b, c, media_arit,media_pond;
printf("Digite um valor inteiro e positivo: ");
scanf("%d", &i);
/*O programa tem que ler um valor i que seja positivo,ou seja,
maior que zero. Por isso, vou colocar um if para mostrar uma
mensagem caso o Usuário digite um valor i negativo*/

if(i<=0)
{
printf(" \t\t Ops! \n Insira um valor inteiro e positivo: ");
}

if(i>0) /*Se o Usuário digitar um valor maior que zero, os


comandos abaixo serão executados */
{
printf("\n Digite o valor de A: ");
scanf("%f",&a);
printf(" Digite o valor de B: ");
scanf("%f",&b);
printf(" Digite o valor de C: ");
scanf("%f",&c);
/*Agora que já lemos os valores de i,a,b e c vamos usar um if
para saber se i é par e um outro if para saber se i é maior que
10 */
if((i%2) == 0) /*caso i seja par, calcula-se a média
aritmética*/
{
media_arit=(a+b+c)/3;
printf("Media aritmetica: %.2f\n", media_arit);
}
else if(i>10)
{
media_pond=(2*a + 3*b + 4*c)/9;
printf("Media ponderada: %.2f\n", media_pond);
}

}
return 0;
}
Nota: O zero é um número neutro, ou seja, não é um número
positivo e nem sequer um número negativo.

5º Exercício resolvido

Desenvolva um programa que recebe do usuário, o placar de


um jogo de futebol (os gols de cada time) e informa se o
resultado foi um empate, se a vitória foi do primeiro time ou do
segundo time.

Código-fonte

#include<stdio.h>
int main()
{
int gols_timeA,gols_timeB;

printf("\n Placar de um jogo de futebol \n");

printf("\n Digite os gols do time A: ");


scanf("%d",&gols_timeA);
printf("\n Informe os gols do time B: ");
scanf("%d",&gols_timeB);

if(gols_timeA==gols_timeB)
{
printf("\n o resultado foi um empate");
}
else if(gols_timeA>gols_timeB)
{
printf("\n O time A venceu com show de Messi");
}else
printf("\n O time B venceu com o frango do Goleiro ");
return 0;
}
6º Exercício resolvido

Dada a atual crise hídrica do país, as pessoas começaram a


construir reservatórios para armazenar água em suas
propriedades. Faça um programa em linguagem C que auxilie
os utilizadores do reservatório a controlarem seu consumo.
Obtenha do teclado as dimensões de um reservatório (altura,
largura e comprimento, em centímetros) e o consumo médio
diário dos utilizadores do reservatório (em litros/dia).
Assuma que o reservatório esteja cheio, tenha formato cúbico e
informe:

(a) A capacidade total do reservatório, em litros;

(b) A autonomia do reservatório, em dias;

(c) A classificação do consumo, de acordo com a quantidade


de dias de autonomia: Consumo elevado, se a autonomia for
menor que 2 dias; Consumo moderado, se a autonomia estiver
entre 2 e 7 dias; Consumo reduzido, se a autonomia maior que
7 dias.

Obs.: Considere que cada litro equivale a 1000 cm3 ou 1 dm3 .

Código-fonte

#include<stdio.h>
#include<locale.h>

int main()
{
float altura,largura,comprimento;
float c_diario,cap_total,auton_reser;
setlocale(LC_ALL,"portuguese");

printf("\n\t Resevartório de Água\n");


printf("\n Digite a altura (cm): ");
scanf("%f",&altura);
printf("\n Digite a largura (cm): ");
scanf("%f",&largura);
printf("\n Digite o comprimento (cm): ");
scanf("%f",&comprimento);

printf("\n Consumo médio diário (litros/dia)= ");


scanf("%f",&c_diario);

cap_total=(altura*largura*comprimento)/1000; /*o resultado


seria em cm3 por isso, dividimos por mil para passar de cm3
para litros*/
auton_reser=cap_total/c_diario;

printf("\n Capacidade do Reservatório= %.1f litros ",cap_total);


printf("\n Autonomia do reservatório= %.1f dias",auton_reser);
/*Agora, vamos classificar o consumo */
if(auton_reser<2)
{
printf("\n Consumo Elevado \n");
}
else if(auton_reser>=2 && auton_reser<=7)
{
printf("\n Consumo Moderado \n");
}
else if(auton_reser>7)
{
printf("\n Consumo Baixo");
}
return 0;
}

1) Construa um algoritmo que leia três notas de um aluno, calcule a média


obtida por este
aluno e no final escreva o resultado indicando se o mesmo foi aprovado ou
reprovado
(considere que aluno aprovado obteve Média >= 7,0 e aluno reprovado
Média < 7,0).
#include <iostream>
using namespace std;
float n1, n2, n3, md;
main () {
cout << "Informe tres notas \n";
cin >> n1 >> n2 >> n3;
md = (n1 + n2 + n3)/3;
if (md >= 7.0) {
cout << "Media do aluno = " << md << "\n";
cout << "Aluno aprovado \n";
}
else {
cout << "Media do aluno = "<<md << "\n";
cout << "Aluno reprovado \n";
}
system("Pause");
}

2) Construa um algoritmo que dado as três notas de avaliação de um aluno


(AVI, AVII e
AVIII) calcule a média deste aluno. De acordo com a média obtida escreva o
tipo de
Conceito que ele obteve. (Para média maior ou igual a 7,0 e menor ou igual a
10, 0 –
Conceito A; para média maior ou igual a 5,0 e menor que 7,0 – Conceito B;
para média
inferior a 5,0 – Conceito C).
#include <iostream>
using namespace std;
float n1,n2,n3,md;
main () {
cout << "Informe tres notas \n";
cin >> n1 >> n2 >> n3;
md = (n1 + n2 + n3)/3;
cout << "Media do aluno = " << md << "\n";
if ((md >= 7) && (md <= 10))
cout << "Conceito A \n";
else
if ((md >= 5) && (md < 7))
cout << "Conceito B \n";
else
if (md < 5)
cout << "Conceito C \n";
else
cout << "Media inválida \n";
system("Pause");
}

3) Construa um algoritmo que leia sexo, salário e idade de um funcionário de


uma certa
empresa. Aplique um aumento de 20% sobre o salário deste funcionário,
caso o mesmo seja
do sexo feminino e possua um salário abaixo de R$ 1500,00 reais. No final
escreva osalário
do funcionário com aumento, caso contrário informe que o mesmo não teve
direito ao
aumento.
#include <iostream>
using namespace std;
char sx;
float sal;
int idade;
main () {
cout << "Informe o sexo, salario e idade de um funcionario \n";
cin >> sx >> sal >> idade;
if ((sx == 'f') && (sal < 1500)) {
sal = 1.2*sal;
cout << "Salario com aumento de 20 % = " << sal << "\n";
}
else
cout << "Funcionário não teve direito a aumento \n";
system ("Pause");
}

4) Construa um algoritmo que leia nome de um funcionário, o número de


horas trabalhadas,
o valor que recebe por horas trabalhadas e o número de filhos, com estas
informações,
calcular o salário deste funcionário, considerando que o mesmo terá uma
gratificação de
3% sobre o salário bruto por cada filho, caso o mesmo possua acima de três
filhos. Escreva
ao final, o nome do funcionário, seu respectivo salário e o acréscimo de
salário, caso ela
tenha tido direito a esta gratificação.
#include <iostream>
using namespace std;
char nome[30];
int numhoras, vlhora, numfilhos;
float sal, grat;
main () {
cout << "Informe o nome do funcionario \n";
gets(nome);
cout << "Informe o numero de horas trabalhadas \n";
cin >> numhoras;
cout << "Informe o valor da hora deste trabalhador \n";
cin >> vlhora;
cout << "Informe a quantidade de filhos que ele possui \n";
cin >> numfilhos;
sal = numhoras*vlhora;
cout << "Funcionario "<<nome<<" obteve salario = " << sal << "\n";
if (numfilhos > 3) {
grat = sal*0.03*numfilhos;
cout << "Gratificação = " << grat << "\n";
cout << "Salario com gratificacao = " << sal+grat << "\n";
}
else
cout << "Não obteve gratificação \n";
system ("Pause");
}

5) Escreva um algoritmo que leia um número inteiro. Se o número lido for


positivo,
escreva uma mensagem indicando se ele é par ou ímpar. Se o número for
negativo,
escreva a seguinte mensagem "Este número não é positivo".
#include <iostream>
using namespace std;
int num;
main () {
cout << "Informe um numero \n";
cin >> num;
if (num > 0) {
if ((num % 2) == 0)
cout << "O numero informado eh Par \n";
else
cout << "O numero informado eh impar \n";
}
else
cout << "O numero informado nao eh positivo \n";
system ("Pause");
}

6) Construa um algoritmo que leia um número, verifique se o mesmo é par e


menor que 10
ou maior que 30. No final, escreva informando se o número atende estas
condições, caso
contrário indique que o número não atende estas condições.
#include <iostream>
using namespace std;
int num;
main () {
cout << "Informe um numero \n";
cin >> num;
if ((num % 2) == 0) {
if (num < 10)
cout << "Numero par menor que 10\n";
else
if (num > 30)
cout << "Numero par maior que 30\n";
else
cout << "Numero par mais nao menor que 10 ou maior que 30\n";
}
else
cout << "Numero nao eh par\n";
system("Pause");
}
7) Escreva um algoritmo que dado um número, realize a divisão inteira deste
número por 2,
se o mesmo for positivo, par e menor que 20. No final, escreva o número
informado e o
resultado da divisão, caso o mesmo atenda as condições dadas anteriormente,
caso contrário
informe que o mesmo não atende as condições especificadas.
#include <iostream>
using namespace std;
int num, resultdiv;
main (){
cout <<"Informe um numero \n";
cin >> num;
if ((num > 0) && ((num % 2)==0) && (num < 20)) {
resultdiv = num/2;
cout << "Resultado da divisao inteira do numero " << num <<" por 2 = "<< resultdiv <<
"\n";
}
else
cout << "O numero " << num << " nao atende as condicoes de ser positivo, par e menor
que 20 \n";
system("Pause");
}

8) Construa um algoritmo que leia o PIB de um país, o nome de uma cidade


deste país, sua
renda per capita, seu número de habitantes e o tamanho de seu território.
Calcule o fundo de
participação de municípios (FPM) que será destinado a esta cidade,
considerando que este
fundo será 5% do PIB do país. Este fundo será destinado a cidade que possua
renda per
capita menor que R$2000,00. Além disso, o fundo só será destinado a esta
cidade se a
população for menor ou igual a 20000 habitantes ou o território do
município seja menor
que 100000 km
2
. No final escreva o nome do município, o valor do FPM calculado
destinado ao município, caso contrário informe que o mesmo não teve direito
a este fundo.
#include <iostream>
using namespace std;
int PIB;
char nome[30];
float renda, numhab, tamMunic, FPM;
main() {
cout << "Informe o nome da cidade \n";
gets(nome);
cout << "Informe o PIB do pais \n";
cin >> PIB;
cout << "Informe a renda per capita da cidade \n";
cin >> renda;
cout << "Informe o numero de habitantes \n";
cin >> numhab;
cout << "Informe o tamanho do territorio do municipio \n";
cin >> tamMunic;
if ((renda < 2000) && ((numhab <= 2000) || (tamMunic < 100000))) {
FPM = PIB*0.05;
cout << "O municipio " << nome << " obteve FPM = " << FPM << "\n";
}
else
cout << "O municipio " << nome << " nao teve direito ao FPM";
cout << " (Fundo de Participacao de Municipio \n";
system ("Pause");
}

9) A partir da idade informada de uma pessoa, elabore um algoritmo que


informe a sua
classe eleitoral, sabendo que menores de 16 não votam (não votante), que o
voto é
obrigatório para adultos entre 18 e 65 anos (eleitor obrigatório) e que o voto
é opcional para
eleitores entre 16 e 18, ou maiores de 65 anos (eleitor facultativo).
#include <iostream>
using namespace std;
int idade;
main () {
cout << "Informe a idade de uma pessoa \n";
cin >> idade;
if (idade < 16)
cout << "Eleitor nao votante \n";
else
if ((idade >= 16) && (idade <= 18))
cout << "Eleitor com voto opcional \n";
else
if ((idade >= 18) && (idade <= 65))
cout << "Eleitor obrigatorio \n";
else
if (idade > 65)
cout << "Eleitor facultativo \n";
system("Pause");
}

10) Tendo como dados de entrada a altura e o sexo de uma pessoa, construa
um algoritmo
que calcule seu peso ideal, utilizando as seguintes fórmulas:
a. Para homens: (72.7h * h) – 58
b. Para mulheres: (62.1 * h) – 44.7
#include <iostream>
using namespace std;
float alt, pesoideal;
char sexo;
main () {
cout << "Informe a altura de uma pessoa \n";
cin >> alt;
cout << "Informe o sexo desta pessoa \n";
cin >> sexo;
if ((sexo == 'm') || (sexo == 'M'))
pesoideal = (72.7*alt*alt) - 58;
else
pesoideal = (62.1*alt) - 44.7;
cout << "Peso ideal calculado = " << pesoideal << "\n";
system("Pause");
}

11) Faça um algoritmo que receba o valor do salário de uma pessoa e o valor
de um
financiamento pretendido. Caso o financiamento seja menor ou igual a 5
vezes o salário da
pessoa, o algoritmo deverá escrever “Financiamento concedido”, caso
contrário ele deverá
escrever “Financiamento negado”. Independente de conceder ou não o
financiamento, o
algoritmo escreverá depois a frase “Obrigada por nos cunsultar ! “.
#include <iostream>
using namespace std;
float sal, financ;
main () {
cout << "Informe o salario do funcionario \n";
cin >> sal;
cout << "Informe o financiamento pretendido \n";
cin >> financ;
if (financ <= 5*sal)
cout << "Financiamento permitido \n";
else
cout << "Financiamento negado \n";
cout << "Obrigada por nos consultar ! \n";
system("Pause");
}

12) Construa um algoritmo que leia três lados de um triângulo, verifique e


escreva que tipo
de triângulo eles formam (considere triângulo eqüilátero com três lados
iguais, triângulo
isósceles com dois lados iguais e triângulo escaleno com todos os lados
diferentes).
#include <iostream>
using namespace std;
int a, b, c;
main() {
cout << "Informe tres lados de um triangulo \n";
cin >> a >> b >> c;
cout << "Os lados a= " << a << " b= " << b << " c= " << c;
if ((a == b) && (b == c))
cout << " formam um triangulo equilatero \n";
else
if ((a==b) || (b == c))
cout << " formam um triangulo isosceles \n";
else
cout << " formam um triangulo escaleno \n";
system ("Pause");
}
13) Construa um algoritmo que seja capaz de dar a pontuação total olímpica
para cada um
dos 3 países informados. Para cada país deve ser solicitado e informado o
nome e a
quantidade de medalhas de ouro, prata e bronze. Considere que cada
medalha de ouro tem
peso 3, cada prata tem peso 2 e cada bronze peso 1.
#include <iostream>
using namespace std;
char nompais1[30], nompais2[30], nompais3[30];
int our1, prat1, bronz1, our2, prat2, bronz2, our3, prat3, bronz3;
int totpais1, totpais2, totpais3;
main () {
cout << "Informe o nome do primeiro país \n";
cin >> nompais1;
cout << "Informe a quantidade de medalhas de ouro, prata e bronze obtida por este país
\n";
cin >> our1 >> prat1 >> bronz1;
cout << "Informe o nome do segundo país \n";
cin >> nompais2;
cout << "Informe a quantidade de medalhas de ouro, prata e bronze obtida por este país
\n";
cin >> our2 >> prat2 >> bronz2;
cout << "Informe o nome do terceiro país \n";
cin >> nompais3;
cout << "Informe a quantidade de medalhas de ouro, prata e bronze obtida por este país
\n";
cin >> our3 >> prat3 >> bronz3;
totpais1 = 3*our1 + 2*prat1 + 1*bronz1;
totpais2 = 3*our2 + 2*prat2 + 1*bronz2;
totpais3 = 3*our3 + 2*prat3 + 1*bronz3;
cout << "======Placar======\n";
cout << nompais1 << "\n";
cout << "Quantidade de medalhas de Ouro = " << our1 << " de Prata " << prat1;
cout << " de Bronze = " << bronz1 << "\n";
cout << "Total de Medalhas = " << totpais1 << "\n\n";
cout << nompais2 << "\n";
cout << "Quantidade de medalhas de Ouro = " << our2 << " de Prata " << prat2 ;
cout << " de Bronze = " << bronz2 << "\n";
cout << "Total de Medalhas = " << totpais2 << "\n\n";
cout << nompais3 << "\n";
cout << "Quantidade de medalhas de Ouro = " << our3 << " de Prata " << prat3 ;
cout << " de Bronze = " << bronz3 << "\n";
cout << "Total de Medalhas = " << totpais3 << "\n\n";
system("Pause");
}
14) Dados três valores distintos, fazer um programa que, após a leitura
destes dados,
coloque-os em ordem crescente.
#include <iostream>
using namespace std;
int n1, n2, n3, troca;
main () {
cout << "Informe tres valores \n";
cin >> n1 >> n2 >> n3;
if ((n1 > n2) || (n1 > n3))
if (n2 < n3) {
troca = n1;
n1 = n2;
n2 = troca;
}
else {
troca = n1;
n1 = n3;
n3 = troca;
}
if (n2 > n3) {
troca = n2;
n2 = n3;
n3 = troca;
}
cout << "Os tres numeros informados em ordem crescente sao: "
cout << n1 << " " << n2 << " " << n3 << "\n";
system("Pause");
}

Você também pode gostar