C# :: Aufgabe #245

8 Lösungen Lösungen öffentlich

Celsius und Fahrenheit Rechner

Anfänger - C# von Gelöschte Person - 31.03.2019 um 15:41 Uhr
Schreibe ein Programm das Celsius in Fahrenheit umrechnet und umgekehrt.











Lösungen:

vote_ok
von EADG (60 Punkte) - 03.04.2019 um 23:04 Uhr
Quellcode ausblenden C-Code
using System;
using System.Net.Http.Headers;
using System.Text.RegularExpressions;
using NUnit.Framework;
namespace Fahrenheit_Celsius_Converter
{
    [TestFixture]
    class Converter
    {
        [Test]
        [TestCase(32, ExpectedResult = 0)]
        [TestCase(392, ExpectedResult = 200)]
        public double TestConvertFtoC(double value)
        {
            return convertFtoC(value);
        }

        [Test]
        [TestCase(0, ExpectedResult = 32)]
        [TestCase(200, ExpectedResult = 392)]
        public double TestConvertCtoF(double value)
        {
            return convertCtoF(value);
        }

        public double convertFtoC(double value)
        {
            return Math.Round((value -32) / 1.8,2);
        }
        public double convertCtoF(double value)
        {
            return Math.Round((value * 1.8) +32,2);
        }
    }
}
2x
vote_ok
von t.wi (660 Punkte) - 13.06.2019 um 11:30 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace celsiusfahreheit
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Für Celius in Fahreheit C, Für Fahrenheit in Celsius F");
            string skala = Console.ReadLine();

            if (skala == "C")
            {
                Console.WriteLine("Bitte Temperatur eingeben");
                double temperatur = Convert.ToDouble(Console.ReadLine());
                Console.WriteLine(temperatur + " Grad Celsius entspricht " + (temperatur * 9 / 5 + 32) + " Grad Fahrenheit");
            }
            else if(skala == "F")
            {
                Console.WriteLine("Bitte Temperatur eingeben");
                double temperatur = Convert.ToDouble(Console.ReadLine());
                Console.WriteLine(temperatur + " Grad Fahrenheit entspricht " + (temperatur - 32) * 5 / 9 + " Grad Celsius");
            }
            Console.ReadLine();

        }
    }
}
1x
vote_ok
von suppengruen (200 Punkte) - 13.06.2019 um 11:45 Uhr
Quellcode ausblenden C#-Code
using System;

namespace Celcius_Rechner
{
    class Program
    {
        static void Main(string[] args)
        {
            int i = 0;
            Console.WriteLine("Herzliche Willkommen zu dem Celcius zu Fahrenheit Rechner.");
            Console.WriteLine("Bitte Gebe immer die Einheiten mit an damit das Programm Weiß was es zu was umrechnen muss\nAlso für 25 Grad Celcius 25°C und für Fahrenheit das gleiche Nur mit F!");
            Eingabe();
            while (i == 0)
            {
                Console.WriteLine("Möchtest du noch was umrechnen?\nWenn ja geb einfach wieder eine Temperatur ein!.\nWenn nicht drücke einfach Enter!");
                Eingabe();
            }
        }
        static void Eingabe()
        {
            Console.WriteLine("Nun gib bitte die Gradzahl ein die du umrechnen willst...");
            float eingabe, ergebnis;
            string hilf;
            string grad;
            hilf = Console.ReadLine();
            if(hilf == "")
            {
                Console.Clear();
                Console.WriteLine("Bis Bald!");
                System.Threading.Thread.Sleep(1000);
               Environment.Exit(0);
            }
            Console.Clear();
            if(hilf.Length - 1 < 1 || hilf.Length - 2 < 1)
            {
                Beenden(1);
            }
            grad = hilf.Substring(hilf.Length - 1);
            hilf = hilf.Substring( 0, hilf.Length - 2);
            eingabe = Convert.ToInt32(hilf);
            ergebnis = Berechnung(eingabe, grad);
            if (grad == "C" || grad == "F")
            {
                if(grad == "C")
                    Console.WriteLine("{0}°C sind {1}°F ",eingabe, ergebnis);
                else if(grad == "F")
                    Console.WriteLine("{0}°F sind {1}°C ", eingabe, ergebnis);
            }
        }
        static float Berechnung(float eingabe, string grad)
        {
            float ergebnis = 0;
            switch(grad)
            {
                case "C":
                    ergebnis = (eingabe * (9 / 5)) + 32;
                    break;
                case "F":
                    ergebnis = (eingabe - 32) * (5f / 9f);
                    break;
                default:
                    Beenden(2);
                    break;
            }
            return ergebnis;
        }
        static void Beenden(int code)
        {
            Console.Clear();
            Console.ForegroundColor = ConsoleColor.Red;
            switch(code)
            {
                case 1:
                    Console.WriteLine("Die Eingabe ist Fehlerhaft.\nProgramm wird beendet!");
                    break;
                case 2:
                    Console.WriteLine("Bei der Eingabe sind keine Einheiten dabei.\nProgramm wird beendet!");
                    break;
            }
            System.Threading.Thread.Sleep(2000);
            Environment.Exit(0);
        }
    }
}
vote_ok
von bebbe80 (300 Punkte) - 24.06.2019 um 07:02 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Trainf
{
    class Program
    {
        public static double TempRechnerFahrenheitCelsius(double temperatur)
        {
            return (temperatur - 32) * (5.0 / 9.0);

        }
        public static double TempRechnerCelsiusFahrenheit(double temperatur)
        {
            return temperatur * 9.0 / 5.0 + 32;

        }

        static void Main(string[] args)
        {
            Console.WriteLine("Für Fahrenheit in Celsius 1 eingeben");
            Console.WriteLine("Für Celsius in Fahrenheit 2 eingeben");
            byte eingabe = byte.Parse(Console.ReadLine());

            if (eingabe == 1)
            {
                Console.WriteLine("Geben sie die Temperatur ein");
                double temp = double.Parse(Console.ReadLine());
                double fahrincels = TempRechnerFahrenheitCelsius(temp);
                Console.WriteLine(temp + " Fahrenheit = " + fahrincels + " Celsius ");
            }
            if (eingabe == 2)
            {
                Console.WriteLine("Geben sie die Temperatur ein");
                double temp = double.Parse(Console.ReadLine());
                double celsinfahr = TempRechnerCelsiusFahrenheit(temp);
                Console.WriteLine(temp + " Celsiu = " + celsinfahr + " Fahrenheit ");
            }


            Console.ReadLine();


        }
    }
}
vote_ok
von Waldgeist (2310 Punkte) - 01.11.2019 um 09:52 Uhr
Quellcode ausblenden C#-Code
using System;

