myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

C# LowHigh Programmieren

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 29.09.11, 20:29   #1
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard C# LowHigh Programmieren

Hey, ich versuche schon die ganze Zeit mein LowHigh Spiel, in C# programmiert, zu vollenden, allerdings schaffe ich es nicht. Ich bekomme den Algorithmus nicht auf die Reihe, das regt mich tierisch auf. Ich bin noch ganz am Anfang, habe noch nicht viel gelernt , aber das muss doch irgendwie hinhauen. Könnt ihr mir vielleicht helfen? Hier einmal der Quelltext, so wie er im moment ist funktioniert der nicht, müsste angepasst werden ist nämlich nur ein Ausschnitt aus dem Gesamtprogramm :

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

namespace LowHigh
{
    /// <summary>
    /// Name :xx , xx.09.2011
    /// Project : LowHigh
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {

         menue: 
            // Auswahlmenue
        Console.WriteLine("M E N U E");
        Console.WriteLine("=========");
        Console.WriteLine("0. Ende");
        Console.WriteLine("1. Computer raet");
        Console.WriteLine("2. Benutzer raet");
        Console.Write("===> ");
            // Zufall (random) + Verusche zählen (Count) 
                Random zufall = new Random();
                int zahl = zufall.Next(1, 1000);
                int count = 0;
                string eingabe = (Console.ReadLine());
                double geraten1 = 1000, geraten2 = 0;

                if (eingabe == "1")
                {
                    Console.WriteLine("\nDer Computer raet die Zahl des Benutzers!");
                    Console.WriteLine("=========================================\n");
                    Console.WriteLine("Anleitung: Geben Sie k für kleiner und g für größer ein oder r für richtig!");
                    Console.WriteLine("Für Spielbeginn die 1 drücken oder für das Menü die 2 drücken.");

                   string eingabe2 = (Console.ReadLine());

                    if (eingabe2 == "1")
                    {
                      
                    start:

                        Console.WriteLine("Tip: " + geraten1);
                        string eingabe3 = (Console.ReadLine());

                        if (eingabe3 == "k")
                        {
                            geraten2 = geraten2 - geraten1 / 4;
                            Console.WriteLine("Meine Zahl ist kleiner!");
                            goto start;
                        }
                        if (eingabe3 == "g")
                        {
                            geraten2 = geraten2 + geraten1 / 4; ;
                            Console.WriteLine("Meine Zahl ist Größer!");
                            goto start;
                        }
                        if (eingabe3 == "r")
                        {
                            Console.WriteLine("Richtig!");
                            goto menue;
                        }
                        

                    }

                    if (eingabe2 == "2")
                    {
                        goto menue;
                    }

                }
                if (eingabe == "2")
                {
                    Console.WriteLine("\nDer Benutzer raet die Zahl des Computers!");
                    Console.WriteLine("=========================================\n");

                    int geraten;

                    Console.Write("Dein Tip: ");
                    geraten = Convert.ToInt32(Console.ReadLine());

                    if (geraten == zahl)
                    {
                        count++;
                        Console.Write("Richtig!!!\nDu hast " + count + " Versuch(e) benoetigt!\n");
                    }


                    if (geraten < zahl)
                    {
                        count++;
                        Console.WriteLine("Meine Zahl ist größer!!!");
                    }
                    
                    if (geraten > zahl)
                    {
                        count++;
                        Console.WriteLine("Meine Zahl ist kleiner!!!");

                    }

                    while (geraten != zahl)
                    {
                        Console.Write("Dein Tip: ");
                        geraten = Convert.ToInt32(Console.ReadLine());


                        if (geraten < zahl)
                        {
                            count++;
                            Console.WriteLine("Meine Zahl ist größer!!!");
                        }

                        if (geraten > zahl)
                        {
                            count++;
                            Console.WriteLine("Meine Zahl ist kleiner!!!");
                        }

                        if (geraten == zahl)
                        {
                            count++;
                            Console.Write("Richtig!!!\nDu hast " + count + " Versuch(e) benoetigt!\n");
                        }
                    }
                   Console.WriteLine(); 
                        goto menue;
                    
                }
                  }
           

            }
        }
zaisheng ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 21:04   #2
grieche1705
Newbie
 
Registriert seit: Jan 2009
Beiträge: 54
Bedankt: 8
grieche1705 ist noch neu hier! | 0 Respekt Punkte
Standard

