Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Javakurs/Übungsaufgaben/Variablen und Zuweisungen: Unterschied zwischen den Versionen

(Kommentare)
(Kommentare)
 
(22 dazwischenliegende Versionen von 16 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
'''Hinweis:''' Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar]
 
'''Hinweis:''' Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar]
  
(Die Datei wird mit dem Kommando tar -xf entpackt)
+
(Die Datei wird mit dem Kommando tar -xf entpackt bzw. mit [http://www.chip.de/downloads/c1_downloads_hs_getfile_v1_20733267.html?t=1362403931&v=3600&s=74df87a24054e9509a116fe8fe3fad8e 7-Zip Portable] unter Windows)
  
  
Zeile 12: Zeile 12:
 
* Erkläre deine Meinung einem Tutor oder diskutiere sie mit der Person am Rechner nebenan.
 
* Erkläre deine Meinung einem Tutor oder diskutiere sie mit der Person am Rechner nebenan.
  
 
+
'''Lösung:'''
 
  <nowiki>
 
  <nowiki>
 
class DeklarationUndInitialisierung {
 
class DeklarationUndInitialisierung {
public static void main(String [] ignored) {
+
public static void main(String[] args) {
int aWholeNumber;
+
int aWholeNumber; //Deklaration
double notAWholeNumber;
+
double notAWholeNumber; //Deklaration
String aString;
+
String aString;//Deklaration
  
aWholeNumber = 0;
+
aWholeNumber = 0; //Initialisierung
notAWholeNumber = 0.0;
+
notAWholeNumber = 0.0; //Initialisierung
aString = "";
+
aString = ""; //Initialisierung
 
System.out.println(aWholeNumber);
 
System.out.println(aWholeNumber);
 
System.out.println(notAWholeNumber);
 
System.out.println(notAWholeNumber);
 
System.out.println(aString);
 
System.out.println(aString);
  
int anotherWholeNumber = 0;
+
int anotherWholeNumber = 0; //Deklaration und Initialisierung
double anotherNotSoWholeNumber = 0;
+
double anotherNotSoWholeNumber = 0; //Deklaration und Initialisierung
String anotherString = "";
+
String anotherString = ""; //Deklaration und Initialisierrung
 
System.out.println(anotherWholeNumber);
 
System.out.println(anotherWholeNumber);
 
System.out.println(anotherNotSoWholeNumber);
 
System.out.println(anotherNotSoWholeNumber);
Zeile 44: Zeile 44:
 
  <nowiki>
 
  <nowiki>
 
class SelbstDeklarierenUndDefinieren {
 
class SelbstDeklarierenUndDefinieren {
public static void main(String [] ignored) {
+
public static void main(String[] args) {
 
// deklariere eine Variable "birnen"  vom Typ int
 
// deklariere eine Variable "birnen"  vom Typ int
 
 
 
// weise ihr den Wert drei zu
 
// weise ihr den Wert drei zu
  
// System.out.println("3 erwartet: " + birnen);
+
System.out.println("3 erwartet: " + birnen);
 
// addiere fuenf zu dem Wert
 
// addiere fuenf zu dem Wert
  
// System.out.println("8 erwartet: " + birnen);
+
System.out.println("8 erwartet: " + birnen);
 
// deklariere eine Variable "aepfel" und weise ihr den Wert fuenf zu
 
// deklariere eine Variable "aepfel" und weise ihr den Wert fuenf zu
  
// System.out.println("5 erwartet: " + aepfel);
+
System.out.println("5 erwartet: " + aepfel);
 
// subtrahiere zwei von dem Wert
 
// subtrahiere zwei von dem Wert
  
// System.out.println("3 erwartet: " + aepfel);
+
System.out.println("3 erwartet: " + aepfel);
  
 
 
Zeile 132: Zeile 132:
 
_ (_,  ___) ) ;System
 
_ (_,  ___) ) ;System
 
.exit(1);}}//(C) Ulli
 
.exit(1);}}//(C) Ulli
</nowiki>
+
</nowiki>//nicht lesbar
  
  
Zeile 148: Zeile 148:
 
whatsThis = one; System.out.println(whatsThis)
 
whatsThis = one; System.out.println(whatsThis)
 
;}}
 
;}}
</nowiki>
+
</nowiki>//Die Einrueckung hat sich verschoben
  
  
Zeile 166: Zeile 166:
 
System.out.println(c);
 
System.out.println(c);
 
}
 
}
}
+
}// Keine Namen nur Buchstaben!
 
</nowiki>
 
</nowiki>
 
 
  
 
== Kommentare ==
 
== Kommentare ==
Zeile 181: Zeile 179:
 
Na mal schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.
 
Na mal schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.
 
-->
 
-->
hallo alle freitagsrunde Team,
 
  
diese lehrveranstaltung finde ich persönlich super megageil, aber ich wünsche,dass die Musterlösungen von solchen schweren Aufgaben im Netz gestellt werden.
+
[[Kategorie:Java]]
 +
[[Kategorie:Java_Aufgaben]]
  
ich wünsche Euch viel Erfolg und weiterso...:-)
 
  
<!--
+
 
Aufgabe funktioniert auch gut, wenn man
+
--------------------------------
Code mit copy+past von der Website kopiert
+
Ich finde die Aufgabe "Selber Deklarationen und Definitionen durchführen" echt cool zum lernen also das Pogram nur mit Hilfe von Komentaren zu schreiben. Ist ne coole Übung.
Reiner -->
+
-------
Bisher laeuft alles ganz klasse, weiter so!
+
+1
 +
-------
 +
Vielen Dank Leute! Die Aufgaben waren sehr Hilfreich!!!

Aktuelle Version vom 2. Dezember 2016, 14:58 Uhr

Hinweis: Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar

(Die Datei wird mit dem Kommando tar -xf entpackt bzw. mit 7-Zip Portable unter Windows)


Deklaration und Initialisierung

  • An welcher Stelle im folgenden Programm wird die Variable aWholeNumber deklariert?
  • An welcher Stelle im folgenden Programm wird die Variable aWholeNumber initialisiert?
  • Beantworte diese Fragen auch für die Variablen: notAWholeNumber, aString, anotherWholeNumber, anotherNotSoWholeNumber, anotherString
  • Erkläre deine Meinung einem Tutor oder diskutiere sie mit der Person am Rechner nebenan.

Lösung:

class DeklarationUndInitialisierung {
	public static void main(String[] args) {
		int aWholeNumber; //Deklaration
		double notAWholeNumber; //Deklaration
		String aString;//Deklaration

		aWholeNumber = 0; //Initialisierung
		notAWholeNumber = 0.0; //Initialisierung
		aString = ""; //Initialisierung
		System.out.println(aWholeNumber);
		System.out.println(notAWholeNumber);
		System.out.println(aString);

		int anotherWholeNumber = 0; //Deklaration und Initialisierung
		double anotherNotSoWholeNumber = 0; //Deklaration und Initialisierung
		String anotherString = ""; //Deklaration und Initialisierrung
		System.out.println(anotherWholeNumber);
		System.out.println(anotherNotSoWholeNumber);
		System.out.println(anotherString);
	}
}

Selber Deklarationen und Definitionen durchführen

  • Realisiere die Kommentare im folgenden Codestück.
  • Teste deinen Code.
class SelbstDeklarierenUndDefinieren {
	public static void main(String[] args) {
		// deklariere eine Variable "birnen"  vom Typ int
		
		// weise ihr den Wert drei zu

		System.out.println("3 erwartet: " + birnen);
		// addiere fuenf zu dem Wert

		System.out.println("8 erwartet: " + birnen);
		// deklariere eine Variable "aepfel" und weise ihr den Wert fuenf zu

		System.out.println("5 erwartet: " + aepfel);
		// subtrahiere zwei von dem Wert

		System.out.println("3 erwartet: " + aepfel);

		
	}
}

Zuweisung an Variablen

  • Überlege dir, was für eine Ausgabe der folgende Code erzeugen würde.
  • Compiliere den Code, führe ihn aus und vergleiche das Resultat mit deinen Erwartungen.
  • Was sind die Unterschiede?
  • Diskutiere die Unterschiede mit der Person am Rechner nebenan, oder einem Tutor.


class ZuweisungenAnVariablen {
	public static void main(String [] ignored) {
		System.out.println(0);
		int zero = 0;
		System.out.println(zero);
		int one = 1;
		int whatsThis = zero;
		System.out.println(whatsThis);
		whatsThis = one;
		System.out.println(whatsThis);
	}
}


Variablen ändern ihre Werte

  • Überlege dir, was für eine Ausgabe der folgende Code erzeugen würde.
  • Compiliere den Code, führe ihn aus und vergleiche das Resultat mit deinen Erwartungen.
  • Was sind die Unterschiede?
  • Diskutiere die Unterschiede mit der Person am Rechner nebenan, oder einem Tutor.


class VariablenAendernIhreWerte {
	public static void main(String [] ignored) {
		int number = 1;
		System.out.println(number);
		number = 1;
		System.out.println(number);
		number = 2;
		System.out.println(number);
		number = 3;
		System.out.println(number);
		number = 1;
		System.out.println(number);
		number = 17;
		System.out.println(number);
	}
}


Formatierung und Namen

  • Wieso haben wir die Code-Beispiele nach den geschweiften Klammern eingerückt und die Variablen so benannt, wie wir es taten und nicht so:
class _{static long _
(long __,long  ___) {
return __==0 ?___+ 1:
___==0?_(__-1,1):_(__
-1,_(__, ___-1)) ;  }
static  {int _=2 ,___
= 2;System.out.print(
"a("+_+’,’+___+ ")="+
_ (_,  ___) ) ;System
.exit(1);}}//(C) Ulli
//nicht lesbar


  • Etwas weniger Extrem: Was ist im folgenden Beispiel bei der Formatierung schief gelaufen?
class Formatierung1 {public static void main
	(String [] ignored) {
	System.out.println(0); int zero = 0;
			System.out.println(zero);
		int one = 1;
		int whatsThis = zero;
			System.out.
		println(whatsThis);
	whatsThis = one;		System.out.println(whatsThis)
;}}
//Die Einrueckung hat sich verschoben


  • Warum ist der folgende Code so schlecht lesbar?
  • Woran erinnert er dich?
class b {
	public static void main(String [] i) {
		System.out.println(0);
		int a = 0;
		System.out.println(a);
		int b = 1;
		int c = a;
		System.out.println(c);
		c = b;
		System.out.println(c);
	}
}// Keine Namen nur Buchstaben!

Kommentare

Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)



Ich finde die Aufgabe "Selber Deklarationen und Definitionen durchführen" echt cool zum lernen also das Pogram nur mit Hilfe von Komentaren zu schreiben. Ist ne coole Übung.


+1


Vielen Dank Leute! Die Aufgaben waren sehr Hilfreich!!!