현재 컨텍스트에 존재 않습니다 비주얼 스튜디오 당신이 그 두 가지를 볼 필요가 없습니다 생각 2012이름은 없습니다 나는 두 개의 파일받은
@ Sumator.cs 및 Kalkulator.cs을하지만 어쨌든 여기에 두었고 페이지를 내려 가서 내 문제를 확인하십시오.
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 코드 :
s1.Kalk.PodajDzialanie(userDouble, 2, "*");
과 내가 같은 오류가 발생했습니다 :
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() 함수를 사용하고 싶어한다는 것입니다
The name 'userDouble' does not exists in the current context
나는 wt *를 의미합니까? 내가 좋아하는 경우이 기능은 정상적으로 작동합니까 : 당신은 당신의 while
루프 내에서 userDouble
를 선언하고
s1.Kalk.PodajDzialanie(2, 2, "*");
문제를 복제하는 데 필요한 코드의 작은 금액을 게시 해보세요 :
그러나이 은 작업을 수행합니다. 이 문제를 해결하기 위해 3 페이지의 코드를 사용하지 않습니다. – Servy구문 분석 작업을 수행 한 후에도'userDouble' 결과를 얻을 수 있습니까? 어쩌면 값이 누락되었을 수 있습니다. 또한, 영어를 사용하는 주요 인물에게 영어로 의견을 달아 주실 수 있습니까? (이 경우에는 필요하지 않지만 좀 더 복잡한 질문에는 도움이됩니다) – Steven
저는 문제가 어디 있는지 정말로 알지 못했습니다. 어쨌든 그것은 루키 실수 였고 지금은 모두 작동하고 있으며 코드로 계속 진행할 수 있습니다. 다시 한번 고마워! – SubZeroFX