C# for schleife frage?

3 Antworten

Zwei Möglichkeiten:

  • Die Schleife läuft von 0 bis < 10 und Du gibst in einer zweiten Schleife dann eben 10 - x Sterne aus.
  • Die Schleife läuft von 10 bis > 0 und Du gibst in einer zweiten Schleife dann eben x Sterne aus.

Felixmagpizz640 
Fragesteller
 23.02.2022, 10:06

Wie sieht das dann aus?

0
ohwehohach  23.02.2022, 10:09
@Felixmagpizz640

Google die Syntax von for-Schleifen nach, dann kannst Du es hinschreiben. Bei meinen beiden Ansätzen brauchst Du folgende Struktur:

for (...) {
  for (...) {
  }
}

mit zwei unterschiedlichen Schleifenvariablen natürlich.

0
freejack75  23.02.2022, 10:15
@Felixmagpizz640

warum fragst Du überhaupt nach C# Programmierung, wenn Du offensichtlich keinerlei Motivation hast auch nur das geringste selber dafür zu tun?

1
Felixmagpizz640 
Fragesteller
 23.02.2022, 10:16
@freejack75

Ich bin hier grad Praktikum und raffe gar nichtd und er meint ich hab das in 15 minutrn geschafft aber ich check nix

0
ohwehohach  23.02.2022, 10:16
@Felixmagpizz640
Anstatt was den Stern?

Anstatt der Ausgabe der Zahl. Eine for-Schleife wiederholt nur was. Eine For-Schleife gibt nichts aus. Du musst also einen Befehl hinschreiben, der was ausgibt.

0
freejack75  23.02.2022, 10:17
@Felixmagpizz640

dann rede doch mal mit deinem Betreuer, damit der dir ein bischen Lern- und Lesematerial zeigt.

1

Moin! Via zwei Schleifen.

int iSterne = Convert.ToInt32(Console.ReadLine());
for (int i = iSterne; i > 0; i--)
{
  for (int z = i; z > 0; z--)
      Console.Write("*");
  Console.WriteLine("");
}

Das wäre es schon gewesen. Wir setzen den Zähler auf die Anzahl der Sterne und packen jede Zeile diese Anzahl in z, welches wir wieder herunterzählen und springen dann in die nächste Zeile, bis wir bei 0 sind.

Output bei iSterne = 4:

****
***
**
*

Bild zum Beitrag

Lässt sich natürlich auch auf 10 anpassen.

Ich bitte drum bei Nachfragen zu fragen! Dir bringt es nichts, wenn ich es dir nur vorbete. Du musst es auch verstehen - wenn du das nicht tust, ist das deine eigene Schuld und nicht meine Verantwortung.

Woher ich das weiß:Berufserfahrung – 💻 Zertifizierter Sr. Cloud Engineer im IT-Consulting
 - (Computer, Internet, programmieren)

Felixmagpizz640 
Fragesteller
 23.02.2022, 10:28

Z sind die Zeilen und i sind die Sterne oder?

0
Dultus, UserMod Light   23.02.2022, 10:30
@Felixmagpizz640

Die hängen zusammen.

i ist die Anzahl der Zeilen und Angabe der Sterne, weil wir in der ersten Zeile die maximale Anzahl der Sterne haben und am Schluss nur noch einen Stern.

Bei vier Sternen haben wir vier Zeilen.

z sind dabei die Sterne in einer einzelnen Zeile. Wenn wir durch den zweiten Loop sind, springen wir eine Zeile herunter.

0
Dultus, UserMod Light   23.02.2022, 11:09
@Felixmagpizz640

Ein;

for (int z = iSterne - i; z > 0; z--)
  Console.Write(" ");

Zwischen die beiden fors schnallen;

    int iSterne = Convert.ToInt32(Console.ReadLine());
    for (int i = iSterne; i > 0; i--)
    {
        for (int z = iSterne - i; z > 0; z--)
            Console.Write(" ");
        for (int z = i; z > 0; z--)
            Console.Write("*");
        Console.WriteLine("");
    }

Output bei 10:

**********
 *********
  ********
   *******
    ******
     *****
      ****
       ***
        **
         *

Wir wollen so viele Leerzeichen, wie die Sterne - der Spalte beträgt.

0

wie ich sehe hast du erfahrungen mit python

dein betreuer hat sich wahrscheinlich gedacht, dass du bisschen c# anschaust und dann evtl die aufgabe schaffst mit c# statt python, also versuch dir ein paar basics von c# anzuschauen

als nächstes könntest du die aufgabe erstmal in python machen und danach überlegen wie du das in c# übersetzt