подскажите как использовать sin и cos мой код пишет совсем не то что должен, что не так делаю? Код (C): int temp30 = 30; // точки для int temp70 = 70; // установки int temp110 = 110; // значений порогов int temp150 = 150; // по измерениям float temp = 60; /* без подключения датчика задается положение куда должна показать стрелка */ int sensPIN = 0; // подключение сенсора // выходы на показометр int pin1 = 3; // + катушки на 30 град. int pin2 = 5; // - катушки на 30 град. int pin3 = 9; // + катушки на 70 град. int pin4 = 11; // - катушки на 70 град. int chustvitelnost = 255; // гипотенуза прямоугольного треугольника void setup() { Serial.begin(9600); pinMode(pin1,OUTPUT); pinMode(pin2,OUTPUT); pinMode(pin3,OUTPUT); pinMode(pin4,OUTPUT); } void loop() { int temp = analogRead(sensPIN); // A0 для входа аналового датчика Serial.print("sens"); Serial.println(temp); // остальное обработка по температуре if (temp<=temp30) { analogWrite(pin1,255); analogWrite(pin2,0); analogWrite(pin3,0); analogWrite(pin4,0); } else if (temp>temp30 && temp<temp70) { byte ugol = map(temp, temp30, temp70, 0, 90); float i = abs(cos(ugol)); float z = abs(sin(ugol)); analogWrite(pin1,chustvitelnost*i); analogWrite(pin2,0); analogWrite(pin3,chustvitelnost*z); analogWrite(pin4,0); Serial.print("ugol1 "); Serial.println(ugol); Serial.print("katet1 "); Serial.println(i); Serial.print("katet2 "); Serial.println(z); } delay(1000); } log sens50 ugol1 45 katet1 0.53 katet2 0.85 а должно быть sens50 ugol1 45 katet1 0.71 katet2 0.71