資源簡介
基于Laura.Compute開發的C#win窗口科學計算器程序。

代碼片段和文件信息
/**
*@項目名稱:?C#科學計算器
*@Date:?2015.10.26
*@author:enverer?775004030@qq.com
*本項目開放源代碼,讀者可自由查看、修改、使用、發布
*如果有想法可聯系作者
*本代碼為學校中的一次作業,之后并不會再維護
*/
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Threading.Tasks;
using?System.Windows.Forms;
using?Laura.Compute;
namespace?Calculator
{
????public?partial?class?Form1?:?Form
????{
????????private?double?saver;
????????private?bool?isShift;
????????private?double?ANS;
????????public?Form1()
????????{
????????????InitializeComponent();
????????????saver?=?0;
????????????isShift?=?false;
????????????ANS?=?0;
????????}
????????private?double?factor(double?n)
????????{
????????????double?result?=?1;
????????????while?(n?>=?1)
????????????{
????????????????result?*=?n--;
????????????}
????????????return?result;
????????}
????????private?void?FindInsideLast(int?posstring?textcal?string?name?out?int?last)//找到函數的參數
????????{
????????????last?=?0;?;
????????????int?length?=?name.Length;
????????????int?n?=?1;//未匹配的左括號個數
????????????for?(int?i?=?pos?+?length;?i?????????????{
????????????????if?(textcal[i]?==?‘(‘)
????????????????{
????????????????????n++;
????????????????}
????????????????if?(textcal[i]?==?‘)‘)
????????????????{
????????????????????n--;
????????????????}
????????????????if?(n?==?0)
????????????????{
????????????????????last?=?i;
????????????????????break;
????????????????}
????????????}
????????}
????????//找到!前的數字
????????private?void?Res_Findnumber(string?textcal?int?index?out?double?number)
????????{
????????????int?i;
????????????for?(i?=?index?-?1;?i?>=?0;?i--)
????????????{
????????????????if?(!Char.IsDigit(textcal[i])?&&?(textcal[i]?!=?‘.‘))
????????????????????break;
????????????}
????????????number?=?Double.Parse(textcal.Substring(i?+?1?index?-?i?-?1));
????????}
???????
????????private?string?Preformat(String?textcal)
????????{
????????????textcal.Replace(“?“?““);//去除所有空格
????????????textcal?=?textcal.Replace(“e“?Math.E.ToString());//將e替換為數字
????????????textcal?=?textcal.Replace(“e“?Math.E.ToString());//將π替換為數字
????????????textcal?=?textcal.Replace(“ANS“?ANS.ToString());//將ANS替換為數字
????????????int?pos?=?0;
????????????while?((pos?=?textcal.IndexOf(“!“))?!=?-1)//處理階乘
????????????{
????????????????double?num;
????????????????Res_Findnumber(textcal?pos?out?num);
????????????????double?result?=?factor(num);
????????????????textcal?=?textcal.Replace(num.ToString()?+?“!“?result.ToString());
????????????}
????????????//處理arcsin
????????????while?((pos?=?textcal.IndexOf(“arcsin(“))?!=?-1)
????????????{
????????????????string?name?=?“arcsin(“;
????????????????int?last;
????????????????FindInsideLast(pos?textcal?name?out?last);
????????????????double?result?=?Math.Asin(Double.Parse(Compute(textcal.Substring(pos?+?name.Length?last?-?pos?-?na
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-10-25?10:49??Calculator\
?????目錄???????????0??2015-10-26?15:08??Calculator\Calculator\
?????文件????????2842??2015-10-25?10:57??Calculator\Calculator.sln
?????文件???????95744??2015-10-26?15:08??Calculator\Calculator.v12.suo
?????文件?????????187??2015-10-20?09:55??Calculator\Calculator\App.config
?????目錄???????????0??2015-10-25?20:16??Calculator\Calculator\bin\
?????目錄???????????0??2015-10-25?10:58??Calculator\Calculator\bin\Debug\
?????文件???????43520??2015-10-25?20:07??Calculator\Calculator\bin\Debug\Calculator.exe
?????文件?????????187??2015-10-20?09:55??Calculator\Calculator\bin\Debug\Calculator.exe.config
?????文件???????50688??2015-10-25?20:07??Calculator\Calculator\bin\Debug\Calculator.pdb
?????文件???????23168??2015-10-25?20:09??Calculator\Calculator\bin\Debug\Calculator.vshost.exe
?????文件?????????187??2015-10-20?09:55??Calculator\Calculator\bin\Debug\Calculator.vshost.exe.config
?????文件?????????490??2010-03-17?22:39??Calculator\Calculator\bin\Debug\Calculator.vshost.exe.manifest
?????文件???????83968??2015-10-25?17:43??Calculator\Calculator\bin\Debug\Laura.Compute.dll
?????文件??????292352??2015-10-25?17:43??Calculator\Calculator\bin\Debug\Laura.Compute.pdb
?????文件???????15872??2015-10-25?10:57??Calculator\Calculator\bin\Debug\Laura.Compute.Test.exe
?????文件???????28160??2015-10-25?10:57??Calculator\Calculator\bin\Debug\Laura.Compute.Test.pdb
?????目錄???????????0??2015-10-26?12:18??Calculator\Calculator\bin\Release\
?????文件???????42496??2015-10-26?15:08??Calculator\Calculator\bin\Release\Calculator.exe
?????文件?????????187??2015-10-20?09:55??Calculator\Calculator\bin\Release\Calculator.exe.config
?????文件???????48640??2015-10-26?15:08??Calculator\Calculator\bin\Release\Calculator.pdb
?????文件???????23168??2015-10-26?15:08??Calculator\Calculator\bin\Release\Calculator.vshost.exe
?????文件?????????187??2015-10-20?09:55??Calculator\Calculator\bin\Release\Calculator.vshost.exe.config
?????文件?????????490??2010-03-17?22:39??Calculator\Calculator\bin\Release\Calculator.vshost.exe.manifest
?????文件???????77312??2015-10-25?20:17??Calculator\Calculator\bin\Release\Laura.Compute.dll
?????文件??????220672??2015-10-25?20:17??Calculator\Calculator\bin\Release\Laura.Compute.pdb
?????文件???????15360??2015-10-25?20:17??Calculator\Calculator\bin\Release\Laura.Compute.Test.exe
?????文件???????26112??2015-10-25?20:17??Calculator\Calculator\bin\Release\Laura.Compute.Test.pdb
?????文件????????5665??2015-10-25?20:17??Calculator\Calculator\Calculator.csproj
?????文件?????????453??2015-10-25?20:17??Calculator\Calculator\Calculator.csproj.user
?????文件???????15178??2015-10-26?15:08??Calculator\Calculator\Form1.cs
............此處省略179個文件信息
- 上一篇:仿QQ聊天系統,基于C#的實現
- 下一篇:ASP.NET/C#超市庫存管理系統
評論
共有 條評論