Programmstruktur

10/07/2016 11:02 Shiukahn#1
Hallo alles zusammen ich soll eine Programmstruktur grafisch darstellen in der Dualzahlen in Dezimalzahlen umgewandelt werden aber ich habe absolut kein Plan wie ich das bewerkstelligen soll.
Bitte an euch kann mir das irgendwer erklären oder mir so eine Grafik fertig machen Kämpfe nun schon seit 2 Tagen damit
Vielen Dank schonmal im Voraus
10/07/2016 13:16 NotThatBad#2
könntest z.b mal damit anfangen zu überprüfen, ob die binärfolge in nem richtigen format gespeichert wurde, sprich dass keine zeichen außer 0 und 1 vorkommen. dann würd ich eben mal mit ner schleife über die binärfolge iterieren, beginnend am letzten index

die binärstellen musst du dir natürlich auch noch irgendwie mit ner variable oder sonst was abspeichern, sodass du das dann pro iteration auf den dezimalwert kommst, sprich 2^x + 2^(x+1) + ... + 2^(x+n)
10/07/2016 15:16 NotEnoughForYou#3
Da würde sich ein Flussdiagramm anbieten. Habt ihr sicherlich durchgenommen (klingt wie eine klassische Schulaufgabe).
10/07/2016 20:46 Shiukahn#4
Genau und das ist mein Problem wie trage ich das in dem Flussdiagramm ein?
Habe schon mehrere Sachen probiert aber mein Lehrer meint das ist faul gewesen
10/07/2016 22:06 _ᴋush##5
Guten Abend,

ich habe hier mal im Voraus ein Programm welches die Zahl 1101 in eine Dezimalzahl umwandelt.

Code:
/* Dual in Dez
 * Created by kush
 * epvp
 */
public class DualInDez {

    public static void main(String[]args)
    {
        String dual = "1101";
        int rest;
        int zahl=0;
        int potenzZahl =1;

        for(int i = dual.length()-1;i>=0;i--)
        {
            rest = Character.digit(dual.charAt(i),2) *potenzZahl;
            zahl = rest + zahl;
            potenzZahl = potenzZahl*2;
        }
        System.out.println(zahl);
    }
}
so nun gut.
Habe kurz meine Photoshopskills ausgepackt:

[Only registered and activated users can see links. Click Here To Register...]

So lässt sich eine Schleife in einem Flussdiagramm realisieren. Du deklarierst am Anfang die Werte (wie es im Code hervorgeht) und dann realisierst du die if-Schleife (Bild). Geh einfach mal das Flussdiagramm durch mit einer beliebigen Zahl. Sobald die Variable "i" nicht mehr größer gleich 0 ist, springt er aus der Schleife raus.

im Code wurde eine for-Schleife verwendet, jedoch lässt es sich auch mit einer while-Schleife realisieren.

Am Ende des Bildes muss dann noch ein Kasten hin mit "System.out.println", welcher dann natürlich die Dezimalzahl ausgibt.

Sollte es mit einer GUI realisiert werden, bzw einem Scanner, ist dies auch nicht recht komplizierter, da du dann nur einen Kasten benötigst, in der die "Abfrage" steht.

Hoffe ich konnte dir das ein wenig näher bringen. Falls nicht, können wir gerne PN oder Skype mal weitersehen!

LG,
kush
10/08/2016 02:34 Shiukahn#6
Nice Danke für die ausführliche Antwort.
Aber das ist auch noch etwas zu kompliziert gedacht die.
Ich habe mal ein Bild hochgeladen wie das Flussdiagramm aussehen soll.


[Only registered and activated users can see links. Click Here To Register...]

Skype: shiukahn2
Kannst mich ja adden
10/08/2016 12:41 NotEnoughForYou#7
Das ist aber Dezimal in Dual und nicht Dual in Dezimal so wie du es gesagt hast ...
10/08/2016 12:45 _ᴋush##8
Da muss ich meinem Vorredner recht geben.

Durch 2 teilen wird nur bei Dezimal in Dual gemacht.
10/08/2016 23:13 Shiukahn#9
Das war nur ein Beispiel wie das Diagramm aussehen soll nicht das es genau das ist was ich suche
10/09/2016 00:36 algernong#10
Wovon hast du denn keinen Plan?

Du weißt, wie das Diagramm aussehen soll und der Algorithmus steht im Faden. Wieso probierst du es nicht einmal, das selber zu zeichnen? Andere können dir dann ja dort helfen, wo du selber nicht weiter kommst.
10/11/2016 18:20 ElDiabolus#11
Quote:
Originally Posted by algernong View Post
Wovon hast du denn keinen Plan?

Du weißt, wie das Diagramm aussehen soll und der Algorithmus steht im Faden. Wieso probierst du es nicht einmal, das selber zu zeichnen? Andere können dir dann ja dort helfen, wo du selber nicht weiter kommst.
Korrekt. Und wenn du keine Ahnung hast, wie du allgemein solche UML Diagramme zeichnest, solltest du das vielleicht mal üben (am besten immer mit Lösung). Wird doch bestimmt auch im Leistungsnachweis abgefragt werden. ;)