今日(2020/06/20)からアルゴリズムを勉強していこうと思う。選ばれたのはC言語です。理由は単純で今勉強中だから。メモ用として使っていくので詳しい解説はしない(というか知識がないからできない)。よく参考書にあるような数字の計算から始めるわけではないのでそこは理解していただきたい。では早速やっていこう。
環境構築に関しては以下の記事を参考にして構築した。(Windows)
※Macはわかりませんので各自で調べてください。
https://webkaru.net/clang/mingw-gcc-environments/
使用している書籍:C言語によるはじめてのアルゴリズム入門
著者:河西朝雄
#積分
今日は積分を書いてみた。やり方は台形則という手法を用いた。
integral.c
#include <stdio.h>
#include <math.h>
#define f(x) (sqrt(4-(x)*(x)))
int main() {
double a,b,s,dx ;
double x1,x2;
int i,n ;
printf("積分範囲を指定:") ;
scanf("%lf %lf",&a,&b) ;
n=100;
dx = (b-a)/n ; //積分範囲を分割
s = 0 ;
for (i=0; i<n; i++) {
x1 = a+dx*i ;
x2 = a+dx*(i+1) ;
s = s + (f(x1)+f(x2))*dx/2 ;
}
printf("積分結果= %f\n",s) ;
}
#まとめ
scanfでdouble型を入力するときは%lfとするらしい。まだ、型に慣れていないということが認識できた。