dann hast du selbst nicht viel ahnung
den hättest du dir den code angesehen, wüsstest du auch was er will
__________________
Jeden Tag eine Gute Tat und jedem ist geholfen
grieche1705 ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 21:10   #3
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Ich besuche seid gut einem Monat eine Berufsschule für TAI (Technischer Assistent für Informatik).
Habe keinerlei vorkenntnisse und das ist alles total neu für mich. Kleine, leichte Sachen wie einen "Taschenrechner" oder sowas kann ich Programmieren oder halt sowas wie dieses Spiel "LowHigh", allerdings schaffe ich es nicht den Algorithmus zu schreiben, sodass der Computer meine Zahl erraten soll, die ich mir ausgedacht habe. Ich habe vor meiem geistigen Augen schon die "Lösung" kann diese nur nicht richtig umsetzen. Ich möchte nämlich das der Computer, die ausgedachte Zahl, zwischen 1 und 1000 , herausfindet unzwar mit sowenig wie möglichen Versuchen. Dafür muss man halt "nur" den Bereich eingrenzen, d.h. es müsste wie folgt aussehen :


Computertipp : 500
Benutzer : Zahl ist kleiner
// D.h. der Bereich ist zwischen 1 und 500 offen. Dann wieder die Hälfte.
Computertipp : 250
Benuutzer : Zahl ist größer
// D.h. der Bereich ist nun zwischen 250 und 500
Computertipp : 375
Benutzer : Zahl ist größer
// Bereich : 375 und 500
Computertipp : 438 (oder so)
Und dann wieder aussuchen größer oder kleiner, allerdings schaffe ich das nicht umzusetzen.
Das der Benutzer die Zahl des computers rät habe ich geschafft nur andersrum nicht, ... :S
Bitte helft mir ...

Ich habe keine "richtigen" tutorials gefunden, ich habe schon nach "binärem suchen" geschaut, habe nämlich den tipp von meinem lehrer bekommen, allerdings habe ich das nicht richtig verarbeiten können was ich gefunden habe.
Nein programmieren soll mir hier keiner was, ich will nur wissen wie ich vorgehen muss. Es gibt so viele Funktionen und Möglichkeiten, die ich mit meinen minimalsten Grundkenntnissen ja gar nicht wissen kann und somit sehr stark eingeschränkt bin was das programmieren angeht. Deshalb bitte ich um eine kleine Hilfestellung bzgl meines Problems :S

Also im Endeffekt muss ich nur wissen wie ich die Variablen zwischenspeichern kann, sodass das Programm darauf wiederzurückgreifen kann um festzustellen wie groß der Bereich, bzw wie klein, geworden ist , weil sonst würde es so aussehen bzw tut es bei mir im moment.

Bsp. meine Zahl ist 233
500
kleiner
250
kleiner
125
kleiner
67
größer
134
größer
268 (wenn ich jetzt aber kleiner mache kommt das hier raus ):
134 d.h. ich komm nicht dazwischen :S
zaisheng ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 21:13   #4
grieche1705
Newbie
 
Registriert seit: Jan 2009
Beiträge: 54
Bedankt: 8
grieche1705 ist noch neu hier! | 0 Respekt Punkte
Standard

ich denke er weiß nicht wie er dann die zahl erraten soll aber für diese spiel gibt es glaub genug anleitungen im netz
__________________
Jeden Tag eine Gute Tat und jedem ist geholfen
grieche1705 ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 21:19   #5
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Hm, okay HababaX ich habe meinen 1. post editiert und habe dort mal den KOMPLETTEN Quelltext gepostet.
Hoffe du kannst es jetzt besser verstehen.
zaisheng ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 21:49   #6
Melfis
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 22
Bedankt: 9
Melfis ist noch neu hier! | 0 Respekt Punkte
Standard

Überleg doch mal wie viel Bit du brauchst um den Zahlenbereich 0-1000 abzudecken.

MFG Melfis
Melfis ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 21:52   #7
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Ähm... 1 Byte = 8 bit, , 10 bit oder? 0000.0011 1110.1000 (also 2 byte) oder irre ich mich ?
zaisheng ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 22:26   #8
Melfis
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 22
Bedankt: 9
Melfis ist noch neu hier! | 0 Respekt Punkte
Standard

