通过3,14的角度转换从学位到弧度失败

Angle conversion from degrees to radians via 3,14 fails

本文关键字:从学 失败 转换 通过      更新时间:2023-10-16

我正在尝试转换一个角度,但是当它"转换"角度时,输出始终显示零值。

这里有代码:

#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
  // Variabili
  int angolo;
  float radianti;
  // Inserimento variabile angolo + conversione e controllo valore 
  // compreso tra 0 e 360
  cout<<"Inserisci il valore dell'angolo (deve essere compreso tra 0 e 
   360):";
  cin>>angolo;
  if(angolo > 0 && angolo < 360)
  {
   radianti=(angolo*3,14)/180;
    cout<<"Il valore in radianti dell'angolo è:"<<radianti;
  }else
  {
    cout<<"Errore l'angolo non è compreso tra 0 e 360!";
  } 
   system("PAUSE");
   return 0;
   }

零的结果是由您始终在整数中计算14/180的事实引起的。这是由邪恶的,操作员引起的,该操作员将仅在后来以部分进行计算。计算angolo*3(或不使用优化),但是操作员之后会导致使用14个。使用3.14代替3,14将解决此问题。

我建议还使用适当的符号,并且作为奖励获得更好的精度。
例如。(一个示例在哪里获得,其他可以在下面的评论中找到):

#include <math.h>
/* ... */
radianti=(angolo*M_PI)/180;

请注意,严格来说,这不是绝对可移植的。
确保此功能由您的目标环境提供,然后值得使用。否则使用.
我觉得与你在一起,习惯了小数逗号而不是小数点。