Kann mir jemand Tipps geben für Informatik in der Schule (Programm Bluej)?

2 Antworten

If Schleifen

Es gibt keine if Schleifen. Es gibt if Abfragen. Eine Schleife kann mindestens einen und maximal viele Durchgänge durchlaufen. Bei if gibt es aber keine Wiederholung.

or Oboe me

Bitte was?

Eine if Abfrage nimmt eine Bedingung an, falls das die Frage ist. Eine Bedingung muss immer Wahr sein, damit sie funktioniert.

Wenn (AnzahlSchokoladeImHaus gleich AnzahlSchokoladeDieIchWill)
{
  Dann ...
}

Wenn (Bedingung) ...
oder auf Englisch:
If (Statement)

Das Statement kannst du mit or oder/und und verbinden, um mehrere Statements zu einem zu machen.

AnzahlSchokoladeImHaus gleich AnzahlSchokoladeDieIchWill und HabeIchHunger gleich wahr

Hier wäre jetzt der Fall, dass nur wenn ich Hunger habe UND wenn ich Schokolade habe, in der Anzahl, die ich will, das komplette Statement true werden würde.

Dabei ist zu beachten:

wahr oder falsch ist wahr

wahr und falsch ist falsch

wahr und wahr ist wahr

wahr oder wahr ist wahr

falsch oder falsch ist falsch

Habe ich die Frage damit richtig verstanden und richtig beantwortet?

Jenen980 
Fragesteller
 22.09.2022, 08:31

Verzeih meinen Rechtschreibfehler oben ….

Ja, was die Theorie angeht verstehe ich if-Bedingungen komplett! Die Sache aber ist die:

mich mach dir mal ne Aufgabe und du löst sie mal bitte mittels der If-Bedingung. Da mein Problem beim individuellen ANWENDEN bei Aufgaben ist

Aufgabe:

“Für ein neues Medikament ist die Dosierungshöhe wie folgt festgelegt: Kinder (egal ob Mädchen/junge) bekommen nur eine Tablette pro Tag. Bei Erwachsenen bekommt man, wenn man weiblich ist 2 Tabletten pro Tag und wenn man männlich ist 3 Tabletten.

so und das jetzt als if - Bedingung

0
FaTech  22.09.2022, 08:44
@Jenen980

Dann schreibe das genau so, wie es da steht. Schreib es, wenn es dir Schwierigkeiten macht, erstmal in deutsch auf:

Wenn Person gleich Kind dann 1 Tablette Pro Tag
Sonst wenn Person gleich Erwachsen und Person gleich Weiblich dann 2 Tabletten Pro Tag
Sonst wenn Person gleich Erwachsen und Person gleich Männglich dann 3 Tabletten

So und jetzt haben wir es also schon mal in dieser Form. Das ist 1 zu 1 dass von der Aufgabe, nur eben Code-Ähnlicher zusammengefasst.

Jetzt kann man anfangen, es in Code umzubauen. Belassen wir es beim deutschen.

Wenn (Person.Generation == Kind) 
{ 
  TablettenProTag(1); 
}
Sonst Wenn (Person.Generation == Erwachsen und Person.Geschlecht == Weiblich) 
{
  TablettenProTag(2);
}
Sonst Wenn (Person.Generation == Erwachsen und Person.Geschlecht == Männlich)
{
  TablettenProTag(3);
}

Jetzt haben wir schon mal den Aufbau noch Code-Ähnlicher.

Jetzt kannst du es noch in Englisch ändern und schon hast du es

1

Das Ding ist mir geht es genauso. Das Problem bei Informatik ist halt, dass dir das verstehen der Theorie eigentlich nur mäßig hilft.

Das wichtigste ist ständig zu Üben bis man die Befehle alle drin hat und ein Gefühl dafür bekommt wie man an Aufgaben rangeht. Einen schnellen Weg gibts da nicht

Jenen980 
Fragesteller
 22.09.2022, 08:27

Ja! Das ist es. Ja hab vor stetig zu üben. Da gibts ja auch Natur Talente. Dann machen die da für eine Methode 50 schleifen und das sieht einfach mega krass aus. Wieder andere machen dann am Anfang einer Methode dieses “int i = 0;” wo ich mich frage, für was ? Also ich weiß, dass hier dem integer I eine Zahl 0 zugewiesen wird. Aber wie verwendet man das?

0
FaTech  22.09.2022, 08:49
@Jenen980
int i = 0;

i steht für iteration und beschreibt den Durchgang in der Schleife. Dies wird nicht normal benutzt in Methoden. Man benutzt es eher in Schleifen -> Speziell For-Schleifen. Da Arrays bei 0 beginnen, ist der Startwert von i hier gleich Null. In Schleifen versteht es jeder, doch in Methoden bitte immer die Variablen ordentlich benennen. int AnzahlKekse = 10;

0
Invictu520  22.09.2022, 11:20
@Jenen980

Es gibt bei allem Leute die es einfach gut verstehen oder einfach einen Hang dazu haben. Sei es Mathe, Physik, Informatik, Sport oder sonstwas. Dafür können die meisten Überflieger aber halt nicht so leicht Rückschläge einstecken wie jemand der härter dafür arbeiten muss und daran gewöhnt ist.

Tut aber auch nichts zur Sache. Bei Informatik geht es ums Probleme lösen in der reinsten Form daher braucht man halt logisches Denken und sowas kann man üben.

Übrigens, 50 schleifen bedeuten nicht unbedingt was gutes. Ein guter Informatiker löst ein Problem im Bestenfall immer elegant mit wenig und übersichtlichem Code. Er muss am Ende nur das gestellte Problem lösen. Wenn du für ein gestelltes Problem 50 Zeilen schreibst und jemand anders braucht nur 3, dann ist die Andere Person talentierter. Schleifen werden nämlich sehr schnell unübersichtlich vorallem wenn sie verschachtelt sind.

0