C# :: Aufgabe #353
3 Lösungen

Summe einzeln vorkommender Zahlen
Anfänger - C#
von JKooP
- 09.02.2021 um 20:00 Uhr
Gegeben ist ein Array, welches beliebig viele Integer- Zahlen beinhaltet.
Erstelle eine Methode/Funktion, mit der man die Summe aller einzeln im Array vorkommenden Zahlen berechnen kann.
arr1 = { 1, 2, 3, 1, 2 } => Summe = 3
arr2 = { 1, 2, 3, 4, 5 } => Summe = 15
arr3 = { 1, 2, 3, 3, 2, 1 } => Summe = 0
Viel Spaß
Erstelle eine Methode/Funktion, mit der man die Summe aller einzeln im Array vorkommenden Zahlen berechnen kann.
arr1 = { 1, 2, 3, 1, 2 } => Summe = 3
arr2 = { 1, 2, 3, 4, 5 } => Summe = 15
arr3 = { 1, 2, 3, 3, 2, 1 } => Summe = 0
Viel Spaß
Lösungen:

using System; using static System.Console; WriteLine(aufgabe_353(new int[] { 1, 2, 3, 1, 2 })); WriteLine(aufgabe_353(new int[] { 1, 2, 3, 4, 5 })); WriteLine(aufgabe_353(new int[] { 1, 2, 3, 3, 2, 1 })); ReadKey(); static int aufgabe_353 (int[] n) { int sum = 0; for (var i = 0; i < n.Length; i++) { int counter = 0; for (var j = 0; j < n.Length; j++) if (n[i] == n[j]) counter++; if (counter == 1) sum += n[i]; } return sum; }
Hallo,
hier mein Lösungsvorschlag.
C#-Code
hier mein Lösungsvorschlag.

using System; namespace Aufgabe_353_Summe_aus_Array { internal class Program { private static void Main(string[] args) { Console.WriteLine("Hallo Welt!"); Console.WriteLine("Dieses Programm ermiitelt die Summe aller einzeln im Array vorkommenden Zahlen\n\n"); int[] array1 = { 1, 2, 3, 2, 1 }; int[] array2 = { 1, 2, 3, 4, 5 }; int[] array3 = { 1, 2, 3, 3, 2, 1 }; ArrayAusgabe(array1); Console.WriteLine("Summe der einzeln vorkommenden Zahlen: " + BerechneSumme(array1) + "\n"); ArrayAusgabe(array2); Console.WriteLine("Summe der einzeln vorkommenden Zahlen: " + BerechneSumme(array2) + "\n"); ArrayAusgabe(array3); Console.WriteLine("Summe der einzeln vorkommenden Zahlen: " + BerechneSumme(array3) + "\n"); } private static int BerechneSumme(int[] array) { int anzahl = array.Length; int summe = 0; for (int i = 0; i < anzahl; i++) { int j = 0; bool ungleich = true; while (j < anzahl & ungleich) { if (j == i) { j++; continue; } if (array[i] == array[j]) { ungleich = false; } j++; } if (ungleich) { summe += array[i]; } } return summe; } private static void ArrayAusgabe(int[] array) { Console.Write("Die Zahlen im Array lauten: "); foreach (var i in array) { Console.Write(i + " "); } Console.WriteLine(); } } }
NET 5.x; C# 9.x; VS-2019
C#-Code

using System; using System.Linq; var arr = new int[] { 1, 2, 3, 1, 2 }; var r = arr.GroupBy(x => x).Select(x => new { n = x.Key, c = x.Count() }).Where(x => x.c == 1).Select(x => x.n).Sum(); Console.WriteLine($"Summe einzeln vorkommender Zahlen: {r}");