Aufsummierung von Zahlen < Java < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) reagiert/warte auf Reaktion | Datum: | 16:55 Fr 11.12.2009 | Autor: | prinz777 |
Aufgabe | Erstellen Sie ein lauffähiges Java-Programm, das in einer Schleife alle Zahlen
von 1 bis 100 durchgeht und diejenigen aufsummiert, die durch drei teilbar sind.
Anschließend soll die Summe dieser Zahlen ausgegeben werden. |
hallo zusammen,
ich habe da seit ein paar tagen ein kleines problem mit meiner aufgabe.
Mitlerweile hänge ich immer wieder beim schritt der aufsummierung.
Also meine bisherige Idee war es das über ein array zu programmieren.
Meine Idee mit dem Array lautet:
boolean teilbar = false;
int summe;
int i;
int [] x;
x = new int[100]
for (i=1; i < x.lenght; i++);
{
if (i%3 == 0)
teilbar = true else teilbar = false; }
..ja nun wie gesagt hänge ich jetzt am schritt der aufsummierung fest..
hättet ihr da vllt ein paar neue ideen oder ansätze für mich?
ich bedanke mich schon mal im vorraus.
mfg
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 22:47 Fr 11.12.2009 | Autor: | uliweil |
Hallo prinz777,
ein array ist bei dieser Aufgabenstellung nicht erforderlich, sondern eher hinderlich.
Du musst lediglich innerhalb der for-Schleife(i=1; i<=100, i++) mit dem if auf Teilbarkeit prüfen (so wie Du das gemacht hast) und dann, wenn teilbar, sofort i auf das Summenfeld addieren: summe = summe + i.
Nach der Schleife summe ausgeben und vor der Schleife nicht vergessen summe auf 0 zu setzen.
Gruß
Uli
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 11:51 Sa 12.12.2009 | Autor: | prinz777 |
achso danke ulli..
du hast recht ein array würde die sache wirklich komplizierter machen.
ich hab jedoch noch eine frage undzwar wie gebe ich genau die summe nach der schleife aus? und was passiert in meiner unten stehenden schleife nach dem else?
und wie verfahre ich weiter?
also :
if (i % 3 == 0);
do (summe = summe + i); else ??
|
|
|
|
|
> achso danke ulli..
> du hast recht ein array würde die sache wirklich
> komplizierter machen.
> ich hab jedoch noch eine frage undzwar wie gebe ich genau
> die summe nach der schleife aus? und was passiert in meiner
> unten stehenden schleife nach dem else?
> und wie verfahre ich weiter?
>
> also :
> if (i % 3 == 0);
hier steht ne if ohne anweisung
> do (summe = summe + i); else ??
hier nun ein do?
du hattest doch anfangs die while schleife:
for (i=1;i<=100;i++) {
dann nun die bedingung
if ((i % 3) == 0) { sum = sum+1; }
}
das else entfällt, weil du in diesem falle ja eh keine bedingung drinhättest, also wird nach der if ja direkt weitergegangen in der schleife
gruß tee
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:20 So 13.12.2009 | Autor: | prinz777 |
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 22:46 So 13.12.2009 | Autor: | prinz777 |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
ahhh ich verstehe, danke!
also mein programm würde jetzt folgendermaßen aussehen:
public class summierung {
public static void main (string []args) {
int i;
int summe = 0;
for (i=1; i =< 100; i++); {
if (i%3 == 0) { summe = summe+1; }
kann ich denn jetzt schon die summe über System.out.println ausgeben oder fehlt da noch was?
lg
|
|
|
|
|
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> ahhh ich verstehe, danke!
>
> also mein programm würde jetzt folgendermaßen aussehen:
>
> public class summierung {
> public static void main (string []args) {
>
> int i;
> int summe = 0;
>
> for (i=1; i =< 100; i++); {
> if (i%3 == 0) { summe = summe+1; }
>
> kann ich denn jetzt schon die summe über
> System.out.println ausgeben oder fehlt da noch was?
hallo, warum probierst du es nicht aus?
ansonsten kannst du nach der forschleife die print anweisung unterbringen
>
> lg
>
>
>
gruß tee
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:28 Di 15.12.2009 | Autor: | prinz777 |
hallo nochmal zusammen ich habe mein programm jetzt wie folgt eingetippt habe aber jedoch ein problem bei der for schleife:
public class Aufsumme {
static void main (string [] args) {
int i;
int summe;
for (i=1; i=< 100; i++);
if (i%3 == 0) { (summe= summe+i);
System.out.println("Die Summe beträgt"+summe);
}
}
}
java zeigt mir hierbei immer ein fehler bei der for-schleife an..woran könnte es liegen? :/
danke im vorraus
|
|
|
|
|
> hallo nochmal zusammen ich habe mein programm jetzt wie
> folgt eingetippt habe aber jedoch ein problem bei der for
> schleife:
>
> public class Aufsumme {
> static void main (string [] args) {
>
> int i;
> int summe;
erstmal musst/solltest du die variablen initialisieren (0 setzen)
>
> for (i=1; [mm] i\red{=<} [/mm] 100; i++);
der vergleichsoperator ist in der falschen reihenfolge, richtig wär <=
> if (i%3 == 0) { (summe= summe+i);
die runden klammern gehören da nicht her und am ende fehlt eine schließende geschweifte klammer
>
> System.out.println("Die Summe beträgt"+summe);
>
> }
> }
> }
und dafür hier eine weniger
gruß tee
>
> java zeigt mir hierbei immer ein fehler bei der
> for-schleife an..woran könnte es liegen? :/
>
> danke im vorraus
>
also im detail:
1: | public class Aufsumme {
| 2: | public static void main(String args[]) {
| 3: | int i=0, summe=0;
| 4: | for (i=1; i<= 100; i++) {
| 5: | if (i%3 == 0) { summe= summe+i; }
| 6: | }
| 7: | System.out.println("Die Summe beträgt "+summe);
| 8: | }
| 9: | } |
gruß tee
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:27 Di 15.12.2009 | Autor: | prinz777 |
DANKE! +für die schnelle anwort
+für die fachkompetenz!
frohe weihnachten allen zusammen!
|
|
|
|