Giter Site home page Giter Site logo

uebung-034's Introduction

Uebung-034 -- Primzahlen Check


SPOILER

using System;
using System.Threading;

namespace PrimzahlenCheck
{
  internal class Program
  {
    static void Main()
    {
      /*  SET SCREEN  */
      const int consoleWidth = 58;
      const int consoleHeight = 30;
      Console.SetWindowSize(consoleWidth, consoleHeight);

      /*  VARIABLES  */
      string userInput;      //
      char userChoice;       //
      int primeCandidate;    //
      int divisor;           //
      bool isPrime;          //

      /*  START PROMT  */
      Console.Clear();
      Console.Write("\n                    Primzahlen Checker                    " +
                    "\n==========================================================");

      Console.Write("\n Wählen Sie die Art der Berechnung:          " +
                    "\n [w] - Berechnung mittels While-Schleife     " +
                    "\n [f] - Berechnung mittels For-Schleife       " +
                    "\n [a] - Prüft alle Kandidaten von 1 bis 10000 " +
                    "\n ");

      userInput = Console.ReadLine();
      char.TryParse(userInput, out userChoice);
      switch (userChoice)
      {
        case 'w':  // solution with WHILE LOOP
          Console.Write("\n Geben Sie eine ganze Zahl ein, die getestet werden soll " +
                        "\n [0] - Abbrechen ");
          do
          {
            /*  INPUT  */
            userInput = Console.ReadLine();
            int.TryParse(userInput, out primeCandidate);

            /*  CALCULATION  */
            isPrime = primeCandidate >= 2 ? true : false;   //  isPrime true if candidate >= 2 
                                                            //  isPrime false if candidate < 2
            divisor = 2;
            while (divisor <= primeCandidate / 2 && isPrime)
            {
              isPrime = primeCandidate % divisor != 0 ? true : false;
              divisor++;
            }
            /*  OUTPUT  */
            Console.Write($"\n {primeCandidate} ist {(isPrime ? "eine" : "keine")} Primzahl.");
          } while (primeCandidate != 0);
          break;

        case 'f': // solution with FOR LOOP
          Console.Write("\n Geben Sie eine ganze Zahl ein, die getestet werden soll. " +
                        "\n [0] - Abbrechen ");
          do
          {
            /*  INPUT  */
            userInput = Console.ReadLine();
            int.TryParse(userInput, out primeCandidate);

            /*  CALCULATION  */
            isPrime = primeCandidate >= 2 ? true : false;   //  isPrime true if candidate >= 2 
                                                            //  isPrime false if candidate < 2
            for (divisor = 2; divisor <= primeCandidate / 2 && isPrime; divisor++)
            {
              isPrime = primeCandidate % divisor != 0 ? true : false;
            }
            /*  OUTPUT  */
            Console.Write($"\n {primeCandidate} ist {(isPrime ? "eine" : "keine")} Primzahl.");
          } while (primeCandidate != 0);
          break;

        case 'a':    //  TEST ALL NUMBERS 1 to 10_000
          Console.Write($"\n Alle Primzahlen bis 10000:");
          for (primeCandidate = 1; primeCandidate <= 10_000; primeCandidate++)
          {
            /*  CALCULATION  */
            isPrime = primeCandidate >= 2 ? true : false;   //  isPrime true if candidate >= 2 
                                                            //  isPrime false if candidate < 2
            for (divisor = 2; divisor <= primeCandidate / 2 && isPrime; divisor++)
            {
              isPrime = primeCandidate % divisor != 0 ? true : false;
            }
            /*  OUTPUT  */
            if (isPrime)
            {
              Console.Write($"\n {primeCandidate} ");
            }
          }
          break;
        default: break;
      }
      /*  END PROGRAM  */
      Console.Write("\nZum Beenden bitte Eingabetaste drücken ...");
      Console.ReadLine();
      Console.Clear();
    }
  }
}

uebung-034's People

Contributors

ixi-enki avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.