C# :: Aufgabe #329

8 Lösungen Lösungen öffentlich

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ß

Lösungen:

vote_ok
von Waldgeist (2310 Punkte) - 12.10.2020 um 13:00 Uhr
Hallo,

hier meine Lösung.

Quellcode ausblenden C#-Code
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();
                }
        }
    }
}
vote_ok
von Trickster (330 Punkte) - 14.10.2020 um 12:20 Uhr
Quellcode ausblenden C#-Code
using System;

namespace ConsoleApp1
{
    public class Program
    {

        public static string Var_U { get; set; }
        public static string Var_R { get; set; }
        public static string Var_I { get; set; }

        static void Main(string[] args)
        {
            Console.WriteLine("Bitte die Spannung eingeben");
            Var_U = Console.ReadLine();
            Console.WriteLine("Bitte den Widerstand eingeben");
            Var_R = Console.ReadLine();
            Console.WriteLine("Bitte die Stromstärke eingeben");
            Var_I = Console.ReadLine();

            if (String.IsNullOrWhiteSpace(Var_R))
            {
                var Result = Convert.ToDouble(Var_U) / Convert.ToDouble(Var_I);
                Console.WriteLine("Der Widerstand beträgt " + Result + " Ohm");
            }
            if (String.IsNullOrWhiteSpace(Var_U))
            {
                var Result = Convert.ToDouble(Var_R) * Convert.ToDouble(Var_I);
                Console.WriteLine("Die Spannung beträgt " + Result + " Volt");

            }
            if (String.IsNullOrWhiteSpace(Var_I))
            {
                var Result = Convert.ToDouble(Var_U) / Convert.ToDouble(Var_R);
                Console.WriteLine("Die Stromstärke beträgt " + Result + " Ampere");
            }
            Console.ReadLine();
        }
    }
}
vote_ok
von Trickster (330 Punkte) - 14.10.2020 um 12:23 Uhr
Quellcode ausblenden C#-Code
using System;

namespace ConsoleApp1
{
    public class Program
    {

        public static string Var_U { get; set; }
        public static string Var_R { get; set; }
        public static string Var_I { get; set; }

        static void Main(string[] args)
        {
            Console.WriteLine("Bitte die Spannung eingeben");
            Var_U = Console.ReadLine();
            Console.WriteLine("Bitte den Widerstand eingeben");
            Var_R = Console.ReadLine();
            Console.WriteLine("Bitte die Stromstärke eingeben");
            Var_I = Console.ReadLine();

            if (String.IsNullOrWhiteSpace(Var_R))
            {
                var Result = Convert.ToDouble(Var_U) / Convert.ToDouble(Var_I);
                Console.WriteLine("Der Widerstand beträgt " + Result + " Ohm");
            }
            if (String.IsNullOrWhiteSpace(Var_U))
            {
                var Result = Convert.ToDouble(Var_R) * Convert.ToDouble(Var_I);
                Console.WriteLine("Die Spannung beträgt " + Result + " Volt");

            }
            if (String.IsNullOrWhiteSpace(Var_I))
            {
                var Result = Convert.ToDouble(Var_U) / Convert.ToDouble(Var_R);
                Console.WriteLine("Die Stromstärke beträgt " + Result + " Ampere");
            }
            Console.ReadLine();
        }
    }
}
vote_ok
von Lena (20 Punkte) - 22.10.2020 um 22:05 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Primzahlberechnung
{
    class Program
    {
        static void Main(string[] args)
        {
            double u,r,i;
            Console.WriteLine("Spannung: ");
            u = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Wiederstand: ");
            r = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Strom: ");
            i = Convert.ToDouble(Console.ReadLine());

            if (u == 0)
                Console.WriteLine("U = "+r*i+"V");

            else if (r == 0)
                Console.WriteLine("R = " + u /i+"Ohm ");

            else if (i == 0)
                Console.WriteLine("I = " + u /r+"A");
            Console.ReadKey();
        }
    }
}
vote_ok
von JKooP (18090 Punkte) - 02.11.2020 um 14:11 Uhr
// NET Core 3.x
Quellcode ausblenden C#-Code
using System;
namespace CS_Aufgabe_329_R_I_U
{
    class Program
    {
        static void Main() => Console.WriteLine(RIU(null, 3, 270));

