Qiita 3 - キータぞ、来たぞ、キータだぞー

■ このスレッドは過去ログ倉庫に格納されています
2023/05/28(日) 09:56:01.47ID:twg6yDS4
Hello hackers !
Qiitaは、エンジニアリングに関する知識を記録・共有するためのサービスです。
コードを書いていて気づいたことや、自分がハマったあの仕様について、
他のエンジニアと知見を共有しましょう ;)

https://qiita.com/

Qiita(キータ)は、Incrementsが運営するプログラミング情報のナレッジコミュニティ。
2016年現在で日本最大のプログラマーコミュニティとされている[1]。

https://internet.watch.impress.co.jp/docs/news/1025972.html

前スレ Qiita
https://mevius.5ch.net/test/read.cgi/tech/1542357242/
Qiita 2 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1658762410/
2023/12/04(月) 22:33:26.37ID:uA82POL4
#include <stdio.h>
#include <math.h>
#define PI 3.141592653589793238462643383279L
typedef unsigned Degree;
double degsin(Degree r)
{
  double sign = 1.0;
  r %= 360 * 60 * 60;
  if (r >= 180 * 60 * 60) {
    r = 360 * 60 * 60 - r;
    sign = -1.0;
  }
  if (r >= 90 * 60 * 60) {
    r = 180 * 60 * 60 - r;
  }
  return sign * sinl(r * PI / 180 / 60 / 60);
}
Degree degasin(double y)
{
  return roundl(180 * 60 * 60 * asinl(y) / PI);
}
int main(void)
{
  Degree r = 180 * 60 * 60 / 6;
  printf("degsin(%20.16f) = %.60f\n", (double)r / 60 / 60, degsin(r));
  r = degasin(0.5);
  printf("degsin(%20.16f) = %.60f\n", (double)r / 60 / 60, degsin(r));
  printf("\n");
  for (r = 0; r <= 360 * 60 * 60; r += 30 * 60 * 60) {
    printf("degsin(%20.16f) = %.60f\n", (double)r / 60 / 60, degsin(r));
  }
}
2023/12/04(月) 22:35:06.62ID:uA82POL4
実行結果:
degsin( 30.0000000000000000) = 0.500000000000000000000000000000000000000000000000000000000000
degsin( 30.0000000000000000) = 0.500000000000000000000000000000000000000000000000000000000000

degsin( 0.0000000000000000) = 0.000000000000000000000000000000000000000000000000000000000000
degsin( 30.0000000000000000) = 0.500000000000000000000000000000000000000000000000000000000000
degsin( 60.0000000000000000) = 0.866025403784438596588302061718422919511795043945312500000000
degsin( 90.0000000000000000) = 1.000000000000000000000000000000000000000000000000000000000000
degsin(120.0000000000000000) = 0.866025403784438596588302061718422919511795043945312500000000
degsin(150.0000000000000000) = 0.500000000000000000000000000000000000000000000000000000000000
degsin(180.0000000000000000) = -0.000000000000000000000000000000000000000000000000000000000000
degsin(210.0000000000000000) = -0.500000000000000000000000000000000000000000000000000000000000
degsin(240.0000000000000000) = -0.866025403784438596588302061718422919511795043945312500000000
degsin(270.0000000000000000) = -1.000000000000000000000000000000000000000000000000000000000000
degsin(300.0000000000000000) = -0.866025403784438596588302061718422919511795043945312500000000
degsin(330.0000000000000000) = -0.500000000000000000000000000000000000000000000000000000000000
degsin(360.0000000000000000) = 0.000000000000000000000000000000000000000000000000000000000000
https://wandbox.org/permlink/9ZxTODmQNtn4Q1y6

ラジアン派は同じことラジアンでやって見せてね。
2023/12/05(火) 06:42:34.60ID:Cw6vkTwt
なぜそんなアホなことをしなきゃいけないんだw

各種言語のライブラリを作ってるのはたいていラジアン派だがお前のようなアホは一人もいないぞ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況