Menu
Coddy logo textTech

Herausforderung: Summe von Zahlen

Teil des Abschnitts Grundlagen der Dart-Journey von Coddy. Lektion 93 von 94.

challenge icon

Aufgabe

Einfach

In dieser Herausforderung erstellst du eine Funktion, die die Summe von Zahlen in einer Liste anhand bestimmter Bedingungen berechnet.

Du hast eine Liste von Ganzzahlen und musst die Funktion sumWithCondition vervollständigen, die nur die Zahlen addiert, die bestimmte Kriterien erfüllen.

Die Funktion soll:

  • Die Summe aller Zahlen in der Liste berechnen, die größer als der Wert threshold sind
  • Das Addieren von Zahlen sofort beenden, nachdem die Summe den Wert maxSum überschreitet (die endgültige Summe kann größer als maxSum sein)
  • Die endgültige Summe zurückgeben

Wichtig: Die Funktion beendet das Addieren von Zahlen nachdem sie eine Zahl addiert hat, durch die die Summe maxSum überschreitet. Das bedeutet, dass das Endergebnis größer als maxSum sein kann.

Beispiel: Wenn die Zahlen, die größer als threshold sind, [15, 20, 25, 30] lauten und maxSum 50 ist:

  • 15 addieren: sum = 15 (fortfahren)
  • 20 addieren: sum = 35 (fortfahren)
  • 25 addieren: sum = 60 (überschreitet 50, daher hier anhalten)
  • Ergebnis: 60 (nicht 50)

Probier es selbst

void main() {
  // Testfälle
  List<int> numbers = [5, 10, 15, 20, 25, 30];
  
  // Summiere Zahlen größer als 12, mit maximaler Summe von 50
  int result = sumWithCondition(numbers, 12, 50);
  print('Sum of numbers > 12 (max 50): $result');
  
  // Summiere Zahlen größer als 8, mit maximaler Summe von 100
  result = sumWithCondition(numbers, 8, 100);
  print('Sum of numbers > 8 (max 100): $result');
}

// TODO: Vervollständige diese Funktion, um Zahlen basierend auf Bedingungen zu summieren
int sumWithCondition(List<int> numbers, int threshold, int maxSum) {
  int sum = 0;
  
  // TODO: Durchlaufe die Liste der Zahlen
  // TODO: Füge nur Zahlen größer als threshold zur Summe hinzu
  // TODO: Stoppe das Hinzufügen, wenn sum maxSum überschreitet
  
  return sum;
}

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Dart-Compiler