Procedimento

Tenho uma duvida em relaçao a procedimento(void) estou no exercicio do semaforo carros/pedestres julguei interessante criar um procedimento para a sequencia vermelho/amarelo/verde porem irei criá-lo se haver a possibilidade de usar o mesmo procedimento so que na ordem inversa tipo verde/amarelo/vermelho quero sabe se há essa possibilidade!

Grato

Estás a assumir que nós sabemos qual é o enunciado do exercício que estás a fazer... Eu não faço ideia do que estás a falar.

void não é procedimento nenhum. Void quer dizer, de forma literal, vazio. Ou seja, não tem nada.

Quando vês void em frente duma função:

void setup() {}
void loop(){}

Quer dizer que essas funções não retornam nada... ou se preferires que retornam vazio.

Podes criar uma função que mediante um parâmetro faça a sequência verde/amarelo/vermelho ou inverso.

Algo como:

void sequencia(unsigned char direccao)

Sem mais informação é impossível de dizer mais alguma coisa.

Não sei se percebi bem a questão, mas aquilo que eu estou a perceber é que está a perguntar se há possibilidade de ter uma função que faça a sequência "vermelho/amarelo/verde" que possa também fazer a sequência inversa "verde/amarelo/vermelho", mas sem ter ter parâmetros de entrada, por tanto, ser procedimento(void). A resposta é: Sim, é possível, se usar uma variável global que seja utilizada dentro da função para indicar a "direcção da sequência". No entanto, penso que não é a melhor opção, a melhor opção é mesmo usar um parâmetro de entrada, que indique a direcção, como referiu o bubulindo, qualquer coisa como:

void sequencia(unsigned char direccao)

Entao aprendi errado pois pelo que sei void() e um procedimento ou seja sequencia de passos os quais nao retornam valores.

Obrigado a voces acho que sanei minha duvida mas vou perguntar de outra forma se a resposta for a mesma basta avisar que eu compreendo.O que quero é criar somente uma sequencia(vermelho/verde/amarelo) sem precisar criar o inverso e partir dela usá-la tanto no sentido normal como inverso.

Obs:Consegui solucionar o exercicio mas ainda tenho essa curiosidade

Não. Para que isso aconteça, deve ser programado, se apenas é programado o sentido normal, não vai fazer o sentido inverso.

Dúvida sanada obrigado a todos!