| ■No6249 (韋駄天 さん) に返信 > ただ、1+2+3だとか1+3−4 > のような連続した計算の仕方がわかりません。
Public Class Form1
Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load TextBox1.Text = "1+2+3" TextBox2.ReadOnly = True End Sub
Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click TextBox2.Text = Calc(TextBox1.Text).ToString() End Sub
Function Calc(ByVal expression As String) As Double Using table As New DataTable() table.Columns.Add("ans", GetType(Double), expression) With table.Rows.Add() If .IsNull("ans") Then Return Double.NaN Else Return DirectCast(.Item("ans"), Double) End If End With End Using End Function
End Class |