        static string RIU(double? r = null, double? i = null, double? u = null) => (r, i, u) switch
        {
            (null, _, _) => $"Widerstand: {u / i:F1} Ohm",
            (_, null, _) => $"Stromstaerke: {u / r:F1} Ampere",
            (_, _, null) => $"Spannung: {r * i:F1} Volt",
            _ => string.Empty
        };
    }
}
vote_ok
von Luigi (990 Punkte) - 03.11.2020 um 13:42 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;

namespace _329_SpannungStromstaerkeWiderstand
{
    class Program
    {
        static void MyOhmsches()
        {
            Console.WriteLine("Der Strom beträgt: ");
            double i = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Der Widerstand beträgt: ");
            double r = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Die Spannung beträgt: ");
            double u = Convert.ToDouble(Console.ReadLine());
            if (i == 0)
            {
                i = u / r;
                Console.WriteLine("Der Strom = {0} A", i);
            }
            if (r == 0)
            {
                r = u / i;
                Console.WriteLine("Der Widerstand = {0} Ohm", r);
            }
            if (u == 0)
            {
                u = i * r;
                Console.WriteLine("Die Spannung = {0} V", u);
            }
            Console.ReadKey();

        }

       
        
        static void Main(string[] args)
        {
            MyOhmsches();
            
        }
    }
}
vote_ok
von Overmeier (120 Punkte) - 28.12.2020 um 12:00 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Übungen_Aufgaben_zu_C_329
{
    class Program
    {
        static void Main(string[] args)
        {
            double R, U, I;


            Console.WriteLine("Bitte die Werte Zur Berechnung eines Ohmsches Gesetz in folgender Reihenfolge eingeben: R, I, U : !");
            Console.WriteLine("Bitte R eintragen: ");
            R = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Bitte I eintragen: ");
            I = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Bitte U eintragen: ");
            U = Convert.ToDouble(Console.ReadLine());

            //"Das Berechnung, beim fehlenden Wert R, folgt.
            if (R == 0)
                Console.WriteLine(+U / I + "Wiederstand ");

            //"Das Berechnung, beim fehlenden Wert U, folgt.
            else if (U == 0)
                Console.WriteLine(+R * I + "Volt ");

            //"Das Berechnung, beim fehlenden Wert I, folgt.
            else if (I == 0)
                Console.WriteLine(+U / R + "Ampere ");

            Console.ReadKey();

        }
    }
}
vote_ok
von Afew (20 Punkte) - 10.04.2021 um 12:08 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Balloons
{
    class Program
    {
        static void Main(string[] args)
        {
            //Falls Spannug gesucht wird Tippen Sie bitte "v"
            Console.WriteLine("Spannung: ");
            string spannung = Console.ReadLine();

            Console.WriteLine();

            //Falls Wiederstand gesucht wird Tippen Sie bitte "o"
            Console.WriteLine("Wiederstand:  ");
            string wiederstand = Console.ReadLine();

            Console.WriteLine();

            //Falls Stromstärke gesucht wird Tippen Sie bitte "a"
            Console.WriteLine("Stromstärke: ");
            string stromStaerke = Console.ReadLine();

            Console.WriteLine();
            Rechnung(spannung, wiederstand, stromStaerke );
            Console.ReadLine();

        }


        static void Rechnung (string spannung, string wiederstand, string stromStaerke)
        { 
            double ergebnis = 0;
            string spannungGroess = spannung.ToUpper();
            string wiederstandGroess = wiederstand.ToUpper();
            string stromStaerkeGroess = stromStaerke.ToUpper();


            if(spannungGroess == "V")
            {
                double wiederstadnDouble = Convert.ToDouble(wiederstand);
                double stromStaerkeDouble = Convert.ToDouble(stromStaerke);

                ergebnis = wiederstadnDouble * stromStaerkeDouble;

                Console.WriteLine("Die Spannung beträgt: " + ergebnis + " V");
                
            }
            else if(wiederstandGroess == "O")
            {
                double spannungDouble = Convert.ToDouble(spannung);
                double stromStaerkeDouble = Convert.ToDouble(stromStaerke);

                ergebnis = spannungDouble / stromStaerkeDouble;

                Console.WriteLine("Der Wiederstand beträgt: " + ergebnis + " (Ohm)");

            }
            else if(stromStaerkeGroess == "A")
            {
                double spannungDouble = Convert.ToDouble(spannung);
                double wiederstadnDouble = Convert.ToDouble(wiederstand);

                ergebnis = spannungDouble / wiederstadnDouble;

                Console.WriteLine("Die Stromstärke beträgt: " + ergebnis + " A");

            }

        }
    }
}