C# :: Aufgabe #329 :: Lösung #1
8 Lösungen
#329
Spannung, Stromstärke, Widerstand
Anfänger - C#
von JKooP
- 04.10.2020 um 12:43 Uhr
Schreibe eine Methode/Funktion, die je nach Eingabe von 2 Werten den fehlenden Wert ermittelt.
Die möglichen einzugebenden Werte sind Spannung (U [Volt]), Widerstand (R [Ohm]) bzw. Stromstärke (I [Ampere]).
Der fehlende Wert kann null/nothing oder jedes andere beliebige Zeichen sein.
Die Formel zur Berechnung lautet: U = R * I
Beispiel:
U := 270.0
R := null
I := 3.0
R = I / U = 270 / 3 = 90.0 Ohm
Viel Spaß
Die möglichen einzugebenden Werte sind Spannung (U [Volt]), Widerstand (R [Ohm]) bzw. Stromstärke (I [Ampere]).
Der fehlende Wert kann null/nothing oder jedes andere beliebige Zeichen sein.
Die Formel zur Berechnung lautet: U = R * I
Beispiel:
U := 270.0
R := null
I := 3.0
R = I / U = 270 / 3 = 90.0 Ohm
Viel Spaß
#1
von Waldgeist (2310 Punkte)
- 12.10.2020 um 13:00 Uhr
Hallo,
hier meine Lösung.
C#-Code
hier meine Lösung.
using System;
using System.Windows.Forms;
namespace Aufgabe_329___Strom
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private int I = 0;
private int U = 0;
private int R = 0;
private bool fehler;
private void Anzeige()
{
// Anzeige Stromstärke Textbox 1 --> Prüfen ob direkt angezeigt werden kann, falls nein Variable I=0 setzen und Textbox aktualisieren
try
{
textBox1.Text = I.ToString();
}
catch
{
I = 0;
textBox1.Text = I.ToString();
}
// Anzeige Spannung Textbox 2 --> Prüfen ob direkt angezeigt werden kann, falls nein Variable U=0 setzen und Textbox aktualisieren
try
{
textBox2.Text = U.ToString();
}
catch
{
U = 0;
textBox1.Text = U.ToString();
}
// Anzeige Widerstand Textbox 3 --> Prüfen ob direkt angezeigt werden kann, falls nein Variable R=0 setzen und Textbox aktualisieren
try
{
textBox3.Text = R.ToString();
}
catch
{
R = 0;
textBox3.Text = R.ToString();
}
}
private int Strom()
{
try
{
I = Convert.ToInt32(textBox1.Text);
}
catch (Exception)
{
I = 0;
}
return I;
}
private int Spannung()
{
try
{
U = Convert.ToInt32(textBox2.Text);
}
catch (Exception)
{
U = 0;
}
return U;
}
private int Widerstand()
{
try
{
R = Convert.ToInt32(textBox3.Text);
}
catch (Exception)
{
R = 0;
}
return R;
}
private void Abfrage()
{
fehler = false;
//Abfrage Werte
Strom();
Spannung();
Widerstand();
//Prüfung der Werte
if ((I == 0) && ((U == 0) || (R == 0)))
{
fehler = true;
}
if ((U == 0) && ((I == 0) || (R == 0)))
{
fehler = true;
}
if ((R == 0) && ((U == 0) || (I == 0)))
{
fehler = true;
}
if (fehler)
{
MessageBox.Show("Zu wenig Angaben!");
}
}
private void Form1_Load(object sender, EventArgs e)
{
Anzeige();
}
private void button1_Click(object sender, EventArgs e)
{
Close();
}
private void button2_Click(object sender, EventArgs e)
{
//Abfrage der Werte über Methoden
Abfrage();
// Auswertung
if (I == 0)
{
try
{
I = U / R;
Anzeige();
}
catch
{
I = 0;
Anzeige();
}
}
if (U == 0)
{
try
{
U = R * I;
Anzeige();
}
catch
{
U = 0;
Anzeige();
}
}
if (R == 0)
try
{
R = U / I;
Anzeige();
}
catch
{
R = 0;
Anzeige();
}
}
}
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
