Jump to content

Algoritmo para contar quantas vezes uma variável mudou de valor.


Samuel Nassif

Recommended Posts

Posted

Olá pessoal,

preciso de uma ajuda imensa. Só sei o básico do básico em C e preciso de um algoritmo que me retorne o valor de quantas vezes uma outra variável alterou seu valor durante uma determinada condição.

Eu tenho as variáveis A e B do tipo Int;

B está sempre alterando seu valor;

Quando A for verdadeira começo a contar quantas vezes B muda de valor;

Por exemplo:

Suponhamos que o valor inicial de B é 10.;

Quando A torna-se verdadeiro eu começo a contar quantas vezes B muda de valor. Se  por exemplo, B alterar seu valor para 9,8,7,6,5 deverei saber que foram 5 mudanças.

Quando A for falso devo zerar esse contador.

 

Alguma idéia?

Desde já agradeço a ajuda.

 

 

Posted

Na programação orientada a objetos existe o conceito de encapsulamento, que resumidamente é o conceito de não alterar uma variável diretamente mas sim usando uma função. Isso faz com que a variável fique "encapsulada" dentro do objeto e permite que qualquer lógica seja aplicada na alteração daquela variável.

E é exatamente o que você quer fazer... Toda vez que as variáveis A e B são alteradas existe uma certa lógica ocorrendo com elas, não é? Então eu sugeriria você colocar tudo dentro de uma struct e implementar funções para modificar os valores de A e B. Tipo assim:
 

struct var {
	bool mode; // A
  	int value; // B
  	int counter;
};

void var_mode(struct var *variable, bool mode)
{
  // etc...
}

void var_value(struct var *variable, int value)
{
  // etc...
}

 

Posted

Obrigado pela dica Felipe.

No meu caso essa variável B seria a posição de TAP de um transformador, que sempre está alterando o seu valor.

Não sei que tipo de função usar para monitorar quantas vezes esse TAP mudou de valor.

  • 2 weeks later...

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...