예제 #1
0
파일: GF.cs 프로젝트: qiangfu75/QRCodeArt
            public static XPolynom operator +(XPolynom left, XPolynom right)
            {
                XPolynom @short, @long;

                if (left.PolynomsCount > right.PolynomsCount)
                {
                    @long = left; @short = right;
                }
                else
                {
                    @short = left; @long = right;
                }

                var ret = new XPolynom(@long.PolynomsCount);
                int i   = 0;

                for (; i < @short.PolynomsCount; i++)
                {
                    ret[i] = @long[i] + @short[i];
                }
                for (; i < @long.PolynomsCount; i++)
                {
                    ret[i] = @long[i];
                }
                ret.ReLength();
                return(ret);
            }
예제 #2
0
파일: GF.cs 프로젝트: qiangfu75/QRCodeArt
            public static XPolynom operator *(XPolynom left, GF right)
            {
                var ret = new XPolynom(left.PolynomsCount);

                for (int i = 0; i < left.PolynomsCount; i++)
                {
                    ret[i] = left[i] * right;
                }
                ret.ReLength();
                return(ret);
            }