Asal Sayılar [Delphi]

Bu yazımızda belirtilen aralık arasındaki asal sayıları bulan program anlatılmaktadır.

Asal Sayı:Sadece 1’e ve kendisine tam bölünebilen sayıdır.

Örn: 2, 3, 5, 7, 11, 13, 17, 19…  *En küçük ve tek çift asal sayı ‘2’ dir.

[Kod Kısmı]

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Panel1: TPanel;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
baslangic,bitis,carpan,i,j:integer;
begin
//listbox temizleniyor.
listbox1.clear;
//İstenilen aralık alınıyor..
baslangic:=strtoinT(edit1.text);
bitis:=strtoint(edit2.text);
//Aralıktaki her sayının asal sayı olup olmadığını kontrol etmek için döngü kuruluyor.
For i:=baslangic To bitis Do Begin
//Asıl kısım..Buradan sonra bir sayının asal olup olmadığı kontrol edilir.
//Bir sonraki sayının kontrolü için carpan değişkeni sıfırlanıyor.

carpan:=0;
For j:=1 To i Do
//Sayı 1’den kendisine kadar olan sayılara bölünür.Kalan 0 ise tam bölünmüş demektir.

//Tam bölünüyorsa carpan degiskeninin değeri 1 arttırılıyor.
If (i mod j=0) Then
carpan:=carpan+1;
//Sayı 1 ve kendisine yani 2 adet sayıya tam olarak bölünürse asaldır..Sayının asal olup olmadığı kontrol ediliyor.
If carpan=2 Then
listbox1.Items.add(inttostr(i));   //sayı asal ise listbox’a ekleniyor..
end;
end;

end.

[Ekran Çıktısı]

dahiweb-delphi-asal-sayilar

e.U

Yazar: emreuzun

Emre UZUN sitemizde 12 yazı eklemiş...

©CriticaLWave

Share
  • Berk

    Bi yardımıcı olun ya listbox olayı nedir yeni başladık hoca bu soruyu verdi listbox diye bişey göstermedi o nasıl olucak. Bide akış diyagramı olsa bomba olur 🙂

    • örnekte mevcut, güzel açıklama yapılmış, dikkatlice inceleyiniz