cで任意の数字のルートの値を計算するプログラムを書いた

ヘッダー追加で計算自体は難しくありませんが、プログラムを書くとなるとどうやって計算しているかわからないという人もいるかと思います。
数学的な知識が必要になります、プログラマをやるならこれくらいの数学的知識は持っていて欲しいですね。
任意の数字のルートの値を計算する式が以下のようになる
\Large U \small n+1\Large =\frac{1}{2}(U \small n\Large +\frac{a}{U \small n\Large })
この式は10回くらい繰り返し計算すれば6桁くらいなら正確な値を出すことができるほど収束が早い。この式を用いて計算する。

#include <stdio.h>

void main(){
	//求めたい数字を得る
	double num,sqrt;
	printf("Please enter the numbers:");
	scanf("%lf", &num);
	sqrt = num;
	int i = 0;
	while(i < 10){
		sqrt = (sqrt + num / sqrt)/2;
		i = i++;
	}
	printf("%lf\n", sqrt);
	return;
}

追記(2012/2/4)
vim scriptでも書いてみた