Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C++CLI / VB .Net / .Net-Framework » Zahlen unterscheiden

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
26.10.2006, 00:18 Uhr
jeller



Hallo ich habe bei den unten augeführten Code versucht zu erreichen das nicht 2 gleiche zahlen angezeigt werden .

Visual Basic:
'Erster Versuch
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim Zahl As New Random()
        Dim erg As Integer = Zahl.Next(+1, +49)
        Dim erg1 As Integer = Zahl.Next(+1, +49)
        Dim erg2 As Integer = Zahl.Next(+1, +49)
        Dim erg3 As Integer = Zahl.Next(+1, +49)
        Dim erg4 As Integer = Zahl.Next(+1, +49)
        Dim erg5 As Integer = Zahl.Next(+1, +49)
        Select Case erg
            Case Is <> erg1, Is <> erg2, Is <> erg3, Is <> erg4, Is <> erg5
                Label1.Text = erg
                Select Case erg1
                    Case Is <> erg, Is <> erg2, Is <> erg3, Is <> erg4, Is <> erg5
                        Label2.Text = erg1
                End Select
                Select Case erg2
                    Case Is <> erg, Is <> erg1, Is <> erg3, Is <> erg4, Is <> erg5
                        Label3.Text = erg2
                End Select
                Select Case erg3
                    Case Is <> erg, Is <> erg2, Is <> erg1, Is <> erg4, Is <> erg5
                        Label4.Text = erg3
                End Select
                Select Case erg4
                    Case Is <> erg, Is <> erg2, Is <> erg1, Is <> erg3, Is <> erg5
                        Label5.Text = erg4
                End Select
                Select Case erg5
                    Case Is <> erg, Is <> erg2, Is <> erg1, Is <> erg4, Is <> erg5
                        Label6.Text = erg5
                End Select
        End Select
      


    End Sub



End Class



Visual Basic:

'Zweiter Versuch
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim Zahl As New Random()
        Dim erg As Integer = Zahl.Next(+1, +49)
        Dim erg1 As Integer = Zahl.Next(+1, +49)
        Dim erg2 As Integer = Zahl.Next(+1, +49)
        Dim erg3 As Integer = Zahl.Next(+1, +49)
        Dim erg4 As Integer = Zahl.Next(+1, +49)
        Dim erg5 As Integer = Zahl.Next(+1, +49)
        Select Case erg
            Case Is <> erg1, Is <> erg2, Is <> erg3, Is <> erg4, Is <> erg5
                Label1.Text = erg
              
        End Select
        Select Case erg1
            Case Is <> erg, Is <> erg2, Is <> erg3, Is <> erg4, Is <> erg5
                Label2.Text = erg1
        End Select
        Select Case erg2
            Case Is <> erg, Is <> erg1, Is <> erg3, Is <> erg4, Is <> erg5
                Label3.Text = erg2
        End Select
        Select Case erg3
            Case Is <> erg, Is <> erg2, Is <> erg1, Is <> erg4, Is <> erg5
                Label4.Text = erg3
        End Select
        Select Case erg4
            Case Is <> erg, Is <> erg2, Is <> erg1, Is <> erg3, Is <> erg5
                Label5.Text = erg4
        End Select
        Select Case erg5
            Case Is <> erg, Is <> erg2, Is <> erg1, Is <> erg4, Is <> erg5
                Label6.Text = erg5
        End Select


    End Sub



End Class


irgentwie hat beides nicht geklappt
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.10.2006, 14:19 Uhr
Marco Griep



Hallo jeller,
Kenn mich zwar nicht so gut mit VB aus.
Aber ich glaub dein Code ist ganz in Ordnung.
Schreib dein Visual Studio eine Fehlermeldung???


Falls dir das weiterhilft vll mal einen C# Code:


Code:
using System;
using System.Collections.Generic;

namespace Randoma
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            
            int zahl1;
            int zahl2;
            int radomizer;
            Random randi = new Random();
            Console.WriteLine("Bitte die erste zahl eingeben:");
            zahl1 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Bitte die zweite zahl eingeben:");
            zahl2 = Convert.ToInt32(Console.ReadLine());
            radomizer = randi.Next(zahl1, zahl2);
            Console.WriteLine("Ihre Zahl: " + radomizer);
            Console.ReadLine();
        }
    }
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.10.2006, 14:33 Uhr
jeller



Hey Marco
also das programm startet ohne Probleme . Und zeigt keine fehler meldung.
Erst hatt er auch immer verschiedene Zahlen angezeigt .
Doch nach einiger Zeit hatte er 2 gleiche zahlen angezeigt (bei dem ersten versuch)
Und beim zweiten versuch hatt er glaub ich ganz schnell 2 gleiche angezeigt.

Mfg jeller
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.10.2006, 15:01 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Du hast auch einige logische fehler drin.
Mach das so:
Definiere eine HashMap, mit dem aktuellen key den Random() ausgespuckt hat und dem wert 1.
Später musst du dann nur abfragen, ob die neue Zahl von Random in der HashMap den Wert 1 hat.

Code:
HashMap<int, int> map = new HashMap<int, int>();
int foo = (new Random()).nextInt();
map.put(foo, 1);
if(map.get((new Random()).nextInt())))
{
    //suche neue Zufallszahl
}

Das ist Java, etwas musst du ja schon selbst machen ...
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.10.2006, 15:30 Uhr
jeller



Danke aber da ich keine ahnung von java hab und nicht weiß was du mit der HashMap anstellst kann ich das nicht auf Vb übersetzten .Vllt sagst du mein Logischen Lehler ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.10.2006, 16:02 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


HashMap hat einen key und einen wert. Jeder key is einem wert zugeordnet. Sobald eine Zahl vorkommt, setzt du deren wert dann auf 1 und übeprüfst jedesmal, ob der wert unter dem key der neuen zufallszahl 1 ist. Wenn ja suchst du ne neue weil sie dann schon vorkam.
HashMap in Java ist bei dir Hashtable. Den rest musst du selber machen. Im Prinzip hab ich schon alles verraten ...
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
28.10.2006, 23:54 Uhr
jeller



check ich zwar net aber ich will des programm so und so noch mal über denken und von anfang an neu aufbaun also werde ich das erstmal net brauchen .


danke
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C++CLI / VB .Net / .Net-Framework ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: