C#고정밀 구현(반제품)
1167 단어 C#
using System; using System.Text; namespace high_precision_calculate { class number { public number(string str) { v = new StringBuilder(str); } public number() { v = new StringBuilder(0); } public StringBuilder v { get; set; } public static number operator + (number l, number r) {//보충 2비트 int ll = l.v.Length; int rl = r.v.Length; int sub = ll - rl; if (sub > 0) {r.v.Insert (0, new string ('0', sub + 1); l.v.Insert (0, new string ('0', 1));else if (sub < 0) { l.v.Insert(0, new string('0', -sub + 1)); r.v.Insert(0, new string('0', 1)); }//int count = l.v.Length;//보충된 것이 무엇인지 모르기 때문에 길이char[]result = new char[count + 1];//result bool flag = false;for (int i = count - 1; i >= 0; i--) { int a = Convert.ToInt32(l.v[i]) - 48; int b = Convert.ToInt32(r.v[i]) - 48; int c = a + b; if (flag) { c++; flag = false; }; if (c >= 10) { flag = true; c -= 10; } result[i] = Convert.ToChar(c + 48); } return new number(Convert.ToInt32(new string(result)).ToString()); } public static number operator *(number l, number r) {//TODO number result = new number(); return result; } } }
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.