Bu yazımızda C# ile bir sayının asal olup olmadığını Metot kullanarak bulan bir örnek gerçekleştireceğiz. Örneğimizde kullanıcının girdiği sayının asal olup olmadığını ekranda yazdıracağız ve bu sayıdan sonraki 5 tane asal sayının hangisi olduğunu bularak yazdıracağız.
Örneğimizde “asalmi” isimli bir metot oluşturarak gönderilen sayının asal olması durumunda true, asal sayı olmaması durumunda ise false değeri döndürmesini sağlayacağız.
Ana programda ise kullanıcının girmiş olduğu bu sayıyı metoda göndererek yazdıracağız. Bu sayıdan sonraki 5 adet asal sayının listelenmesi işlemini ise while döngüsünde sayıyı bir arttırarak yine metoda göndererek gerçekleştireceğiz. Sayının asal olması durumunda bu işlemi bir sayac ile kontrol edeceğiz. Sayacın 5 olması durumunda while döngüsünden çıkarak programı sonlandıracağız.
Kodlarımıza geçelim. Öncelikle metodumuz:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
public static bool asalmi(int sayi) { bool durum = false; int kontrol = 0; for (int i = 2; i < sayi; i++) { if (sayi % i == 0) //www.yazilimkodlama.com { kontrol = 1; break; } } if (kontrol == 1) { durum= false; } else {//www.yazilimkodlama.com durum= true; } return durum; } |
Ana programımız:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
static void Main(string[] args) { int sayac = 0; Console.Write("Sayıyı Girin : "); int s = Convert.ToInt32(Console.ReadLine()); if(asalmi(s)) { Console.WriteLine("{0} sayısı Asal",s); } else { Console.WriteLine("{0} sayısı asal değil",s); } Console.WriteLine("==========================="); Console.WriteLine("Sonraki 5 Asal Sayı"); Console.WriteLine("==========================="); while (true) { s++; if(asalmi(s)==true) { Console.WriteLine("{0} sayısı asal", s); sayac++; if (sayac == 5) { break; } } } Console.ReadKey(); } |
Kodlarımızın tamamı:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { public static bool asalmi(int sayi) { bool durum = false; int kontrol = 0; for (int i = 2; i < sayi; i++) { if (sayi % i == 0) //www.yazilimkodlama.com { kontrol = 1; break; } } if (kontrol == 1) { durum= false; } else {//www.yazilimkodlama.com durum= true; } return durum; } static void Main(string[] args) { int sayac = 0; Console.Write("Sayıyı Girin : "); int s = Convert.ToInt32(Console.ReadLine()); if(asalmi(s)) { Console.WriteLine("{0} sayısı Asal",s); } else { Console.WriteLine("{0} sayısı asal değil",s); } Console.WriteLine("==========================="); Console.WriteLine("Sonraki 5 Asal Sayı"); Console.WriteLine("==========================="); while (true) { s++; if(asalmi(s)==true) { Console.WriteLine("{0} sayısı asal", s); sayac++; if (sayac == 5) { break; } } } Console.ReadKey(); } } } |
Kendi TC Kimlik Numaranızdan önceki 10 adet Asal Sayıyı ve
ve sonraki 10 adet Asal Sayıyı Bulan Programı Yapamıyorum Lütfen Yardım Edin