Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Ruby-Hilfe für Anfänger » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Zum Ende der Seite springen Ruby-Hilfe für Anfänger
Beiträge zu diesem Thema Autor Datum
 Ruby-Hilfe für Anfänger LadyClueless 10.11.2016 10:12
 RE: Ruby-Hilfe für Anfänger eulerscheZahl 10.11.2016 20:12

Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
LadyClueless
Grünschnabel


Dabei seit: 10.11.2016
Beiträge: 1

Ruby-Hilfe für Anfänger Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meine Frage:
Hallo ihr Lieben, ich brauche ganz dringend Hilfe! Ich lerne gerade die Programmiersprache Ruby, habe aber noch nicht viel Erfahrung sammeln können. Ganz einfache Fragen kann ich mittlerweile lösen, aber an folgenden Aufgabenstellungen beiße ich mir die Zähne aus:

Aufgabe 1
Entwickeln Sie Ruby-Funktionsdefinitionen, die die folgenden Aufgaben lösen.

1.Gegeben ist eine Liste von ganzen Zahlen. Gesucht ist die Anzahl der Vorkommen von geraden Zahlen.

2.Gegeben ist eine Liste von Listen mit jeweils zwei Elementen, von denen das erste eine Gleitkommazahl ist. Gesucht ist die Summe der jeweils ersten Listenelemente. Geben Sie zwei Definitionen an: eine mit map, eine ohne.

3.Gegeben ist eine Liste von Zeichenketten. Gesucht ist eine der längsten Zeichenketten in dieser Liste. (Die Länge einer Zeichenkette kann mit length ermittelt werden, z.B. wird "abc".length zu 3 ausgewertet.)

4.Was macht Ihre Funktion aus der vorherigen Aufgabe, wenn sie für ["a", "abc", "def", ""] ausgewertet wird? Gibt sie "abc" oder "def" aus? Beschreiben Sie das Ergebnis Ihrer Funktion im Allgemeinen. Entwickeln Sie eine Variante Ihrer Funktion, die den anderen Wert bestimmen würde.

Aufgabe 2

1.Kommentieren Sie die folgende Funktionsdefinition und markieren Sie die Stelle, an der das Ergebnis erzeugt wird:
# ...
def count_positive(list)
n = 0
list.each { |x| n = n + (if x > 0 then 1 else 0 end) }
n
end


2.Kommentieren Sie die folgende Funktionsdefinition und vergeben Sie einen geeigneten Namen:
#
def ... (list)
sum = 0
list.map {|x| if x > 0 then x else -x end}
end


3.Die folgende Funktionsdefinition ist fehlerhaft - korrigieren Sie sie. Damit Sie wissen, was gemeint ist: reciprocal_sum([2,4,8]) ? 0.875.
def reciprocal sum(list)
sum = 0
list.map (|x| 1/x).each (|x| sum = sum + x)
end



Meine Ideen:
Ich benutze 'Ruby 2.1.9-p490-x64' und habe alles Mögliche probiert, bin mir aber bei vielem entweder nicht sicher oder bekomme Fehlermeldungen beim Bestätigen meiner Funktionen. In den Unterlagen, welche mir zur Verfügung stehen, kann ich keine sinnvolle Hilfe finden, eben sowenig im Internet. Ich komme nicht mehr weiter und bin langsam am verzweifeln. Ist jemand so lieb und kann mir die Fragen beantworten und erklären, wie es geht? Jeder Tipp und jede Hilfe sind herzlich willkommen! Vielen, vielen Dank!!
10.11.2016 10:12 LadyClueless ist offline E-Mail an LadyClueless senden Beiträge von LadyClueless suchen Nehmen Sie LadyClueless in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

RE: Ruby-Hilfe für Anfänger Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Die erste Aufgabe kannst du ja fast schon vom Code weiter unten abschreiben.
code:
1:
2:
3:
4:
5:
def count_positive(list)
  n = 0
  list.each { |x| n = n + (if x > 0 then 1 else 0 end) }
  n
end

if x > 0 ist der Teil, der prüft, ob eine Zahl positiv ist. Ersetzen wir den doch einfach durch if x % 2 == 0, um zu prüfen, ob die Zahl gerade ist.

__________________
Syntax Highlighting fürs Board (Link)
10.11.2016 20:12 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Informatiker Board » Themengebiete » Praktische Informatik » Ruby-Hilfe für Anfänger