Jap, 10 bit decken den ganzzahligen raum von 0 bis 1023 ab.

Soo.. jetzt stellst der PC nach der Reihe für jedes Bit eine frage(Zahl=400):
PC: 512
Du: Kleiner (->false)
-> das 10te Bit ist false 0?????????
PC: 256
Du: Größer (->true)
-> das 9te Bit ist true 01????????
PC: 384 (Die Bekannten Informationen 256 + das 8te Bit 2^(8-1)=128 )
Du: Größer
-> das 8te Bit ist true 011???????
...

usw. aus dieser Systematik solltest du dir eigentlich einen Code basteln können

MFG Melfis
Melfis ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 22:40   #9
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Ah, okay das hat mir schonmal geholfen die Denkweise zu ändern. Das ist die "Binäre Suche" richtig?
Ich hab dazu aber noch eine Frage, so theoretisch hört sich das ganz einfach an, nur in der Praxis ist es ein wenig schwerer umzusetzen, finde ich, weil ich nicht genau weiß wie ich diese Abfrage bzw Überprüfen von den Bits machen kann ...
zaisheng ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 22:50   #10
Melfis
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 22
Bedankt: 9
Melfis ist noch neu hier! | 0 Respekt Punkte
Standard

Wie weit seit ihr in der schule?
Im Prinzip brauchst du nur:
1 Array
1 Schleife
ein paar if-Else Bedingungen

Die Abfragen stehen prinzipiel in meinen Vorpost,
überlege dir mal was sich grob wiederhohlt,
und welche feinheiten sich ändern.
Schlaf mal ne Nacht drüber, gn8.

MFG Melfis
Melfis ist offline   Mit Zitat antworten
Ungelesen 29.09.11, 23:07   #11
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Wir sind noch nicht weit ... "man ist so stark wie das schwächste Glied in der Kette" passt ganz gut, ... der Unterricht ist so angepasst das alle mitziehen können, naja egal...
Mit if-else kann ich umgehen und Schleifen haben wir gerade gelernt, aber die sind ja auch relativ einfach anzuwenden.
Arrays habe ich noch nicht kennengelernt, sind die Arrays notwendig?
Den Vorgang verstehe ich Melfis, also was du davor geschrieben hast, nur die Vokabeln welche ich brauch um das zu schreiben und dessen Funktionen , zbsp von Arrays weiss ich leider (noch) nicht und kann somit damit nicht arbeiten :S

Naja, ja mach ich mal danke, g8n
zaisheng ist offline   Mit Zitat antworten
Ungelesen 30.09.11, 09:27   #12
Epeos
Ist öfter hier
 
Benutzerbild von Epeos
 
Registriert seit: Nov 2010
Beiträge: 200
Bedankt: 96
Epeos ist noch neu hier! | 0 Respekt Punkte
Standard

Nein, Du brauchst keine Arrays.

In Worten hast Du deinen Algorithmus auch schon ganz gut beschrieben.

Als Tipp nimmst du immer die Zahl, die in der Mitte Deines Suchintervalls liegt.

Anfangen tust Du mit dem Intervall von 1 bis 1000. Erster Tipp ist also (1+1000)/2=500
(abgerundet).

Je nachdem, ob die Zahl größer oder kleiner ist, machst Du mit (500,1000) bzw. mit (1,500) weiter bis Du die Zahl gefunden hast.

Du musst Dir im Wesentlichen nur die Ober- und die Untergrenze des Intervalls merken.

