Übungen / Aufgaben zu Objective-C
0 Lösungen
guided Probieren à la Mastermind
Liebe Leute,
Schreibt ein Programm das für eine 8-stellige Binärzahl durch ausprobieren herausbekommt.
Schreibt dafür zunächst eine Funktion die für eine Zahl die Anzahl der "korrekten Bits" (Also Bits die mit der zu findenden Zahl übereinstimmen) zurück gibt. (zum Beispiel bei zu findender Zahl:11111111; deinefunktion(00110011)=4) und entwickel dann ein Probier-System das zunächst eine "Anfangszahl" verwendet und dann den nächsten Versuch auf die Übereinstimmung der Zahl mit der zu findenden Zahl anpasst.
ps: Bitte keine Codes die simpel 256 (2**8) mögliche Integer überprüfen!
pss: Diese Aufgabe ist eine Variation des Spiels "Mastermind"!
Viel Erfolg!
Schreibt ein Programm das für eine 8-stellige Binärzahl durch ausprobieren herausbekommt.
Schreibt dafür zunächst eine Funktion die für eine Zahl die Anzahl der "korrekten Bits" (Also Bits die mit der zu findenden Zahl übereinstimmen) zurück gibt. (zum Beispiel bei zu findender Zahl:11111111; deinefunktion(00110011)=4) und entwickel dann ein Probier-System das zunächst eine "Anfangszahl" verwendet und dann den nächsten Versuch auf die Übereinstimmung der Zahl mit der zu findenden Zahl anpasst.
ps: Bitte keine Codes die simpel 256 (2**8) mögliche Integer überprüfen!
pss: Diese Aufgabe ist eine Variation des Spiels "Mastermind"!
Viel Erfolg!
0 Lösungen
Möglichkeiten der Objektanordnung
Liebe Community!
Schreibe ein kleines Script das für eine beliebige Menge Objekte alle Möglichkeiten diese anzuordnen ausgibt! (Nicht einfach nur die Anzahl der Möglichkeiten, eine funktion für fakultät zu schreiben ist bedeutend einfacher!)
Beispiel:
Eingabe: "rot,"blau","schwarz"
Ausgabe:
"rot,"blau","schwarz"
"rot","schwarz","blau"
"schwarz","rot",blau"
"schwarz","blau","rot"
"blau","schwarz","rot"
"blau","rot","schwarz"
Verzichtet bitte darauf ganz simpel einfach alle möglichen Ketten mit der gegebenen länge und den gegebenen Zuständen darauf zu untersuchen ob alle Objekte untereinander ungleich sind (Also nicht erst auch Zustände wie "schwarz",schwarz","schwarz" in eine innere Auswahl bringen und dann filtern) um (für große Aufgaben) die Rechenzeit gering zu halten!
Grüße!
Schreibe ein kleines Script das für eine beliebige Menge Objekte alle Möglichkeiten diese anzuordnen ausgibt! (Nicht einfach nur die Anzahl der Möglichkeiten, eine funktion für fakultät zu schreiben ist bedeutend einfacher!)
Beispiel:
Eingabe: "rot,"blau","schwarz"
Ausgabe:
"rot,"blau","schwarz"
"rot","schwarz","blau"
"schwarz","rot",blau"
"schwarz","blau","rot"
"blau","schwarz","rot"
"blau","rot","schwarz"
Verzichtet bitte darauf ganz simpel einfach alle möglichen Ketten mit der gegebenen länge und den gegebenen Zuständen darauf zu untersuchen ob alle Objekte untereinander ungleich sind (Also nicht erst auch Zustände wie "schwarz",schwarz","schwarz" in eine innere Auswahl bringen und dann filtern) um (für große Aufgaben) die Rechenzeit gering zu halten!
Grüße!
0 Lösungen
Text in Löffelsprache konvertieren
Schreibe ein Script welches einen Text entgegen nimmt und ihn in Löffelsprache konvertiert!
(Löffelsprache: "Geheimsprache" die oft von Kindern benutzt wird, und die dadurch gebildet wird das an jeden Vokal (Selbstlaut) „lew" und dann noch einmal der Vokal gehängt wird. zum Beispiel "Ich bin klug!"-->"Ilewich bilewin klulewug!")
(Löffelsprache: "Geheimsprache" die oft von Kindern benutzt wird, und die dadurch gebildet wird das an jeden Vokal (Selbstlaut) „lew" und dann noch einmal der Vokal gehängt wird. zum Beispiel "Ich bin klug!"-->"Ilewich bilewin klulewug!")
0 Lösungen
optimale Vektorendarstellung
Liebe Community,
Jeder 2-Dimensionale Vektor lässt sich als Summe 2 anderer (ungleicher) Vektoren darstellen. (siehe Grafik!!)
(In der Grafik wird der blaue Vektor als Summe von Vielfachen von einen "Ursprungsgrünen" und "Ursprungsroten" Vektor dargestellt. (Wenn ein Vektor mit einen negativen Vektor multipliziert wird ändert sich seine Richtung))
Daher gibt es logischerweise für alle Vektoren die keine Vielfache voneinander sind das 3 von ihnen unendlich viele Möglichkeiten haben mit ihren Vielfachen einen 4en darzustellen. Schreibe ein Programm das die drei verfügbaren Vektoren in der Form (X-Komponente,Y-Komponente) entgegennimmt und dann berechnet wie die 3 verfügbaren Vektoren "eingesetzt" werden um die Gesamtstrecke (=Summe Länge der Vektorenvielfache) minimal zu halten.
Dieses Programm lässt sich natürlich unendlich erweitern (mit mehr Vektoren und mehr Ebenen (zum Beispiel 3-D) bietet allerdings nachdem das Grundkonzept verstanden wurde kaum mehr Erkenntnis. Fließpunkte hingegen würde es für eine grafische Darstellung der Vektoren geben (zum Beispiel ganz simpel turtel) :*.
Der Schredder freut sich auf eure Lösungen!
Jeder 2-Dimensionale Vektor lässt sich als Summe 2 anderer (ungleicher) Vektoren darstellen. (siehe Grafik!!)
(In der Grafik wird der blaue Vektor als Summe von Vielfachen von einen "Ursprungsgrünen" und "Ursprungsroten" Vektor dargestellt. (Wenn ein Vektor mit einen negativen Vektor multipliziert wird ändert sich seine Richtung))
Daher gibt es logischerweise für alle Vektoren die keine Vielfache voneinander sind das 3 von ihnen unendlich viele Möglichkeiten haben mit ihren Vielfachen einen 4en darzustellen. Schreibe ein Programm das die drei verfügbaren Vektoren in der Form (X-Komponente,Y-Komponente) entgegennimmt und dann berechnet wie die 3 verfügbaren Vektoren "eingesetzt" werden um die Gesamtstrecke (=Summe Länge der Vektorenvielfache) minimal zu halten.
Dieses Programm lässt sich natürlich unendlich erweitern (mit mehr Vektoren und mehr Ebenen (zum Beispiel 3-D) bietet allerdings nachdem das Grundkonzept verstanden wurde kaum mehr Erkenntnis. Fließpunkte hingegen würde es für eine grafische Darstellung der Vektoren geben (zum Beispiel ganz simpel turtel) :*.
Der Schredder freut sich auf eure Lösungen!
0 Lösungen
Zahl als Produkt zweier Faktoren ohne 0
Schreibe ein Programm das dir für jede beliebige Zahl ausgibt ob sie als Produkt zweier natürlicher Zahlen die beide keine "0" enthalten darstellbar ist.
Zum Beispiel:
deinAlgorithmus(10) =True (5*2)
deinAlgorithmus(100)= True (25*4)
Sehe aber bitte davon ab ganz einfach ein Programm zu schreiben das für alle Zahlen die kleiner sind als die zu testende Zahl und die keine Nullen enthält überprüft ob der "Gegenfaktor" (also die Zahl die mit der Zahn multipliziert die gesuchte zahl ergibt) ebenfalls keine 0en enthält weil das Programm für sehr hohe Zahlen (Milliarde+) eine moderate Rechenzeit in Anspruch nehmen soll.
Zum Beispiel:
deinAlgorithmus(10) =True (5*2)
deinAlgorithmus(100)= True (25*4)
Sehe aber bitte davon ab ganz einfach ein Programm zu schreiben das für alle Zahlen die kleiner sind als die zu testende Zahl und die keine Nullen enthält überprüft ob der "Gegenfaktor" (also die Zahl die mit der Zahn multipliziert die gesuchte zahl ergibt) ebenfalls keine 0en enthält weil das Programm für sehr hohe Zahlen (Milliarde+) eine moderate Rechenzeit in Anspruch nehmen soll.
0 Lösungen
Die Qual des Quartals
Schreibe ein Programm, dass ein Quartal berechnet.
Das Programm kann folgendes Ausgeben:
- Quartal
- Jahr
- Quartalbegin
- Quartalende
Das Programm kann folgendes Ausgeben:
- Quartal
- Jahr
- Quartalbegin
- Quartalende
0 Lösungen
Stein, Papier, Schere, Echse, Spock
Programmiere das Spiel Stein, Papier, Schere, Echse, Spock, sodass man selbst eine Figur auswählen kann und der Computer eine zufällige Figur auswählt. Ermittele dann, wer diese Partie gewonnen hat.
0 Lösungen
BashCal - grafischer Konsolenkalender
Schreiben Sie ein Programm das einen simplen Kalender grafisch in der Konsole darstellt.
Folgende Befehle mit Parametern sollen zur Verfügung stehen
- cal -m -> bestimmten Monat aus dem aktuellen Jahr anzeigen
- cal -y -> alle Kalender für ausgewähltes Jahr anzeigen
- cal -my -> bestimmten Monat aus bestimmten Jahr anzeigen
Beispiel:
"cal -m 2" zeigt den Kalender Februar des aktuellen Jahres
"cal -y 2013" zeigt alle Monate von Januar bis Dezember des Jahres 2013
"cal -my 2 2011" zeigt den Kalender Februar des Jahres 2011
Im Anhang befindet sich ein Beispiel der möglichen grafischen Ausgabe in der Konsole.
Folgende Befehle mit Parametern sollen zur Verfügung stehen
- cal -m -> bestimmten Monat aus dem aktuellen Jahr anzeigen
- cal -y -> alle Kalender für ausgewähltes Jahr anzeigen
- cal -my -> bestimmten Monat aus bestimmten Jahr anzeigen
Beispiel:
"cal -m 2" zeigt den Kalender Februar des aktuellen Jahres
"cal -y 2013" zeigt alle Monate von Januar bis Dezember des Jahres 2013
"cal -my 2 2011" zeigt den Kalender Februar des Jahres 2011
Im Anhang befindet sich ein Beispiel der möglichen grafischen Ausgabe in der Konsole.
0 Lösungen
Web Request: Titel anzeigen
Ziel ist es, nach Eingabe einer Aufgabennummer, den zugehörigen Titel der C# Aufgabe auf http://trainyourprogrammer.de/csharp auszugeben. Dies mittels eines http web requests.
Beispiele
Beispiele
Konsolenausgabe:
Gib die Aufgabennummer ein: 42
Titel: 99 Bottles of Beer - Selbstständige Lösung
Konsolenausgabe:
Gib die Aufgabennummer ein: 999
Aufgabe nicht gefunden.
0 Lösungen
Quersummen Berechnung
Teil1. Schreibe ein Konsolenprogramm, welches die Quersummen der Zahlen 0 bis 99 errechnet.
Zusatz: Schreibe ein Programm, welches eine Eingabe annimmt, und aus der eingegebenen Zahl die Quersumme errechnet
(Mindestens bis 100.000).
*Das Programm muss sauber formatiert sein
*Verwende Kommentare zum besseren Verständnis und / oder halte deinen Fortschritt damit fest
Hinweise und Anregungen:
- Teil 1 darf auf den Fall bezogen programmiert werden. Aber:Ist das notwendig?
- Vergiss das Semikolon nicht
- Wie kann ich die Konsole offen lassen, bis ich Enter drücke? Alternativ: Wie könnte ich die Konsole über einen bestimmten
Zeitraum das Ergebnis anzeigen lassen?
Zusatz: Schreibe ein Programm, welches eine Eingabe annimmt, und aus der eingegebenen Zahl die Quersumme errechnet
(Mindestens bis 100.000).
*Das Programm muss sauber formatiert sein
*Verwende Kommentare zum besseren Verständnis und / oder halte deinen Fortschritt damit fest
Hinweise und Anregungen:
- Teil 1 darf auf den Fall bezogen programmiert werden. Aber:Ist das notwendig?
- Vergiss das Semikolon nicht
- Wie kann ich die Konsole offen lassen, bis ich Enter drücke? Alternativ: Wie könnte ich die Konsole über einen bestimmten
Zeitraum das Ergebnis anzeigen lassen?
0 Lösungen
Das Array-Telefonbuch
Erstelle ein mehrdimensionales Array, in der 5 Datensätze gespeichert werden. Es soll eine Festnetznummer, eine Handynummer und eine Geschäftliche Telefonnummer in der Konsole eingegeben werden. Nach der Eingabe soll die Konsole geleert und die Nummern ausgegeben werden. Bei der Ein- sowie Ausgabe soll eine laufende Eintragsnummer angezeigt werden.
0 Lösungen
Das Tortenproblem mit Tortenstücken ( Möglichkeiten )
k Kinder erhalten t Torten.
Die Torten sind alle gleich groß, haben aber
verschiedene Geschmacksrichtungen:
a) Ananas, b) Brombeer, c) Chocolate, d) Datteln, e) Erdbeer, usw.
Die Torten werden zunächst je in k Stücke geteilt.
Nun erhält jedes Kind (1: Anna; 2: Bert; 3: Claude; 4: Daphne; ...)
von jeder Torte ein Stück.
Danach beginnen die Kinder zu tauschen, denn vielleicht mögen nicht alle jede
Sorte gleich gut. Beim Tauschen achten die Kinder darauf, dass immer jedes
Kind gleich viele Tortenstücke behält.
Auf wie viele Arten können die Kinder die Tortenstücke nun so verteilen,
dass immer noch alle Kinder gleich viele Stücke haben?
Alle Möglichkeiten sind auszugeben.
Die Torten sind alle gleich groß, haben aber
verschiedene Geschmacksrichtungen:
a) Ananas, b) Brombeer, c) Chocolate, d) Datteln, e) Erdbeer, usw.
Die Torten werden zunächst je in k Stücke geteilt.
Nun erhält jedes Kind (1: Anna; 2: Bert; 3: Claude; 4: Daphne; ...)
von jeder Torte ein Stück.
Danach beginnen die Kinder zu tauschen, denn vielleicht mögen nicht alle jede
Sorte gleich gut. Beim Tauschen achten die Kinder darauf, dass immer jedes
Kind gleich viele Tortenstücke behält.
Auf wie viele Arten können die Kinder die Tortenstücke nun so verteilen,
dass immer noch alle Kinder gleich viele Stücke haben?
Alle Möglichkeiten sind auszugeben.