namespace Temperatur_Umrechnung
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Programm zur Umrechnung von Temperaturskalen");
            Console.WriteLine("");

            char Wiederholung;
            double Auswahl = 0;
            double Kelvin = 0;
            double Celsius = 0;
            double Fahrenheit = 0;

            do
            {
                Console.WriteLine("");
                Console.WriteLine("Bitte geben Sie die Ausgangsskala an");
                Console.WriteLine("");
                Console.WriteLine("1 = Kelvin");
                Console.WriteLine("2 = Celsius");
                Console.WriteLine("3 = Fahrenheit");



                Auswahl = double.Parse(Console.ReadLine());

                switch (Auswahl)
                {
                    case 1:
                        Console.WriteLine("Bitte geben Sie die Temperatur in Kelvin ein");
                        Kelvin = double.Parse(Console.ReadLine());
                        Celsius = Kelvin - 273.15;
                        Fahrenheit = Kelvin * 1.8 - 459.67;
                        Console.WriteLine("Diese Temperatur entspricht {0} °Celsius", Celsius);
                        Console.WriteLine("Diese Temperatur entspricht {0} °Fahrenheit", Fahrenheit);
                        break;


                    case 2:
                        Console.WriteLine("Bitte geben Sie die Temperatur in Celsius ein");
                        Celsius = double.Parse(Console.ReadLine());
                        Kelvin = Celsius + 273.15;
                        Fahrenheit = Celsius * 1.8 + 32;
                        Console.WriteLine("Diese Temperatur entspricht {0} °Kelvin", Kelvin);
                        Console.WriteLine("Diese Temperatur entspricht {0} °Fahrenheit", Fahrenheit);
                        break;

                    case 3:
                        Console.WriteLine("Bitte geben Sie die Temperatur in Fahrenheit ein");
                        Fahrenheit = double.Parse(Console.ReadLine());
                        Kelvin = (Fahrenheit + 459.67) * 5 / 9;
                        Celsius = (Fahrenheit - 32) * 5 / 9;
                        Console.WriteLine("Diese Temperatur entspricht {0} °Kelvin", Kelvin);
                        Console.WriteLine("Diese Temperatur entspricht {0} °Celsius", Celsius);
                        break;
                }
                Console.WriteLine();
                Console.WriteLine("Eine weitere Berecchnung (j/n)? ");

                Wiederholung = char.Parse(Console.ReadLine());

            } while (Wiederholung == 'j');


        }
    }
}

vote_ok
von Penke (70 Punkte) - 08.11.2019 um 10:43 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Windows.Forms;

