Logo Hardware.com.br
pablosnr
pablosnr Membro Junior Registrado
60 Mensagens 1 Curtida

Colocar flag em programa em C

#1 Por pablosnr 17/04/2010 - 20:57
Boa noite Users,
Meu professor pediu em um exercicio que eu criasse um programa, ate ai tudo bem, porem no exercicio posterior ele pediu para que eu colocasse uma flag no programa e eu nem sei o que é flag e que ele lê-se um numero indeterminado de consumos.

Se alguem puder me ajudar a fazer fico grato.

segue abaixo o codigo

#include <stdio.h>
int main (void)
{
float consumo, maiorconsumo=0,
menorconsumo=9999, consumomedio, consumototal=0,
valortotal=0, valor, taxa=11.0;
int numconsumomin=0,
contador=0;

while(contador <10)
{
printf("Digite o consumo\n&quot;

do
{
scanf("%f", &consumo);
if(consumo<0)
printf("Digite novamente \n&quot;
}while(consumo<0);

if(consumo <= 30)
{
numconsumomin=numconsumomin+1;
valor=5.0+taxa;
}
else if(30< consumo<=100)
valor=0.20*consumo+taxa;
else
valor=0.25*consumo+taxa;

if(consumo>maiorconsumo)
maiorconsumo=consumo;

if(consumo<menorconsumo)
menorconsumo=consumo;

consumototal=consumototal+consumo;
valortotal=valortotal+valor;
contador=contador+1;
}

consumomedio=consumototal/contador;

printf("O consumo médio em kw e' %2.2f\n" ,consumomedio);
printf("O menor consumo em kw foi %2.2f\n", menorconsumo);
printf("O maior consumo em kw foi %2.2f\n", maiorconsumo);
printf("O numero de consumidores que pagaram o consumo minimo foi %d\n", numconsumomin);
printf("O valor total em reais foi %2.2f\n" ,valortotal);

system("pause&quot;
return(0);

}


Abraços.
##jn##
##jn## Membro Junior Registrado
44 Mensagens 5 Curtidas
#2 Por ##jn##
18/04/2010 - 04:21
uma flag é um mecanismo que serve para controlar (interrompendo ou permitindo a execução de alguns comandos) a "lógica" de seu programa.

Ex.: o programa abaixo lê números ate que o numero 5 seja digitado. Assim o numero 5 serve de flag para encerrar o programa.



#include <stdio.h>

int main(){
int numero;
do{
printf("\ndigite um numero: &quot;
scanf("%d", &numero);
}while(numero!=5);
return 0;
}
De forma semelhante voce pode adaptar seu programa para ler qualquer consumo digitado desde que este seja diferente da flag que voce escolher.


qualquer duvida na implementação e só postar ai.
pablosnr
pablosnr Membro Junior Registrado
60 Mensagens 1 Curtida
#3 Por pablosnr
18/04/2010 - 11:24
Olá JN,


Essa era a minha dúvida sim, porem com numeros eu consegui fazer,
o problema em questão que eu esqueci de citar é que preciso de uma flag que utilize uma letra, pois como o consumo é dado em KW no programa, não posso utilizar uma flag com numeros para pará-lo.

E ai não sei como colocar uma letra, pois como o consumo vai ser dado em numeros, eu vou deixar especificado por exemplo, para fazer os calculos digite a tecla "S", por exemplo, e no caso essa seria minha flag.

E é ai que está a dúvida, como colocá-la.
##jn##
##jn## Membro Junior Registrado
44 Mensagens 5 Curtidas
#4 Por ##jn##
18/04/2010 - 11:55
eu montei um exemplo de como fazer isso. não é a forma mais indicada de se fazer, pois existe alguns inconvinientes. por exemplo: se o usuario digitar outra letra ou sequencia de letras que não o "s" o valor do meu numero será 0. Mas de qualquer forma não conheço uma forma melhor de fazê-lo.

abaixo está o codigo:


#include <stdio.h>
#include <string.h>

int main(){
int numero;
char entrada[10];
do{
printf("\ndigite um numero: &quot;
scanf("%s", entrada);
if(strcmp(entrada, "s&quot==0){
break;
}
numero=atoi(entrada);
}while(1);
return 0;
}

espero que ajude.
© 1999-2025 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal