Probeklausuraufgabe

Pufy

Mitglied
Schreiben Sie ein Programm, welches eine ganze Zahl n
einliest und folgende Summe berechnet:

1/1 + 1/3 + 1/5 - 1/7 - 1/9 + 1/11 + 1/13 - 1/15 - 1/17 +(-) ...... 1/n

indem Sie
a) zuerst alle positiven Summanden addieren und Ergebnis ausgeben, dann
b) alle negativen Summanden addieren und Ergebnis ausgeben und
c) die Summe wie in der Formel angegeben (alternierend + und -) bestimmen und wieder
das Ergebnis auf dem Bildschirm ausgeben.

ich habe kein Plan wie ich das Programm schreiben soll. Alle ungeraden Zahlen zu adieren würde ja gehen. Aber diese Wechsel check ich nicht. Wäre wichtig für mich das zu verstehen.

Gruß

Pufy | Newbie in Java
 

httpdigest

Top Contributor
Wenn wir mal 1/1 außen vorlassen, dann alterniert das Vorzeichen ja einfach alle 2 Summanden.
Also, + 1/3 + 1/5 - 1/7 - 1/9 + 1/11 + 1/13 - 1/15 - 1/17...
Du musst jetzt einfach nur eine Summenformel finden, die das abbildet.
Um ein Vorzeichen alle zwei Zahlen wechseln zu lassen, verwenden die Mathematiker gerne die Potenzierung mit (-1), also z.B. (-1)^(i/2), wobei (i/2) eine Integer-Division sein könnte (/2 einfach deswegen, um ein unterschiedliches Ergebnis alle zwei Inkremente von i zu bekommen) und das Dach ^ die Potenzierungsoperation.
 

Pufy

Mitglied
Um ehrlich zu sein verstehe ich deine Antowrt nicht so ganz von der Formulierung her.... :D
Das was ich glaube zu verstehen ist, dass wenn ich bei einer Potenz von -1 eine gerade zahl habe ein + herauskommt und bei einer ungeraden ein -. Dann verstehe ich die Lösung dahinter aber nicht, weil es mir darum ging, dass ich kein plan habe wie ich das in Java programieren kann.
 

httpdigest

Top Contributor
Naja, wenn es sich hierbei um eine "Probeklausur" handelt, bin ich mal davon ausgegangen, dass dir das Rüstzeug in Sachen Java im Unterricht entsprechend vermittelt wurde und dir nur ein Denkanstoß gefehlt hat.
Was genau verstehst du denn nicht, bzw. woran hakt es denn genau?
 

Pufy

Mitglied
naja man muss dazu sagen, das wir aufgrund mehrerer Fehlstunden von Seiten unsres Dozenten erst 6 mal 1h lange Java unterricht hatten, weshalb ich persönlich die Aufgaben auch übertrieben finde.
Ich habe mega viel gelernt dafür, die ganzen Operatoren und so. Ich weiß bloß einfach nicht wie wir da rangehen sollen. Gibt es da ein grundgerüst oder so? Was wir bis jz gemacht haben sind for / Do / While und if else schleifen und neben mir liegt gerade ein Zettel mit mathematischen Operatoren von Java. Und jz sollen wir uns bis zur nächsten Stunde an der aufgabe versuchen. .... in 14 tagen ist die Prüfung und ich habe das so richtig bange vor....
 

mihe7

Top Contributor
if else schleifen
Bestimmt nicht :)

Alle ungeraden Zahlen zu adieren würde ja gehen.
Dann kannst Du doch schon fast alles. Die ungeraden Zahlen lassen der Reihe nach mit 2*i+1 berechnen. Eine Möglichkeit, den Wechsel bzgl. +/- darzustellen, kennst Du jetzt ja. Eine andere wäre, über den Rest einer Division zu gehen. Ganz "billig" wäre es, einfach zu zählen.

Probiers einfach und wenn du Fragen zum Code hast, postest Du den hier (bitte so: [code=Java] Dein Code [/code])
 

Oben