def sum( x )
	a = 0
	x.length.times { |i|
		a += x[ i ]
	}
	return a
end

def sum2( x )
	a = 0
	x.length.times { |i|
		a += x[ i ] * x[ i ]
	}
	return a
end

def sum_xy( x , y )
	a = 0 
	x.length.times { |i|
		a += x[ i ] * y[ i ]
	}
	return a
end	

def sr( x )
	a = sum2( x ) - sum( x ) ** 2 / x.length.to_f
	return a
end

def sr2( x , y )
	a = sum_xy( x , y ) - sum( x ) * sum( y ) / x.length.to_f
	return a
end

x = [ 7 , 6 , 4 , 2 , 5 ]
y = [ 24 , 20 , 14 , 8 ,12 ]

sr_xy = sr2( x , y )
printf( "配列xとyの残差平方和は%fです\n" , sr_xy )