Kleiner Hinweis: Was passiert, wenn Ober- und Untergrenze direkt nebeneinander liegen?
__________________
On a long enough timeline, the survival rate for everyone drops to zero. (Fight Club)
Epeos ist offline   Mit Zitat antworten
Ungelesen 30.09.11, 12:58   #13
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Epeos, danke.
Ähm... wie meinst du das ? Also die Rechnung ist : (1+1000)/2=500 bzw. (minwert+maxwert)/2=mittelwert
Das verstehe ich, aber ich weiss nur nicht wie ich das automatisieren kann. Ich kann natürlich alles bis aufs letzte manuell schreiben, aber das sind dann ja zich Zeilen... Ja, die Ober- und Untergrenze merken, das ist ja was ich will, ich weiß allerdings nicht wie ich das genau angehen kann
Hm falls du das hier meinst 234 und 235 dann ist da was verkehrt gelaufen ... :'D
Aber schon mal danke das du mir hilfst. an die anderen auch schonmal ein danke für die jetztige Hilfe
zaisheng ist offline   Mit Zitat antworten
Ungelesen 01.10.11, 14:08   #14
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Kann mir keiner bei meinem Anliegen behilflich sein?
zaisheng ist offline   Mit Zitat antworten
Ungelesen 01.10.11, 17:17   #15
Melfis
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 22
Bedankt: 9
Melfis ist noch neu hier! | 0 Respekt Punkte
Standard

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {

            String eingabe = "";
            double zahl=0;

            Console.WriteLine("\nDer Computer raet die Zahl des Benutzers!");
            Console.WriteLine("=========================================\n");
            Console.WriteLine("Anleitung: Geben Sie k für kleiner und g für größer ein oder r für richtig!");
            for (int i = 9; i >= 0; i--)
            {
              Console.WriteLine("Ist es " +(zahl+System.Math.Pow(2,i)) +"?");
              eingabe = Console.ReadLine();
              switch (eingabe)
              {
                  case "k":
                      Console.WriteLine("Meine Zahl ist kleiner!");
                      break;
                  case "g":
                      Console.WriteLine("Meine Zahl ist Größer!");
                      zahl += System.Math.Pow(2, i);
                      break;
                  case "r":
                      Console.WriteLine("Richtig!");
                      i = -1;
                      break;
                  default:
                      Console.WriteLine("Unzulässige Eingabe");
                      i++;
                      break;
              }

            }

            Console.ReadLine();
        }
    }
}
@Epeos:
Ne, ein Array braucht man nicht, würde aber die binäre Suche veranschaulichen


Hier,
dann hat das Elend ein Ende
Ne mal im ernst, Kontrollstrukturen sind das A und O bei der Programmierung.
Wenn du mit switch case nichts anfangen kannst, geht auch mit if-else.

Alles was sich am stück wiederhohlt: Schleife
Alles was sich sporadisch wiederhohlt: Methode

MFG Melfis
Melfis ist offline   Mit Zitat antworten
Ungelesen 01.10.11, 18:03   #16
Epeos
Ist öfter hier
 
Benutzerbild von Epeos
 
Registriert seit: Nov 2010
Beiträge: 200
Bedankt: 96
Epeos ist noch neu hier! | 0 Respekt Punkte
Standard

@Melfis: Das ist schon mal eine Struktur als Vorgabe. Aber du solltest schon dazu schreiben, dass das nicht die endgültige Lösung ist :-)

@zaisheng: In Melfis Code musst Du in den switch-Cases die richtige Berechnung für die Ober- und Untergrenze einsetzen und den neuen Tipp ausrechnen. Das muss dann in etwa so aussehen:
Code:
int untergrenze=0;
int obergrenze=1000;
int tipp=0;

[...]

    case "k":
        //untergrenze bleibt gleich, neue obergrenze wird tipp
__________________
On a long enough timeline, the survival rate for everyone drops to zero. (Fight Club)
Epeos ist offline   Mit Zitat antworten
Ungelesen 01.10.11, 18:07   #17
Epeos
Ist öfter hier
 
Benutzerbild von Epeos
 
Registriert seit: Nov 2010
Beiträge: 200
Bedankt: 96
Epeos ist noch neu hier! | 0 Respekt Punkte
Standard

@Melfis: Das ist schon mal eine Struktur als Vorgabe. Aber du solltest schon dazu schreiben, dass das nicht die endgültige Lösung ist :-)

@zaisheng: In Melfis Code musst Du in den switch-Cases die richtige Berechnung für die Ober- und Untergrenze einsetzen und den neuen Tipp ausrechnen. Das muss dann in etwa so aussehen:
Code:
//variablen einmal initialisieren
int untergrenze=0;
int obergrenze=1000;
int tipp=500;

[...]

    //das ist der case in der schleife
    case "k":  
        //untergrenze bleibt gleich, neue obergrenze wird tipp
       obergrenze=tipp;
       //tipp wird (obergrenze+untergrenze)/2
       tipp = (obergrenze+untergrenze)/2;    //Achtung: was passiert hier, wenn obergrenze = untergrenze+1 ist?
       break;

