java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > Allgemeine Java-Themen

Allgemeine Java-Themen Allgemeine Themen, die nicht in andere Fachforen und nicht zu den Java Basics passen

Antwort     Ist dieses Thema erledigt?
Themen-Optionen Thema durchsuchen Ansicht
Alt 10.06.2012, 16:20   #1 (permalink)
Benutzer
int
 
Registriert seit: 03.06.2012
Fachbeiträge: 48
Abgegebene Danke: 7
Erhielt 0 Danke für 0 Beiträge
Standard Rechnung genau 8 mal ausführen

Tut mir leid ich muss mal kurz eine andere Baustelle aufmachen, bevor ich mioch der alten offenen zuwende.

Ich möchte, dass folgende Rechnung genau 8 mal ausgeführt wird:

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
12
int D = 0;
int Rest = 0;
int Bit = 0;
 
while (D > 0 || Bit < 8 ) {  
    Rest=D-(D/2)*2;
    D=D/2;
    System.out.println(Rest);
    Bit = Bit + 1;
    if (D == 0 ) {
    System.out.println ("0");}
    System.out.println ("Bit:" + Bit);

Das
Zitat:
System.out.prinln ("Bit:" + Bit);
soll da später nicht mehr stehen, ich hab es nur hingeschrieben, um nachzuvollziehen, was das Programm macht.

Es kommt folgende Ausgabe (Am Beispiel der Eingabe "50"):

Zitat:
50
0
Bit:1
1
Bit:2
0
Bit:3
0
Bit:4
1
Bit:5
1
0
Bit:6
0
0
Bit:7
0
0
Bit:8

Geändert von Carlos Valderra (10.06.2012 um 16:26 Uhr)
Carlos Valderra ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.06.2012, 16:24   #2 (permalink)
Java-Forum Team
IRC-Operator (Java-Chat)
Moderator
 
Registriert seit: 09.04.2010
Fachbeiträge: 5.560
Blog-Einträge: 2
Abgegebene Danke: 3
Erhielt 842 Danke für 812 Beiträge
Das wird doch nur 8 mal ausgeführt
Bzw. wenn du immer nur 8 mal haben willst, dann solltest du aus der Abfrage das D rausschmeißen.
Wenn du willst, dass es höchstens 8 mal ausgeführt wird, dann solltest du statt || && verwenden.
Ansonsten solltest du besser beschreiben was genau du willst.
XHelp ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
Carlos Valderra (10.06.2012)
Alt 10.06.2012, 16:25   #3 (permalink)
Benutzer
int
Themenstarter
 
Registriert seit: 03.06.2012
Fachbeiträge: 48
Abgegebene Danke: 7
Erhielt 0 Danke für 0 Beiträge
Tut mir leid, meinte "genau 8 mal".
Carlos Valderra ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.06.2012, 16:28   #4 (permalink)
Stammbenutzer
Halbes Megabyte
 
Registriert seit: 18.09.2010
Fachbeiträge: 690
Abgegebene Danke: 183
Erhielt 67 Danke für 66 Beiträge
Wie wäre es wenn du das || durch && ersetzt?

Btw.
Rest = D-(D/2)*2 ist immer 0
__________________
Programmieren! Nichts ist unmöglich!
Network ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.06.2012, 16:34   #5 (permalink)
Benutzer
int
Themenstarter
 
Registriert seit: 03.06.2012
Fachbeiträge: 48
Abgegebene Danke: 7
Erhielt 0 Danke für 0 Beiträge
Zitat: Network
Beitrag anzeigen
Wie wäre es wenn du das || durch && ersetzt?
In dem Fall wird die Rechnung 7 mal ausgeführt (beim Beispiel 50).

Zitat: Network
Beitrag anzeigen
Btw.
Rest = D-(D/2)*2 ist immer 0
Nein D ist vom Typ Integer, also ganze Zahlen, somit kann ein Rest übrigbleiben.
Für das Beispiel 25 wären es: 25 -12*2= 1.
Carlos Valderra ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.06.2012, 16:41   #6 (permalink)
Benutzer
int
Themenstarter
 
Registriert seit: 03.06.2012
Fachbeiträge: 48
Abgegebene Danke: 7
Erhielt 0 Danke für 0 Beiträge
Hab die Lösung gefunden:

Einfach das
Java Code: Quelltext in neuem Fenster öffnen
1
2
if (D == 0 ) {
    System.out.println ("0");}

streichen. Somit ist der richtige Quellcode:

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
while (Bit < 8 ) {  
    Rest=D-(D/2)*2;
    D=D/2;
    System.out.println(Rest);
    Bit = Bit + 1;
    }
Carlos Valderra ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort     Ist dieses Thema erledigt?

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
(Umgebungsvariable) Jar Dateien lassen sich nicht ausführen Rudolf Java Basics - Anfänger-Themen 4 11.02.2012 09:08
SHELL-Scripte als root ausführen Leonadi Java Basics - Anfänger-Themen 5 23.04.2011 13:55
Shell Script ausführen unter Java skip2mylou Java Basics - Anfänger-Themen 5 06.11.2008 14:13
Kombifeld auswählen, rechnung sofort ausführen kaper28 Java Basics - Anfänger-Themen 11 21.09.2008 21:55
mysql query ausführen b0unc3 Datenbankprogrammierung 4 28.10.2006 16:01


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:29 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de