/* * Se considera doua forme de exprimare a unui unghi i.e. in radiani * si respective in grade minute si secunde. Sa se scrie cite o functie C * pentru transformarea valorii unui unghi din radiani in grade minute si secunde * si respectiv invers. Sa se apeleze cele doua functii in programul principal. */ #include #include #include // grade -> radiani float grade2rad(float grd, float min, float sec) { return (grd+(min+sec/60)/60) * (M_PI / 180.0); } // radiani -> grade float rad2grade(float rad) { return rad * (180.0 / M_PI); } void main() { float radiani,grade,minute,secunde; printf("\nRadiani: ");scanf("%f",&radiani); printf("\nGrade: "); scanf("%f",&grade); printf("\nMinute: "); scanf("%f",&minute); printf("\nSecunde: "); scanf("%f",&secunde); printf("\nUnghiul de %3.0f grade %2.0f\"%2.0f' este egal cu %f radiani", grade,minute,secunde,grade2rad(grade,minute,secunde)); printf("\nUnghiul de %f radiani este egal cu %6.0f grade %2.0f\" %2.2f'",radiani,floor(rad2grade(radiani)),(rad2grade(radiani)-floor(rad2grade(radiani)))*60,(((rad2grade(radiani)-floor(rad2grade(radiani)))*60) - (floor((rad2grade(radiani)-floor(rad2grade(radiani)))*60)))*60 ); getch(); }