[...]
__________________
On a long enough timeline, the survival rate for everyone drops to zero. (Fight Club)
Epeos ist offline   Mit Zitat antworten
Ungelesen 01.10.11, 18:11   #18
Melfis
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 22
Bedankt: 9
Melfis ist noch neu hier! | 0 Respekt Punkte
Standard

@Epeos: Das ist nicht nur die Struktur, das ist das "PC ratet" Programm, man muss keine Ober und Untergrenze berechnen. Kannst es ja gerne ausprobieren

Den Umgekehrten fall "Mensch ratet" hab ich mir gespart, weil der "PC" ja nur "größer kleiner richtig" schreien muss ^^
Melfis ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 13:08   #19
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Okay danke, aber irgendwie verstehe ich das nicht so ganz, was ist denn :
System.Math.Pow ?

Aufjedenfall ist es super nett von euch das ihr mir das jetzt so gemacht habt, obwohl ich das nicht mal unbedingt wollte, aber es wäre sehr schön, Melfis, wenn du ggf. die Schritte kommentieren könntest :S
Hoffe das ist nicht zu viel verlangt, ich hab mir das jetzt angeschaut und so, verstehe es auch teils, aber das mit System.math.pow nicht, das ist irgendwie aus dem nichts erschienen und wäre halt toll
wenn du die schritte für mich kommentieren könntest :S

Ich habe jetzt deinen Code, Melfis, in mein Programm implentiert, ich hoffe ich durfte das. Ich habe diesen auch ein wenig verändert und ich versuche zu verstehen was es mit diesem "System.Math.Pow" auf sich hat bzw. wie dein Programm diese Rechnung durchführt, naja hier ist jetzt mein Vollständiges Programm.

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

namespace LowHigh
{
    /// <summary>
    /// Name :xx , xx.09.2011
    /// Project : LowHigh
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {

           // Auswahlmenue
            Console.WriteLine("M E N U E");
            Console.WriteLine("=========");
            Console.WriteLine("0. Ende");
            Console.WriteLine("1. Computer raet");
            Console.WriteLine("2. Benutzer raet");
            Console.Write("===> ");
            // Zufall (random) + Verusche zählen (Count) 
            Random zufall = new Random();
            int zahl = zufall.Next(1, 1000);
            int count = 0;
            string eingabe = Console.ReadLine();

            switch (eingabe)
            
            {
                case "1":
                  

                
                double zahl2 = 0;

                Console.WriteLine("\nDer Computer raet die Zahl des Benutzers!");
                Console.WriteLine("=========================================\n");
                Console.WriteLine("Anleitung: Geben Sie [k] fuer kleiner und [g] fuer groeßer\n           ein oder [r] für richtig!\n");
                for (int i = 9; i >= 0; i--)
                {
                    Console.WriteLine("Computertip: " + (zahl2 + System.Math.Pow(2, i)));
                    string eingabe2 = Console.ReadLine();
                    switch (eingabe2)
                    {
                        case "k":
                            Console.WriteLine("Meine Zahl ist kleiner!");
                            break;
                        case "g":
                            Console.WriteLine("Meine Zahl ist Größer!");
                            zahl2 += System.Math.Pow(2, i);
                            break;
                        case "r":
                            Console.WriteLine("Richtig!");
                            i = -1;
                            break;
                        default:
                            Console.WriteLine("Falsche Eingabe");
                            i++;
                            break;
                    }
                }
                return;


                case "2":
                {
                    Console.WriteLine("\nDer Benutzer raet die Zahl des Computers!");
                    Console.WriteLine("=========================================\n");

                    int geraten;

                    Console.Write("Dein Tip: ");
                    geraten = Convert.ToInt32(Console.ReadLine());

                    if (geraten == zahl)
                    {
                        count++;
                        Console.Write("Richtig!!!\nDu hast " + count + " Versuch(e) benoetigt!\n");
                    }


                    if (geraten < zahl)
                    {
                        count++;
                        Console.WriteLine("Meine Zahl ist größer!!!");
                    }

                    if (geraten > zahl)
                    {
                        count++;
                        Console.WriteLine("Meine Zahl ist kleiner!!!");

                    }

                    while (geraten != zahl)
                    {
                        Console.Write("Dein Tip: ");
                        geraten = Convert.ToInt32(Console.ReadLine());


                        if (geraten < zahl)
                        {
                            count++;
                            Console.WriteLine("Meine Zahl ist größer!!!");
                        }

                        if (geraten > zahl)
                        {
                            count++;
                            Console.WriteLine("Meine Zahl ist kleiner!!!");
                        }

                        if (geraten == zahl)
                        {
                            count++;
                            Console.Write("Richtig!!!\nDu hast " + count + " Versuch(e) benoetigt!\n");
                        }
                    }
                    Console.WriteLine();
                    Console.ReadLine();
                    break;

                }

            }
        }

    }
}
Aber schön zu wissen wäre es trotzdem, wie die Binäre Suche in bzw mit c# geht, das war ja auch die eigentliche Aufgabe, einer aus meiner Klasse hat es auch so ähnlich wie du, melfis, gemacht, aber EIG. war die Aufgabe auf dem Zettel man soll versuchen es mit einer "Binären Suche" zu versuchen. Naja, ich mein das ist nur eine Übungsaufgabe für die, die etwas mehr machen wollen, also kein muss, aber trotzdem wäre es schön zu wissen wie das mit der Binären Suche geht.
zaisheng ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 13:50   #20
Melfis
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 22
Bedankt: 9
Melfis ist noch neu hier! | 0 Respekt Punkte
Standard

