Hallo zusammen,
die Aufgabe besteht darin einen Winkelumrechner zu programmieren. Mithilfe von Visual Studio und einer relativ verschachtelten switch-case Struktur habe ich die Methode umrechnen erstellt. In dieser Methode Umrechnen werden wiederum zuvor definierte Methoden aufgerufen (zb. GradZuGon etc.). Diese Methoden haben wiederum einen Eingangsparameter (z.B. double grad). Das Problem besteht nun darin , dass wenn ich die Variable dblErgebnis = GradzuGon(double grad) in der Methode Umrechnen setze, die Fehlermeldung "der Name grad ist im aktuellen Kontext nicht vorhanden " kommt. Wahrscheinlich ist die Lösung relativ banal, bin leider noch Neuling im programmieren.
Das wäre der Quellcode
Danke im Voraus !
die Aufgabe besteht darin einen Winkelumrechner zu programmieren. Mithilfe von Visual Studio und einer relativ verschachtelten switch-case Struktur habe ich die Methode umrechnen erstellt. In dieser Methode Umrechnen werden wiederum zuvor definierte Methoden aufgerufen (zb. GradZuGon etc.). Diese Methoden haben wiederum einen Eingangsparameter (z.B. double grad). Das Problem besteht nun darin , dass wenn ich die Variable dblErgebnis = GradzuGon(double grad) in der Methode Umrechnen setze, die Fehlermeldung "der Name grad ist im aktuellen Kontext nicht vorhanden " kommt. Wahrscheinlich ist die Lösung relativ banal, bin leider noch Neuling im programmieren.
Das wäre der Quellcode
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace GDI_Hausübung_1
{
/// <summary>
/// Interaktionslogik für MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public string strWinkel;
public string strEingabe;
public string strAusgabe;
public double dblWinkel;
public double dblErgebnis;
public MainWindow()
{
InitializeComponent();
strWinkel = "";
strEingabe = "";
strAusgabe = "";
dblWinkel = 0;
dblErgebnis = 0;
}
public double GradZuRadient(double grad)
{
double lokalRadient;
lokalRadient = grad * Math.PI / 180;
return lokalRadient;
}
public double GradZuGon(double grad)
{
double lokalGon;
lokalGon = grad * 200 / 180;
return lokalGon;
}
public double RadientZuGrad(double radient)
{
double lokalGrad;
lokalGrad = radient * 180 / Math.PI;
return lokalGrad;
}
public double RadientZuGon(double radient)
{
double lokalGon;
lokalGon = 200 * radient / Math.PI;
return lokalGon;
}
public double GonZuGrad(double gon)
{
double lokalGrad;
lokalGrad = gon * 180 / 200;
return lokalGrad;
}
public double GonZuRadient(double gon)
{
double lokalRadient;
lokalRadient = gon * Math.PI / 200;
return lokalRadient;
}
public string EingangsEinheit()
{
string lokalText;
lokalText = "";
if (radiobuttongrad.IsChecked == true)
{
lokalText = "grad";
}
if (radiobuttongon.IsChecked == true)
{
lokalText = "radient";
}
if (radiobuttongon.IsChecked == true)
{
lokalText = "gon";
}
return lokalText;
}
public string AusgangsEinheit()
{
string lokalText;
lokalText = "";
if (radiobuttongrad1.IsChecked == true)
{
lokalText = "grad";
}
if (radiobuttonradient1.IsChecked == true)
{
lokalText = "radient";
}
if (radiobuttongon1.IsChecked == true)
{
lokalText = "gon";
}
return lokalText;
}
public void Umrechnen(double value)
{
strEingabe = EingangsEinheit();
strAusgabe = AusgangsEinheit();
switch (strEingabe)
{
case "grad":
switch (strAusgabe)
{
case "grad":
dblErgebnis = value;
break;
case "gon":
dblErgebnis = GradZuGon(double grad);
break;
case "radient":
dblErgebnis = GradZuRadient(double grad);
break;
}
break;
case "gon":
switch (strAusgabe)
{
case "grad":
dblErgebnis = GonZuGrad(double gon);
break;
case "gon":
dblErgebnis = value;
break;
case "radient":
dblErgebnis = GonZuGrad(double gon);
break;
}
break;
case "radient":
switch (strAusgabe)
{
case "grad":
dblErgebnis = RadientZuGrad(double radient);
break;
case "gon":
dblErgebnis = RadientZuGon(double radient);
break;
case "radient":
dblErgebnis = value;
break;
}
break;
}
}
public void AnzeigenUmrechnung()
{
labelErgebnis.Content = textboxeingabe.Text + EingangsEinheit() + " ergibt " + dblErgebnis + AusgangsEinheit();
}
}
}
Zuletzt bearbeitet: