我收到了两个文件:Sumator.cs 和 Kalkulator.cs @ Visual Studio 2012
我想你不需要看那两个,但我确实把它们放在这里,去页面看看我的问题。
Sumator.cs代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Sumator2
{
class Sumator
{
bool Status = false;
double Suma = 0;
public Kalkulator Kalk = new Kalkulator();
public Sumator()
{
}
public void ZmienStatus()
{
Status = !Status;
}
public string PokazStatus()
{
if (Status == true)
return " Sumator włączony";
else
return " Sumator wyłaczony";
}
public void PokazWynikS()
{
if (Status == true)
Suma += Kalk.Wynik;
Console.WriteLine("Wynik działania : " + Kalk.L1.ToString() + " " + Kalk.Dzialanie.ToString() + " " + Kalk.L2.ToString() + " = " + Kalk.Wynik.ToString() + PokazStatus() + " Suma= " + Suma.ToString());
}
public void Zeruj()
{
Suma = 0;
}
}
}
Kalkulator.cs代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Sumator2
{
class Kalkulator
{
public double L1;
public double L2;
public double Wynik;
public String Dzialanie = "";
public Kalkulator()
{
}
void Oblicz()
{
switch (Dzialanie)
{
case "+":
Wynik = L1 + L2;
break;
case "-":
Wynik = L1 - L2;
break;
case "*":
Wynik = L1 * L2;
break;
case "/":
Wynik = L1 / L2;
break;
}
}
public void PodajDzialanie(double licz1, double licz2, string dz)
{
L1 = licz1;
L2 = licz2;
Dzialanie = dz;
Oblicz();
}
public void PokazWynik()
{
Console.WriteLine("Wynik działania : " + L1.ToString() + " " + Dzialanie.ToString() + " " + L2.ToString() + " = " + Wynik.ToString());
}
}
}
我已经为这两个编写了我的主要代码。 Program.cs代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Sumator2
{
class Program
{
static void Main(string[] args)
{
Sumator s1 = new Sumator();
s1.ZmienStatus();
bool userNum = true;
while (userNum)
{
double userDouble;
string userString = Console.ReadLine();
if (userNum = double.TryParse(userString, out userDouble))
{
userDouble = Convert.ToDouble(userString);
userNum = false;
}
else
{
Console.WriteLine("Nie podano liczby!");
userNum = true;
}
}
s1.Kalk.PodajDzialanie(userDouble, 2, "*");
s1.PokazWynikS();
s1.Kalk.PokazWynik();
s1.Kalk.PodajDzialanie(userDouble, 2, "+");
s1.PokazWynikS();
s1.Kalk.PokazWynik();
Console.ReadKey();
}
}
}
问题是我想将 s1.Kalk.PodajDzialanie() 函数与这些参数一起使用:
s1.Kalk.PodajDzialanie(userDouble, 2, "*");
我得到了如下错误:
The name 'userDouble' does not exists in the current context
我的意思是重量*?如果我喜欢,此功能可以正常工作:
s1.Kalk.PodajDzialanie(2, 2, "*");