C# :: Aufgabe #6 :: Lösung #4

31 Lösungen Lösungen öffentlich
#6

Anwendung zum Zahlenraten mit if und else

Anfänger - C# von Gustl - 28.07.2012 um 17:11 Uhr
Schreiben Sie eine Anwendung, mit dem das Spiel 'Zahlenraten' gespielt werden kann.
Per Zufallsgenerator wird eine Zahl zwischen 1 und 100 erzeugt, aber nicht angezeigt.
Der Benutzer soll so lange Zahlen in einer TextBox eingeben bis er die Zahl erraten hat. Als Hilfestellung soll jedes Mal ausgegeben werden, ob die eingegebene Zahl größer oder kleiner als die zu ratende Zahl ist.

Benötigt wird für die GUI Oberfläche werden:
1x TextBox in der die Zahl eingegeben werden kann.
1x Button für das Erzeugen einer neuen zufälligen Zahl.
1x Button zum Prüfen ob die eingegeben Zahl die richtige ist.
1x Label wo der Benutzer die Info bekommt ob die eingegebe Zahl größer oder kleiner ist.
#4
vote_ok
von B.Denger (730 Punkte) - 09.10.2013 um 10:32 Uhr
Ich habe einige kleinere Änderungen für die Benutzerfreundlichkeit hinzugefügt :)


Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

        int zZahl1;
        string sEingabe;
        int iEingabe;
        //Eingabe in sEingabe Speichern
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            string sEingabe = this.textBox1.Text;
        }
        //Button New
        private void btnGenerate_Click(object sender, EventArgs e)
        {
            this.labText.Visible = true;
            this.textBox1.Visible = true;
            this.btnCheck.Visible = true;
            this.labChoice.Visible = false;
            Random rnd = new Random();
            zZahl1 = rnd.Next(100);
            this.labText.Text = "Es Wurde eine neue Zahl generiert";


        }
        //Button Check
        private void btnCheck_Click(object sender, EventArgs e)
        {
            CheckInput();
        }
        //Überprüft ob die eingabe eine Zahl ist
        public bool CheckInt(string sEingabe)
        {
            int iEingabe;
            if (Int32.TryParse(sEingabe, out iEingabe))
            {
                return true;
            }
            else
            {
                MessageBox.Show("Es wurde keine gültige Zahl eingegeben", "Fehler", MessageBoxButtons.OK);
                return false;
            }

        }
        //Vergleicht die eingabe mit der ZufallsZahl
        public void CheckInput()
        {
            if (CheckInt(sEingabe) == true)
            {
                if (iEingabe < zZahl1)
                {
                    labText.Text = "Die eingegebene Zahl ist zu Klein";
                    labText.ForeColor = Color.Red;
                }
                else if (iEingabe > zZahl1)
                {
                    labText.Visible = false;
                    labText.Text = "Die eingegebene Zahl ist zu Groß";
                    labText.ForeColor = Color.Red;
                    labText.Visible = true;

                }
                else if (iEingabe == zZahl1)
                {
                    labText.Text = "Die eingegebene Zahl ist Richtig!";
                    labText.ForeColor = Color.Green;
                }
            }
        }
        // Wenn der Nutzer Enter drückt, Werden die Zahlen auch verglichen
        private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                CheckInput();
            }
            else
            {
            }
        }

        
    }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben
2107763

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.