Во-первых, определяй нажатую строку не по position, а параметром
id. Position - позиция элемента в View (при нехватки памяти происходит пересоздание элементов адаптера во View, из-за этого в редких случаях для разных элементов параметр position может быть один и тот же),
id - порядковый номер в адаптере.
Во-вторых, проблема в switch на методе onItemClick. У тебя не исполняется ни одно условие, по этому изменение значения переменной znachn1 не происходит. Поступи проще, без всяких switch (эта конструкция является дурным тоном):
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position2, long id) {
znachn1 = (id < 9) ? 9 - id : 0;
}