C# :: Aufgabe #189 :: Lösung #3
9 Lösungen

#189
Zahlen umwandeln: Binär zu Dezimal
Anfänger - C#
von Nachbar
- 13.09.2017 um 14:19 Uhr
Schreibe eine Funktion, die Zahlen aus dem Dualsystem in Zahlen des Dezimalsystems umwandelt.
Beispiel:
Binär: 11010
Dezimal: 26
Beispiel:
Binär: 11010
Dezimal: 26
#3

von Layn (100 Punkte)
- 20.09.2017 um 13:49 Uhr

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 DualDezimaWandler { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Button_Click(object sender, RoutedEventArgs e) { var bin = Convert.ToString(tb1.Text); int Stringlänge = bin.Length; int Rückgabe = 0; if (!System.Text.RegularExpressions.Regex.IsMatch(bin, "[01]{" + Stringlänge + "}") || Stringlänge > 31) throw new Exception("Ungültige Zeichenfolge"); else for (int i = 0; i < Stringlänge; i++){ if (bin[i] == '1') Rückgabe += (int)Math.Pow(2, Stringlänge - 1 - i); } tb2.Text = Convert.ToString(Rückgabe); } } }

<Window x:Class="DualDezimaWandler.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="21*"/> <ColumnDefinition Width="165*"/> <ColumnDefinition Width="310*"/> <ColumnDefinition Width="21*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="47*"/> <RowDefinition Height="31*"/> <RowDefinition Height="30*"/> <RowDefinition Height="30*"/> <RowDefinition Height="24*"/> <RowDefinition Height="39*"/> <RowDefinition Height="119*"/> </Grid.RowDefinitions> <TextBox x:Name="tb1" Grid.Column="1" Grid.Row="1" Grid.ColumnSpan="2"></TextBox> <TextBox x:Name="tb2" Grid.Column="1" Grid.Row="3" Grid.ColumnSpan="2"></TextBox> <Button Grid.Column="1" Grid.Row="5" Click="Button_Click">Umrechnen</Button> </Grid> </Window>
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1