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/Schaltjahr und Javakurs/Übungsaufgaben/Quersumme: Unterschied zwischen den Seiten

< Javakurs‎ | Übungsaufgaben(Unterschied zwischen Seiten)
K (Kategorisierung)
 
(Kommentarbereich)
 
Zeile 1: Zeile 1:
=== Aufgabenstellung ===
+
=== 1. Aufgabe ===
  
Schreibt eine Methode, welche entscheidet, ob es sich bei der übergebenen Jahreszahl um ein Schaltjahr handelt, oder nicht. Die Jahreszahl könnte man als Integer (int) übergeben, der Rückgabewert des Methode sollte ein Wahrheitswert (boolean) sein.
+
Ein Programm zur Bestimmung der Quersumme einer natürlichen Zahl soll geschrieben werden. Schritt für Schritt soll dieses Programm um weitere Funktionen erweitert werden.
 +
 +
# Spalte die einzelnen Ziffern mittels Modulo-Operation ab und addiere sie um die Quersumme zu bestimmen.
 +
# Gib alle Zahlen von 0 - 1000 aus, welche die Quersumme 15 haben.
 +
# Gib alle Zahlen von 0 - 1000 aus, deren Quersumme ein Vielfaches von 7 ist.
 +
# Welche Quersumme der Zahlen von 0 - 1000 kommt am häufigsten vor? (Tipp: Überlegt Euch wie viel verschiedene Quersummen vorkommen können, erstellt ein Array dieser Größe und speichert dort die Anzahl der Vorkomnisse)
 +
# Die iterierte Quersumme wird auch Ziffernwurzel genannt (Abk. zw) Beispiel:<br>47 --> 4 + 7 = 11 --> 1 + 1 = 2, also zw(47)=2<br>Schreibt ein Programm, welches die Ziffernwurzel für eine beliebige Zahl bestimmt.
 +
# Das Querprodukt ist wie folgt definiert: 68 = 6 * 8 = 48. Es gibt Zahlen, bei denen die Summe aus Quersumme und Querprodukt wieder die Zahl selber ergibt Beispiel: 79 = 7 + 9 + 7*9 = 79. Gibt es weitere Zahlen zwischen 0 und 1000 mit dieser Eigenschaft ? Wenn ja, welche ?
 +
  
Die Methode könnte so aussehen:
+
=== 2. Aufgabe ===
public static boolean '''isLeapYear'''(int '''year''') {
+
Beim Gesellschaftsspiel "Die Böse Sieben" sitzen die Teilnehmer im Kreis und zählen reiheum.
+
Jede Zahl, welche durch 7 teilbar ist oder die 7 als Ziffer enthält muss übersprungen werden.
[...]
+
Schreibe ein Programm, welches für eine beliebige Zahl angibt, ob die nächste übersprungen werden
+
muss oder nicht.
}
 
  
=== Die Eigenschaften eines Schaltjahres sind ===
 
 
a) Ein Jahr ist kein Schaltjahr, wenn die Jahreszahl nicht durch 4 teilbar ist.
 
 
b) Ein Jahr ist ein Schaltjahr, wenn die Jahreszahl durch 4, aber nicht durch 100 teibar ist.
 
 
c) Ein Jahr ist ebenfalls ein Schaltjahr, wenn die Jahreszahl durch 4, durch 100 und durch 400 teilbar ist.
 
 
 
=== Zusatzaufgabe ===
 
Statte dein Programm mit einer nutzerfreundlichen Interaktion aus. Dazu kannst du die Klasse Terminal verwenden: [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/Terminal.java Terminal.java]. Um die Klasse benutzen zu können, muss sie im gleichen Verzeichnis liegen wie dein Programm auch.
 
 
Beispiel zum Einlesen eines Integerwertes (int):
 
int number = Terminal.readInt();
 
 
oder mit einem Hinweis:
 
int number = Terminal.askInt("Please enter a number: ");
 
 
Probiert einfach mal aus, was die Klasse so alles kann. Übrigens ist sie sehr gut (auch Deutsch) kommentiert. Also einfach mal rein gucken.
 
 
Ziel der Aufgabe ist es, dass der Benutzer auf der Konsole aufgefordert wird, eine Jahreszahl einzugeben und draufhin eine Antwort bekommt, ob die eingegebene Jahreszahl ein Schaltjahr ist, oder nicht.
 
  
  
Zeile 37: Zeile 23:
  
 
== Kommentare ==
 
== 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 ;)
+
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 ;)
  
 
<!--
 
<!--
Als kleine Starthilfe folgt ein Beispiel, wie so ein Kommentar formatiert sein könnte. Mit "Vorschau zeigen" kannst du dir ansehen, was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.
+
Als kleine Starthilfe folgt ein Beispiel wie so ein Kommentar formatiert sein könnte. Mit "Vorschau zeigen" kannst du dir ansehen was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.
 
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)
 
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)
  
 
==== Robert ====
 
==== Robert ====
Na mal schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.
+
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.
 
-->
 
-->
 
[[Kategorie:Java]]
 
[[Kategorie:Java_Aufgaben]]
 

Version vom 9. April 2007, 09:35 Uhr

1. Aufgabe

Ein Programm zur Bestimmung der Quersumme einer natürlichen Zahl soll geschrieben werden. Schritt für Schritt soll dieses Programm um weitere Funktionen erweitert werden.

  1. Spalte die einzelnen Ziffern mittels Modulo-Operation ab und addiere sie um die Quersumme zu bestimmen.
  2. Gib alle Zahlen von 0 - 1000 aus, welche die Quersumme 15 haben.
  3. Gib alle Zahlen von 0 - 1000 aus, deren Quersumme ein Vielfaches von 7 ist.
  4. Welche Quersumme der Zahlen von 0 - 1000 kommt am häufigsten vor? (Tipp: Überlegt Euch wie viel verschiedene Quersummen vorkommen können, erstellt ein Array dieser Größe und speichert dort die Anzahl der Vorkomnisse)
  5. Die iterierte Quersumme wird auch Ziffernwurzel genannt (Abk. zw) Beispiel:
    47 --> 4 + 7 = 11 --> 1 + 1 = 2, also zw(47)=2
    Schreibt ein Programm, welches die Ziffernwurzel für eine beliebige Zahl bestimmt.
  6. Das Querprodukt ist wie folgt definiert: 68 = 6 * 8 = 48. Es gibt Zahlen, bei denen die Summe aus Quersumme und Querprodukt wieder die Zahl selber ergibt Beispiel: 79 = 7 + 9 + 7*9 = 79. Gibt es weitere Zahlen zwischen 0 und 1000 mit dieser Eigenschaft ? Wenn ja, welche ?


2. Aufgabe

Beim Gesellschaftsspiel "Die Böse Sieben" sitzen die Teilnehmer im Kreis und zählen reiheum. Jede Zahl, welche durch 7 teilbar ist oder die 7 als Ziffer enthält muss übersprungen werden. Schreibe ein Programm, welches für eine beliebige Zahl angibt, ob die nächste übersprungen werden muss oder nicht.




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 ;)