Gå till innehållet

Lösningsförslag till uppgift 7.24

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Uppgift_7._24
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Skriv in ett heltal");
            int tal = int.Parse(Console.ReadLine());
            Console.WriteLine($"Antalet primtal mindre än {tal} är {AntalPrimtalMindreÄn(tal)}");

            Console.ReadKey();
        }

        /// <summary>
        /// Undersöker hur många primtal det finns som är mindre än det angivna talet
        /// </summary>
        /// <param name="gräns"></param>
        /// <returns></returns>
        static int AntalPrimtalMindreÄn(int gräns)
        {
            int antal = 0;

            for (int i = 2; i < gräns; i++)
            {
                if (ÄrPrimtal(i))
                {
                    antal++;
                }
            }

            return antal;
        }

        /// <summary>
        /// Undersöker om ett givet tal är ett primtal
        /// </summary>
        /// <param name="tal"></param>
        /// <returns></returns>
        static bool ÄrPrimtal(int tal)
        {

            for (int i = 2; i < tal; i++)
            {
                // Om vi hittar en delare till talet så är det inte ett primtal
                if (tal % i == 0)
                {
                    return false;
                }
            }

            // Om ingen delare hittades så är talet ett primtal
            return true;
        }
    }
}

Kommentarer