namespace WindowsFormsApp3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private float CToF(float c)
        {
            return c * 1.8f + 32f;

        }

        private float CToK(float c)
        {
            return c + 273.15f;

        }

        private float KToC(float c)
        {
            return c - 273.15f;

        }

        private float FToC(float f)
        {
            return (f - 32) * 5 / 9;

        }

        private void button1_Click(object sender, EventArgs e)
        {
            float input = 0;

            try
            {
                input = float.Parse(textBox1.Text);
            }
            catch (Exception)
            {
                textBox2.Text = "Eingabe überprüfen!";
                return;
            }
            switch (comboBox1.SelectedIndex)
            {
                case 0:
                    switch (comboBox2.SelectedIndex)
                    {
                        case 0:
                            textBox2.Text = input.ToString();

                            break;
                        case 1:
                            textBox2.Text = KToC(input).ToString();
                            break;
                        case 2:
                            textBox2.Text = CToF(KToC(input)).ToString();
                            break;
                    }
                    break;
                case 1:

                    switch (comboBox2.SelectedIndex)
                    {
                        case 0:
                            textBox2.Text = CToK(input).ToString();

                            break;
                        case 1:
                            textBox2.Text = input.ToString();
                            break;
                        case 2:
                            textBox2.Text = CToF(input).ToString();
                            break;
                    }
                    break;
                case 2:
                    switch (comboBox2.SelectedIndex)
                    {
                        case 0:
                            textBox2.Text = CToK(FToC(input)).ToString();

                            break;
                        case 1:
                            textBox2.Text = FToC(input).ToString();
                            break;
                        case 2:
                            textBox2.Text = input.ToString();
                            break;
                    }
                    break;
            }

        }
    }
}
vote_ok
von JKooP (18090 Punkte) - 30.03.2020 um 14:58 Uhr
Hier als WinForm (siehe Grafik)
Converter für Celsius, Kelvin und Fahrenheit durch Eingabe in die entsprechenden Textboxen.

Quellcode ausblenden C#-Code
using System;

using System.Windows.Forms;

namespace CS_Aufgabe_245_Converter
{
    public partial class Form1 : Form
    {
        private double _celsius;

        public Form1()
        {
            InitializeComponent();
        }

        private string Celsius
        {
            get => Math.Round(_celsius, 2).ToString("#,#0.00");
            set
            {
                _ = double.TryParse(value, out var c);
                _celsius = value != "" ? c : 0;
            }
        }

        private string Fahrenheit
        {
            get => Math.Round(_celsius * 1.8 + 32, 2).ToString("#,#0.00");
            set
            {
                _ = double.TryParse(value, out var f);
                _celsius = value != "" ? (1.8 + 32) / f : 0;
            }
        }

        private string Kelvin
        {
            get => Math.Round(_celsius + 273.15, 2).ToString("#,#0.00");
            set
            {
                _ = double.TryParse(value, out var k);
                _celsius = value != "" ? k - 273.15 : 0;
            }
        }

        private void txtCelsius_KeyUp(object sender, KeyEventArgs e)
        {
            Celsius = txtCelsius.Text;
            txtKelvin.Text = Kelvin;
            txtFahrenheit.Text = Fahrenheit;
        }

        private void txtKelvin_KeyUp(object sender, KeyEventArgs e)
        {
            Kelvin = txtKelvin.Text;
            txtCelsius.Text = Celsius;
            txtFahrenheit.Text = Fahrenheit;
        }

        private void txtFahrenheit_KeyUp(object sender, KeyEventArgs e)
        {
            Fahrenheit = txtFahrenheit.Text;
            txtCelsius.Text = Celsius;
            txtKelvin.Text = Kelvin;
        }
    }
}
vote_ok
von Princetux80 (20 Punkte) - 08.03.2021 um 20:43 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CelsiusFahrenheit
{
    class Program
    {
        static void Main(string[] args)
        {
            double temp = 0.0;
            Console.WriteLine("Was möchten sie berechnen C = Celsius, F = Fahrenheit ?");
            string choise = Console.ReadLine();

            if (choise == "C")
            {
                Console.WriteLine("Bitte Temperatur in Fahrenheit eingeben:");
                temp = Convert.ToDouble(Console.ReadLine());
                Console.WriteLine(temp + " Grad Celsius ist " + (temp * 9 / 5 + 32) + " Grad Fahrenheit");
                Console.ReadKey();
            } 
            else if(choise == "F")
            {
                Console.WriteLine("Bitte Temperatur in Celsius eingeben:");
                temp = Convert.ToDouble(Console.ReadLine());
                Console.WriteLine(temp+ " Grad Fahrenheit entspricht " + (temp - 32) * 5 / 9 + " Grad Celsius");
                Console.ReadKey();
            }
              else
            {
                Console.WriteLine("Sie müssen Sich für C oder F entscheiden, andere sind nicht zulässig");
                Console.ReadLine();
                

            }
        }
    }
}
2092670

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.