C# :: Aufgabe #234 :: Lösung #1

6 Lösungen Lösungen öffentlich
#234

Array Vorkommen programmieren

Anfänger - C# von Bryan - 31.10.2018 um 20:20 Uhr
Hallo Zusammen

Kann Jemand von Euch mir da weiter helfen?

Fragestellung des Vorkommen.

Gegeben ist ein Array zum Beispiel mit Zahlen als Werten:
{2, 17, 10, 9, 16, 3, 9, 16, 5, 1, 17, 14}
Schreiben Sie ein Programm, das von einem Array bestehend aus Zahlen prüft, wie viele dieser
Zahlen durch 3 teilbar sind.
Zudem sollen am Schluss die entsprechenden Zahlen ausgegeben werden. Das Programm soll für
beliebige Arrays funktionieren.

Vielen Dank für eure Lösung
#1
vote_ok
von Exception (7090 Punkte) - 23.12.2018 um 15:16 Uhr
Funktioniert für Listen und Arrays durch die überladene check Methode.

Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ArrayElementeTeilbarDurchDrei_234
{
    class Program
    {
        private static List<int> results;
        private static List<int> numbers1;
        private static int[] numbers2;
        private static int divider;

        static void Main(string[] args)
        {
            Program.results = new List<int>();
            Program.numbers1 = new List<int>() { 2, 17, 10, 9, 16, 3, 9, 16, 5, 1, 17, 14 };
            Program.numbers2 = new int[16] { 100, 200, 300, 400, 500, 600, 777, 42, 999, 666, 123, 456, 789, 0, -5, 100000 };
            Program.divider = 3;

            Program.check(numbers1);
            Program.check(numbers2);

            Program.printResults();

            Console.ReadLine();
        }

        /// <summary>
        /// Gibt die Ergebnisse aus.
        /// </summary>
        private static void printResults()
        {
            foreach (int result in Program.results)
            {
                Console.WriteLine(result);
            }
            Console.WriteLine("----------------------------");
            Console.WriteLine("Es sind somit {0} Zahlen durch {1} teilbar.", Program.results.Count, Program.divider);
        }

        /// <summary>
        /// Prüft die übergebenen Zahlen, ob diese durch Program.divider teilbar sind.
        /// </summary>
        /// <param name="numbers">Die zu prüfenden Zahlen</param>
        private static void check(List<int> numbers)
        {
            foreach (int number in numbers)
            {
                if (number % Program.divider == 0)
                {
                    Program.results.Add(number);
                }
            }
        }
        /// <summary>
        /// Prüft die übergebenen Zahlen, ob diese durch Program.divider teilbar sind.
        /// </summary>
        /// <param name="numbers">Die zu prüfenden Zahlen</param>
        private static void check(int[] numbers)
        {
            foreach (int number in numbers)
            {
                if (number % Program.divider == 0)
                {
                    Program.results.Add(number);
                }
            }
        }
    }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben