Gymnasium Uebung1 2010

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Java</language>
= Einführung =
Wir werden uns in diesem Kurs mit der Sprache Java beschäftigen. Java ist eine leistungsfähige und moderne Programmiersprache, welche außerdem z.Zt. am häufigsten auf dieser Welt programmiert wird. Da Java eine sehr schwere Sprache ist (weil man muss eigtl. zu Beginn schon alles wissen, um loslegen zu können) benutzen wir dieses Wiki, da dieses vor allem Einsteigern den Zugang zu Java erleichtert (hier muss man eben nicht schon alles wissen, um loslegen zu können).

= Zahlen, Ausdrücke, Einfache Programme =
== Zahlen ==
Wir beginnen ganz einfach und "reden" mit unserem Computer.

Da Computer grundsätzlich "dumm" sind geben Sie einfach das zurück was wir ihm sagen.
Probiere auch mal "Hallo!" aus (mit Anführungszeichen).

<eval id="4aa27774ce666">5</eval>


== Mathematische Operationen ==
Wir erweitern das "Frage-Antwort" spiel um eine einfache Operation:
<eval id="4aa27774cee2e">5+5</eval>


'''Übung'''
Probiere in dem Feld auch einige komplexe Operationen aus.


Neben den arithmetischen Operationen aus der Grundschule gibt es auch einige komplexere Operationen:
wie z.B. die Berechnung des Quadrats zu einer Zahl.

<eval id="4aa27774cf5fc">Math.pow(5,2)</eval>
Schaue hier [http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Math.html Bibliothek] nach, was die Bibliothek "Math" noch zubieten hat und probiere es aus.

Das gleiche kannst du auch in einer anderen Programmiersprache ausprobieren: [Gymnasium_Uebung1_Scheme]

'''Übung'''
Quadriere die Zahl 4 mit Hilfe von Math
<eval id="4aa27774d01b7" rows=2/>





'''Übung'''
Berechne das Maximum von 30 und 100
<eval id="4aa27774d19af"/>

== Variablen ==
== Die Zuweisung ==
Auf Dauer wird das natürlich langweilig. Als nächster Schritt kommt das Speichern von Werten. Kein Programm funktioniert ohne.

Wir weißen einer Variable '''x''' nun den Wert 5 zu. 
Beachte, dass wir nun mehrere Zeilen verwenden und jede Zeile mit einem Semikolon (''';''') abgeschlossen werden muss.


<eval id="4aa27774d24ed">int x = 5;
x;
</eval>


'''Übung'''
Weise der Variable einen anderen Wert zu

'''Übung'''
Lasse mal zum Spass das erste Semikolon weg. Was passiert?

'''Übung'''
Gib der Variable einen anderen Namen

'''Übung'''
Weise der Variable einen komplexen mathematischen Ausdruck zu. (z.B. mit Hilfe von Math oder Klammern)

'''Übung'''
Was bedeutet das '''int''' vor dem VariablenNamen

=== Die Benutzung ===
Jetzt wollen wir mit dieser neuen Variable arbeiten, indem wir sie z.B. in eine komplexe Aufgabe einbauen.

<eval id="4aa27774d2cc7">5+x</eval>

'''Übung'''
Baue mit '''x''' einen komplexen Ausdruck

== Ausgabe ==
Um eine coolere Bildschirmausgabe zu realisieren steht uns in der Sprache Java das Element '''System.out.print''' zur Verfügung.
Du musst nicht verstehen warum, das so heisst, sondern nur, dass man nette Sprachausgaben damit gestalten kann.

<eval id="4aa27774d38fa">System.out.println("Hallo Welt!")</eval>

wir können nun auch unsere Variable mit einbauen

<eval id="4aa27774d44bc">System.out.println("Der Werte meines x="+x);</eval>

'''Übung'''
Was macht das plus? Was bedeuten die Anführungszeichen?

<language>Java</language>
== Prüfung ==

'''Übung'''
Setze die folgende Aufgabe in Java um:

Erstelle eine ganzzahlige Variable "a" und sage, dass diese den Wert 5 hat.

Quadriere die Variable "a" und 
multipliziere das Ergebnis 
mit dem gerundeten Ergebnis von 10/2.5

Das Ergebnis soll in der Variable "b" stehen.

<code id="4c8e487412a54">//baue die Rechenaufgabe hier rein</code>
<eval id="4c8e487412b02">

</eval>
<check>return(b==12500))</check>

== Zusammenfassung ==
=== Variablentypen ===
<center>
{| style="text-align:center;border:solid grey 1px" cellpadding=3 cellspacing=0
|- style="background:#FFE466;"
! Typ     !! Byte !! Wertebereich  	 !!  Standardwert
|- style="background:#FFE466;"
| ganze Zahlen || || ||
|-
| <span style="color:red">byte</span>    || 1    || -128 bis 127 || 0 
|-
| <span style="color:red">short</span>   || 2    || - 32768 bis 32767  || 0 
|-
| <span style="color:red">int</span> 	  || 4    || - 2<sup>31</sup> bis 2<sup>31</sup>-1  || 0 
|-
| <span style="color:red">long</span> 	  || 8    || - 2<sup>63</sup> bis 2<sup>63</sup>-1  || 0 
|- style="background:#FFE466;"
| Fließkommazahlen || || ||
|-
| <span style="color:red">float</span>   || 4 	  || - 3.40282347 *10<sup>38</sup> bis 3.40282347 *10<sup>38</sup> || 0.0
|-
| <span style="color:red">double</span>  || 8 	  || - 1.79769313486231570 *10<sup>308</sup> bis 1.79769313486231570 *10<sup>308</sup> || 0.0
|- style="background:#FFE466;"
| Wahrheitswert || || ||
|-
| <span style="color:red">boolean</span> || 1    || true,false          || false 
|- style="background:#FFE466;"
| Zeichen || || ||
|-
| <span style="color:red">char</span>    || 2    ||  alle Unicode - Zeichen || \n0000
|}
</center>

=== Arithmetische Operatoren ===
<center>
{| style="text-align:center;border:solid grey 1px" cellpadding=3 cellspacing=0
|- style="background:#FFE466;"
! Operator     !! Bezecihnung !! Bedeutung  	 
|- 
| <span style="color:red">+</span>    || Positives Vorzeichen    || +n ist gleichbeduetend mit n
|-
| <span style="color:red">-</span>   || Negatives Vorzeichen    || -n kehrt das Vorzeichen von n um 
|-
| <span style="color:red">+</span> 	  || Summe    || a+b ergibt die Summe von a und b
|-
| <span style="color:red">-</span> 	  || Differenz    || a - b ergbit die Differenz von a und b
|-
| <span style="color:red">*</span>   || Produkt	  || a * b ergibt das Produkt aus a und b
|-
| <span style="color:red">/</span>  || Quotient 	  || a / b ergibt den Quotient aus a und b 
|-
| <span style="color:red">%</span> || Restwert    || a%b ergibt den Rest der ganzzahligen Division von a durch b
|-
| <span style="color:red">++</span>    || Präinkrement    ||  ++a ergibt a+1 und speichert das gleich in a
|-
| <span style="color:red">++</span>    || Postinkrement    ||  a++ ergibt a+1 und speichert das gleich in a
|-
| <span style="color:red">--</span>    || Prädekrement    ||  --a ergibt a-1 und speichert das gleich in a
|-
| <span style="color:red">--</span>    || Postinkrement    ||  --a ergibt a-1 und speichert das gleich in a
|}
</center>

=== Zuweisungsoperatoren ===
<center>
{| style="text-align:center;border:solid grey 1px" cellpadding=3 cellspacing=0
|- style="background:#FFE466;"
! Operator     !! Bezecihnung !! Bedeutung  	 
|- 
| <span style="color:red">=</span>    || Einfache Zuweisung    || a=b, weist a den wert von b zu
|-
| <span style="color:red">+=</span>   ||  Additionszuweisung   || a+=b weist a den Wert von a + b zu.
|-
| <span style="color:red">-=</span> 	  || Differenzuweisung    || a-=b weist a den Wert von a - b zu.
|-
| <span style="color:red">*=</span> 	  || Multiplikationszuweisung    || a*=b weist a den Wert von a * b zu.
|-
| <span style="color:red">/=</span>   || Divisionszuweisung	  || a /= b weist a den Wert von a / b zu.
|-
| <span style="color:red">%=</span>  || Modulozuweisung 	  || a %= b weist a den Wert von a % b zu.
|-
| <span style="color:red">&=</span> || UND-Zuweisung    || a &= b weist a den Wert von a & b zu.
|-
| <span style="color:red">|=</span>    || ODER Zuweisung    ||  a |= b weist a den Wert von a | b zu.
|-
| <span style="color:red">^=</span>    || Exklusiv-ODER-Zuweisung   ||  a^=b weist a den Wert von a ^ b zu.
|-
| <span style="color:red"><<=</span>    || Linksschiebezuweisung    ||  a<<=b weist a den Wert von a << b zu.
|-
| <span style="color:red">>>=</span>    || Rechtsschiebezuweisung    ||  a>>=b wreist a den Wert von a >> b zu.
|}
</center>