Langsam glaube ich das du kein interesse am Programmieren hast,
denn du entwickelst keine Eigeninitiative.
C# hat (sowie jede andere Sprache) eine API/Doc mit der Standart-Libs,
gib doch einfach mal "System.Math.Pow" in google ein, der ERSTE treffer beantwortet dir schon alle fragen.

Viel Glück,
Melfis
Melfis ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 14:31   #21
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Hm, das stimmt nicht. Falls ich den Eindruck gemacht habe tut es mir leid
Ich bin sehr wohl interessiert das Programmieren zu erlernen und das mit google stimmt, hätte ich machen können oder sollen, aber das "api/doc mit der standard-libs" begreif ich auch nicht bzw hab kein schimmer was das ist und wenn ich das jetzt google kommt bestimmt wieder irgendwas mit fachausdrücken die ich wieder googlen muss ein teufelskreis. naja egal dankeschön
weisst du vlt wie es mit der "binären suche" funktionieren würde? habe bei google danach gesucht aber das alles nicht so richtig verstanden
zaisheng ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 15:02   #22
haze303
xor eax, eax
 
Benutzerbild von haze303
 
Registriert seit: Sep 2009
Beiträge: 597
Bedankt: 465
haze303 ist noch neu hier! | 1 Respekt Punkte
Standard

Du greifst deinem Kenntnisstand weit voraus. Versuche doch erst einmal dir die absoluten Basics anzueignen.
Kaufe ein gutes C# Buch (aus Papier!) und arbeite es durch, danach kommst du noch einmal in diesen Thread zurück.
Du wirst feststellen, dass du dir mittlerweile die Fragen selbst beantworten kannst.

Viele Grüße,
haze303
__________________
Desktop: Arch Linux | Laptop: Arch Linux
VM: Windows 7, Windows XP, Fedora 14, Arch, Windows Server 2008 R2 Enterprise
haze303 ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 15:08   #23
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Ja, ich habe vor mir "Visual C# 2010: Das komplette Starterkit für den erfolgreichen Einstieg" zu kaufen, das wurde uns nämlich in meiner Schule empfohlen. Das werde ich die Tage bestellen, aber danke für den Tipp.

ich glaube ich hab das jetzt verstanden mit dem "system.math.pow", also aufjedenfall in dem zusammenhang, denke ich, denn ich habe mir diese Seite angeschaut und durchgelesen :

