Aula 13 do curso básico de algoritmo em C

algoritmo em C

Código 07 – Requisitos

Para esse código, vamos imaginar o seguinte contexto: Um posto de gasolina precisa analisar o movimento de vendas de combustíveis.
Inicialmente o programa deverá obter o preço do litro do álcool, da gasolina comum e da gasolina aditivada.
Em seguida deverá obter as seguintes informações: a quantidade de litros vendidos de álcool, a quantidade de litros vendidos de gasolina comum e a quantidade de litros vendidos de gasolina aditivada.
O programa deverá calcular e imprimir o valor recebido pelo posto, o percentual vendido de cada produto e o lucro (em reais) obtidos pelo posto, levando-se em conta que a margem de lucro de cada produto é:

  • Álcool – 10% do valor

  • Gasolina comum – 15% do valor

  • Gasolina aditivada – 20% do valor

Obs: Usaremos a biblioteca (library) locale.h nesse código, ela nos permitirá escrever as mensagens no console usando o printf ( ), sem que tenhamos que nos preocupar com determinados caracteres típicos de alguns idiomas e seus valores equivalentes em octal, como por exemplo: Ç, ç, Á, á etc.

Já vimos um pouco disso nos códigos anteriores, agora vamos usar a biblioteca locale.h para resolver isso de uma forma mais prática.

Código 07

#include <stdio.h>/*Instrução de pré-processamento, habilita nosso programa a usar essa biblioteca de entradas e saídas, possui funções como scanf e printf*/
#include <stdlib.h>/*Instrução de pré-processamento, habilita nosso programa a usar essa biblioteca, para poder usar o system("PAUSE"); */
#include <locale.h>/*Instrução de pré-processamento, habilita nosso programa a usar essa biblioteca, para usar caracteres como: ç, Ç, Â ,â etc. No printf( )*/
//Calcula o valor multiplicando o preço pela quantidade e retorna o valor calculado
float calcValor (float preco, float qtd)
{
	return preco*qtd;
}

/*Calcula o lucro multiplicando a quantidade do produto pelo preço do produto
e pelo percentual de lucro de cada produto, a divisão por cem é por causa da porcetagem referente a margem de lucro de cada produto*/
float calcLucro (float qtd, float pr, float perc)
{
	return (qtd*pr*perc)/100;
}

//Calcula o percentual vendido de cada produto (Álcool, Gasolina comum, Gasolina Aditivada)
float calcPercentual (float qtdProd, float qtd1, float qtd2)
{
	//o número 100 na conta é porque a resposta está em porcentagem
	return 100 * qtdProd / (qtdProd + qtd1 + qtd2);
}

//Ponto inicial do código
int main (void)
{
	//Declaração das variáveis
	float  prAlc, prGas, prAdit, qtdAlc, qtdGas, qtdAdit, valRec, percAlc, percGas, 	percAdit, lucro;

	/*Ativa a configuração da biblioteca locale.h para português*/
	setlocale(LC_ALL, "Portuguese"); //Ativa a configuração da biblioteca locale.h para português

	//Interações com o usuário
	printf ("Digite o preço do álcool: ");
	scanf  ("%f", &prAlc);
	fflush(stdin);

	printf ("\nDigite o preço da gasolina: ");
	scanf  ("%f", &prGas);
	fflush(stdin);

	printf ("\nDigite o preço da gasolina aditivada: ");
	scanf  ("%f", &prAdit);
	fflush(stdin);

	printf ("\nDigite a quantidade vendida do álcool: ");
	scanf  ("%f", &qtdAlc);
	fflush(stdin);

	printf ("\nDigite a quantidade vendida da gasolina comum: ");
	scanf  ("%f", &qtdGas);
	fflush(stdin);

	printf ("\nDigite a quantidade vendida da gasolina aditivada: ");
	scanf  ("%f", &qtdAdit);
	fflush(stdin);


	//calcula o valor recebido de cada produto, soma e armazena em valRec
	valRec = calcValor(prAlc, qtdAlc) + calcValor(prGas, qtdGas) + calcValor(prAdit, qtdAdit);

	/*Chamadas da função calcPercentual ( ) para calcular o percentual vendido de cada produto*/
	percAlc = calcPercentual(qtdAlc, qtdGas, qtdAdit); //qtdGas e qtdAdit serão qtd1 e 	qtd2 em calcPercentual
	percGas = calcPercentual(qtdGas, qtdAlc, qtdAdit); //qtdAlc e qtdAdit serão qtd1 e qtd2 em calcPercentual
	percAdit = calcPercentual(qtdAdit, qtdAlc, qtdGas); //qtdAlc e qtdGas serão qtd1 e qtd2 em calcPercentual

	//calcula o lucro de cada produto, soma e armazena o resultado em lucro
	lucro = calcLucro(qtdAlc, prAlc, 10) + calcLucro(qtdGas, prGas, 15) + 	calcLucro(qtdAdit, prAdit, 20);//Calcula o lucro e armazena em lucro

	//Imprime a mensagem final com as informações processadas no console
	printf("\n\nO valor arrecadado pelo posto foi de: R$ %.2f\n\nO percentual vendido de álcool foi de: %.2f \%% \n"
	"\nO percentual vendido de gasolina comum foi de: %.2f \%% \n"
	"\nO percentual vendido de gasolina aditivada foi de: %.2f \%% \n\nO lucro do posto foi de: R$ %.2f\n\n\n\n", valRec, percAlc, percGas, percAdit, lucro);

	system("PAUSE");
	return 0;
}

Link encurtado para download dos códigos

Aula 13 – Algoritmo em C

About The Author
-

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>