#define A  2             //определение константы с номером пина для сегмента A 
#define B  3             //определение константы с номером пина для сегмента B  
#define C  4             //определение константы с номером пина для сегмента C 
#define D  5             //определение константы с номером пина для сегмента D 
#define E  6             //определение константы с номером пина для сегмента E 
#define F  8             //определение константы с номером пина для сегмента F 
#define G  7             //определение константы с номером пина для сегмента G  

int del_t = 1000;        //переменная с величиной задержки между выводами цифр 

void setup() {
  
  pinMode(A, OUTPUT);    //выбор режима работы пина сегмента A в качестве выхода   
  pinMode(B, OUTPUT);    //выбор режима работы пина сегмента B в качестве выхода 
  pinMode(C, OUTPUT);    //выбор режима работы пина сегмента C в качестве выхода 
  pinMode(D, OUTPUT);    //выбор режима работы пина сегмента D в качестве выхода 
  pinMode(E, OUTPUT);    //выбор режима работы пина сегмента E в качестве выхода 
  pinMode(F, OUTPUT);    //выбор режима работы пина сегмента F в качестве выхода 
  pinMode(G, OUTPUT);    //выбор режима работы пина сегмента G в качестве выхода 
  
}

void loop() {

  fZero();               //вызов функции вывода на индикотор символа "0"
  delay(del_t);          //задержка выполнения на величину del_t 
  fOne();                //вызов функции вывода на индикотор символа "1"
  delay(del_t);          //задержка выполнения на величину del_t 
  fTwo();                //вызов функции вывода на индикотор символа "2" 
  delay(del_t);          //задержка выполнения на величину del_t 
  fThr();                //вызов функции вывода на индикотор символа "3"
  delay(del_t);          //задержка выполнения на величину del_t 
  fFor();                //вызов функции вывода на индикотор символа "4"
  delay(del_t);          //задержка выполнения на величину del_t 
  fFiv();                //вызов функции вывода на индикотор символа "5"
  delay(del_t);          //задержка выполнения на величину del_t 
  fSix();                //вызов функции вывода на индикотор символа "6"               
  delay(del_t);          //задержка выполнения на величину del_t 
  fSvn();                //вызов функции вывода на индикотор символа "7"
  delay(del_t);          //задержка выполнения на величину del_t 
  fEgt();                //вызов функции вывода на индикотор символа "8"
  delay(del_t);          //задержка выполнения на величину del_t 
  fNne();                //вызов функции вывода на индикотор символа "9"
  delay(del_t);          //задержка выполнения на величину del_t 
  fClr();                //вызов функции очистки индикатора
  delay(2000);           //задержка выполнения на величину 2 секунды 

}

void fZero () {          //функция вывода на индикатор символа "0" 
  digitalWrite(A, LOW);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, LOW);
  digitalWrite(E, LOW);
  digitalWrite(F, LOW);
  digitalWrite(G, HIGH);
}

void fOne () {            //функция вывода на индикатор символа "1"
  digitalWrite(A, HIGH);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, HIGH);
  digitalWrite(E, HIGH);
  digitalWrite(F, HIGH);
  digitalWrite(G, HIGH);
}

void fTwo () {            //функция вывода на индикатор символа "2"
  digitalWrite(A, LOW);
  digitalWrite(B, LOW);
  digitalWrite(C, HIGH);
  digitalWrite(D, LOW);
  digitalWrite(E, LOW);
  digitalWrite(F, HIGH);
  digitalWrite(G, LOW);
}

void fThr () {            //функция вывода на индикатор символа "3"
  digitalWrite(A, LOW);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, LOW);
  digitalWrite(E, HIGH);
  digitalWrite(F, HIGH);
  digitalWrite(G, LOW);
}

void fFor () {            //функция вывода на индикатор символа "4" 
  digitalWrite(A, HIGH);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, HIGH);
  digitalWrite(E, HIGH);
  digitalWrite(F, LOW);
  digitalWrite(G, LOW);
}

void fFiv () {            //функция вывода на индикатор символа "5"
  digitalWrite(A, LOW);
  digitalWrite(B, HIGH);
  digitalWrite(C, LOW);
  digitalWrite(D, LOW);
  digitalWrite(E, HIGH);
  digitalWrite(F, LOW);
  digitalWrite(G, LOW);
}

void fSix () {            //функция вывода на индикатор символа "6"
  digitalWrite(A, LOW);
  digitalWrite(B, HIGH);
  digitalWrite(C, LOW);
  digitalWrite(D, LOW);
  digitalWrite(E, LOW);
  digitalWrite(F, LOW);
  digitalWrite(G, LOW);
}

void fSvn () {            //функция вывода на индикатор символа "7"
  digitalWrite(A, LOW);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, HIGH);
  digitalWrite(E, HIGH);
  digitalWrite(F, HIGH);
  digitalWrite(G, HIGH);
}

void fEgt () {            //функция вывода на индикатор символа "8"
  digitalWrite(A, LOW);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, LOW);
  digitalWrite(E, LOW);
  digitalWrite(F, LOW);
  digitalWrite(G, LOW);
}

void fNne () {            //функция вывода на индикатор символа "9"
  digitalWrite(A, LOW);
  digitalWrite(B, LOW);
  digitalWrite(C, LOW);
  digitalWrite(D, LOW);
  digitalWrite(E, HIGH);
  digitalWrite(F, LOW);
  digitalWrite(G, LOW);
}

void fClr () {            //функция очистки индикатора
  digitalWrite(A, HIGH);
  digitalWrite(B, HIGH);
  digitalWrite(C, HIGH);
  digitalWrite(D, HIGH);
  digitalWrite(E, HIGH);
  digitalWrite(F, HIGH);
  digitalWrite(G, HIGH);
}