[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

Naja, ja haze303, ich weiß, der Kenntnisstand ist weiter voraus, aber wie gesagt, unser lehrer gab uns das halt nur für die, die sich mal an etwas rantasten wollen bzw etwas schwereres probieren wollen
Im moment haben wir "erst" die Schleifen gelernt und arbeiten jetzt damit , bis vor kurzem haben wir halt nur Programme erstellt, die für uns Sachen errechnen sollen etc. :P
zaisheng ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 16:08   #24
Epeos
Ist öfter hier
 
Benutzerbild von Epeos
 
Registriert seit: Nov 2010
Beiträge: 200
Bedankt: 96
Epeos ist noch neu hier! | 0 Respekt Punkte
Standard

@Melfis: Hast recht, chapeau. Auf die Idee, die neuen Tipps über 2^i zu berechnen, bin ich noch gar nicht gekommen. Spart die Probleme mit dem Runden.

@zaisheng: [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] gibt's ein kostenloses Buch zu C# und im IT-Handbuch für Fachinformatiker gibt es auch zwei Kapitel über Programmierung. Die Erklärungen für C kannst Du weitestgehend für C# und Java übernehmen. Die grundlegende Syntax für Schleifen, Bedingungen und einfache Arithmetik ist in den drei Sprachen gleich (ok, die Profis werden hier jetzt gleich die Sonderfälle posten, bei denen ich Unrecht habe ;-) )
__________________
On a long enough timeline, the survival rate for everyone drops to zero. (Fight Club)
Epeos ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 17:32   #25
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Danke, Epeos, aber das hab ich schon runtergeladen hat unser Lehrer uns schon gegeben. Kam aber noch nicht dazu das Komplett durchzulesen ... aber trotzdem danke.
Haha Naja, aber egal, ihr habt mir sehr geholfen.
Ich bleib erstmal dabei das weiter zu machen was ich kann und mir schritt für schritt was neues , neben der schule, bei zu bringen
zaisheng ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 17:45   #26
testerws
Newbie
 
Registriert seit: Apr 2009
Beiträge: 78
Bedankt: 21
testerws ist noch neu hier! | 0 Respekt Punkte
Standard

kein wunder, dass melfis glaubt, dass du keine lust hast dich mit dem programmieren auseinander zu setzen, denn wenn du nicht mal lust hast im wiki nachzusehen weil du angst vor neuen begriffen hast, welche du nicht verstehst dann sieht es schlecht aus! du wirst als programmierer immer wieder dir neues anlesen müssen! api-docs sind das "a" und "o" falls du mal gegen eine bestimmte api programmieren möchtest!
testerws ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 20:08   #27
zaisheng
Anfänger
 
Registriert seit: Jun 2010
Beiträge: 34
Bedankt: 2
zaisheng ist noch neu hier! | 0 Respekt Punkte
Standard

Ihr habt einen ganz falschen Eindruck, ich bin weder faul noch desinteressiert.
Das müsste man eig. schon daran erkennen das ich eine Aufgabe gemacht habe, die gar nicht nötig war, d.h. eine Zusatzaufgabe gemacht habe, die unser Lehrer uns gegeben hat, falls wir mal was "kniffeliges" machen wollen. Ich will jetzt aber natürlich nicht so viel zusätzlich lernen das ich dumm rum sitze im Unterricht, das ist ja nicht der Sinn der Sache, aber trotzdme danke.
zaisheng ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 21:26   #28
Epeos
Ist öfter hier
 
Benutzerbild von Epeos
 
Registriert seit: Nov 2010
Beiträge: 200
Bedankt: 96
Epeos ist noch neu hier! | 0 Respekt Punkte
Standard

Hey. nichts ist geiler, als wenn Du im Info-Unterricht mehr weisst als der Lehrer
__________________
On a long enough timeline, the survival rate for everyone drops to zero. (Fight Club)
Epeos ist offline   Mit Zitat antworten
Ungelesen 02.10.11, 21:29   #29
slahn
Erfahrenes Mitglied
 
Benutzerbild von slahn
 
Registriert seit: Oct 2009
Beiträge: 640
Bedankt: 228
slahn ist noch neu hier! | 0 Respekt Punkte
Standard

Hatte jetzt keine zeit den ganzen Tread zu lesen, aber der gesuchte Algorithmus heißt "teilen und herrschen".
__________________
"[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]" (Klopfers Vater)
slahn ist offline   Mit Zitat antworten
Ungelesen 03.10.11, 17:11   #30
slahn
Erfahrenes Mitglied
 
Benutzerbild von slahn
 
Registriert seit: Oct 2009
Beiträge: 640
Bedankt: 228
slahn ist noch neu hier! | 0 Respekt Punkte
Standard

Ah, hab schon gesehen das meine Idee hier im Post #20 eh schon gelöst drinn steht, darum sind weitere erklärungen eh überflüssig.
__________________
"[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]" (Klopfers Vater)
slahn ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:10 Uhr.


Sitemap

().