Beiträge von anwesender

    Achtung die Pastes Client und GUI sind nicht mehr aktuell. Bei Bedarf laden wir den aktuellen Stand hoch.

    Server und Client spielen jetzt zusammen.
    Zunächst würden wir gerne wissen, wie der Server am besten mehrere Sprechkanäle bereitstellen kann, die vom Client genutzt werden können.

    Ihr haltet euch mit euren infos wirklich zurück, entweder ihr wisst nicht genau was überhaupt zu realisieren ist oder ihr wollt es nicht sagen.

    Die "Sprechkanäle" sind über TCP handzuhaben? oder über UDP? oder ganz was eigenes?
    Gehts nur ums managen dass nichts kollidiert oder gehts um kommunikation zwischen dem server/client?

    Thomas

    1) Der Titel ist etwas unpassend, ist ja kein konkretes Java-Problem
    2) Ist es hier im Forum (bzw in allen Foren) Usus keine fertigen Lösungen zu "mach meine Hausaufgabe" anzugeben

    Versuchen wir mal das Problem zu vereinfachen,
    wenn ich das alles richtig versteh gehts darum das array "distanzen" in anzTage Partitionen aufzuteilen,
    Bekannt ist:
    dist[0-v[0]] = erster Tag
    dist[v[ende]-ende] = letzter Tag
    dazwischen die partitionierungen, die liesen sich dann zB mit 0/1-mengen darstellen

    Zu deiner Angabe noch eine Frage, müsste es nicht {1,3} sein?

    Thomas

    da ich fast keine Erfahrung mit Java habe, tue ich auch schwer beim Verstehen, worum es wirklich handelt, hier ist d. Code:


    Für Code gibts hier den Code-Tag!

    Code
    [/ Code], ohne Space nach dem Slash.
    
    
    Um solche Fehler besser umgehen zu können wäre ein:
    [Code]
    if(args.length < 3)
    {
      System.out.println("Not enough arguments!");
      return;
    }


    am Anfang der main-Methode angebracht ;)

    Thomas
    €: Klammern bei length gesetzt.

    java.lang.ArrayIndexOutOfBoundsException: 1 at EchoNumbers.main ( EchoNumbers.java:6)

    Wie der vorposter schon gesagt hat, und wie der name der exception eigentlich schon sagt der Index ist OutOfBounds (ausserhalb der grenzen), [tex='\ge'][/tex]

    length oder <0
    Um dir genauer sagen zu können was dein Problem ist müsstest du schon quellcode posten, aber wenn du dir Zeile 6 genau ansiehst wirst du gewiss auf den Fehler stossen!

    Thomas

    Hallo. Ich wollte mitteilen, dass mein Problem gelöst ist.
    Ich kann das Programm mit Doppelklick(Jedit) nicht öffnen,
    ich muss einen Rechtsklick auf die Datei machen, 7zip wählen und extract here wählen.
    Im Vergleich dazu lässt sich die Nessi datei sehr wohl mit Doppelklick öffnen.
    Speichern ist jetzt auch möglich.

    Frei der Annahme davon ausgehend dass man bei "Doppelklick" auf .jar Files diese mit javaw standardmäßig ausführt, ist dies klar.
    (.jar Files sind normal die compilierten Klassen komprimiert und ausführbar, mit java -jar <jarfile>)

    In dem Fall wurde das jar Format aber nur zum komprimieren benutzt, ergo nicht ausführbar, darum will javaw es dann auch nicht ausführen, darum musst du es vorher entpacken und hast dann in irgendeinem Ordner die entpackten .java Files die du dann bearbeiten kannst.

    Thomas

    ok jetzt hat sich was verändert: ich kann jetzt speichern, aber nicht in jedem verzeichnis. wenn ich es im java/jeditvezeichnis speichern will,
    kommt die fehlermeldung:

    C:\Program Files\jEdit\Ex02:
    Cannot save: java.io.FileNotFoundException: C:\Program Files\jEdit\#Ex02#save# (Zugriff verweigert)

    Ich kann meine Programme mit dem befehl java (statt javac) convertieren, aber er findet die dateien nicht.
    muss ich sie mit java ex02.exe oder java ex02.dat oder java ex02 compilieren?

    Du solltest auch nicht unter C:\Program Files\* arbeiten, sondern zB am Deskop einen Ordner anlegen und die dateien darin bearbeiten/kompilieren!

    Code
    javac Class.java
    java Class


    für ein File wie:

    Code
    public class Class
    {
      static void main(String[] args)
      {
         System.out.println("Hello World");
      }
    }

    Thomas

    Leider ist das Problem nicht behoben.
    Als ich den Download öffnen will, erschein folgende nette Meldung:
    "Dieses Installationspaket wird auf dieser Plattform nicht unterstützt, wenden sie sich an den Hersteller des Produkts."

    Danach habe ich Ubuntu installiert, aber da ging der Zirkus von vorne los, da bin ich an der Installation des flash plugin bereits gescheitert.
    Auch jedit habe ich nicht installieren können. Ich werd am Montag ins Informatiklabor gehen, hoffentlich kann mir da einer helfen.
    Ein Freund hat mir eclipse nahegelegt, ich hoffe diese Installation verläuft besser.

    Hast du ein 64bit oder 32bit system?

    [Alt]+[F2] > gnome-terminal

    Code
    sudo apt-get install jedit
    sudo apt-get install flashplugin-nonfree

    Eclipse ist für eprog vermutlich nicht der richtige anfang (bei den tests gibts dann kein eclipse)
    Unter gnome gibts im übrigen noch gedit ( [Alt]+[F2] > gedit ), mein Favorit :)

    Thomas

    Das ist eigentlich kein Bug sondern ein Sicherheitsfeature. Nur Administratoren dürfen Programme installieren, Benutzer nicht. Um es dauerhaft loszuwerden kannst du dich selbst zur Gruppe der Admins hinzufügen und dann die UAC abschalten.


    Er meinte er braucht schon zum Abspeichern einer Datei (der Installer? oder ein Java-File?, ich vermute Installer) Admin Rechte...

    Klingt eher danach als würde er den Installer/das File in einen der ge-Sicherheitsfeature-ten Ordner zu speichern.

    There are no bugs, there are only features!

    Thomas

    ad 1) Das kann ich dir so leider nicht beantworten, gibts nicht einfach einen simplen Windows-Installer der das alles von selbst managed?
    ad 2) Ich nehme an das File das du heruntergeladen hast ist ein .jar oder ein .zip, das solltest du erst mal entpacken, unter Windows wohl etwas wie 7zip Windows-Installer
    ad 3) Das dein gewähltes Encoding nicht passt, könnte eben sein weil du ein .zip/.jar (Binary) öffnest.
    Nach dem entpacken solltest du die .java-Dateien mit dem JEdit öffnen können.

    linux ftw. scnr ;)

    Thomas

    Ich hab zwar mit LabWindows noch nie etwas gearbeitet, aber eventuell hilft link.

    Würde mir das so vorstellen: (geht jetzt nur in eine richtung)

    im prinzip nur das beispiel angepasst.

    Thomas

    Danke Bernd für deine schnelle Antwort. Das ist nur der erste Teil des Programms,ich muss noch den Algorithmus von Ford Fulkerson programmieren. Leider funktionierts auch mit den geänderten return Werten nicht.
    lg Sabine

    wäre für diesen fall c++ nicht besser geeignet?
    exceptions sind meistens angenehmer handzuhaben als bei jeder funktion systemprogrammierer mässig return-werte zu überprüfen
    ausserdem sind klassen "einfacher" zu allokieren und freizugeben als daten mit malloc, bzw hättest du dann auch datenstrukturen wie den std::vector (zB zum speichern des pfads) zur verfügung

    was mir noch auffällt, der pointer wird nur u zugewiesen, aber nie an die aufrufende funktion übergeben (bei malloc bekommst du einen neuen pointer)
    entweder du änderst die signatur von

    Code
    void makezero(int **u, int v, int w)


    auf

    Code
    int **makezero(int v, int w)


    (dann kannst du mit auf NULL testen gleich die fehler analyse machen)
    oder auf

    Code
    void makezero(int ***u, int v, int w)


    und weist mit

    Code
    *u = malloc(..)

    zu (würde ich eher als einen kunstgriff bezeichnen)
    der aufruf wäre dann:

    Code
    int **array;
    makezero(&array, v, w);

    Thomas

    Hat sich erledigt.



    Zu dem mittlerweilende fehlenden Thema sei noch angemerkt: Wenn du mit msvc++ programmierst und du mögchtest das es auch mit dem gcc auf linux kompiliert solltest du die reihenfolge der initialisierungen im konstruktor der reihenfolge der membervariablen anpassen, heisst:

    Code
    private:
    int a;
    float b;


    wird auch mit 1) initialisiert, bei 2) meckert der gcc

    Code
    1) Klasse::Klasse() : a(0), b(1.0f) {}
    2) Klasse::Klasse() : b(1.0f), a(0) {}

    und beim ableiten würd ich auch die elternklasse explizit noch anschreiben

    Thomas


    Auf Methoden greift man hier mit . zu?

    Code
    objA.doSomething();

    Auf Methoden greift man hier mit -> zu?

    Code
    objA->doSomething();

    obj->abc() ist die abkürzung für (*obj).abc()

    Und statischer Speicher wird autmatisch freigegeben, dynamischer nicht (statisch: Class abc;, dynamisch: Class *abc = new Class())
    Smartpointer werden statisch allokiert (somit auch autom. freigegeben) und können dadurch das dynamisch allokierte freigeben

    bzgl parameter-übergabe:
    Java: void function(Object a, int b)
    C++: void Class::function(Object &a, int b)

    noch als tipp: http://www.parashift.com/c++-faq/

    Thomas