İki sayı arasındaki asal sayılar

Buda çok eskiden yazdığım bir kod, o zamanlar visual basic kullanmışım ondan sonra bir daha visual basic kullandığımı sanmıyorum :). Kodlar çok saçma veya gereksiz olabilir ama hatıra olsun diye aynı şekilde yayınlayacağım.

Programın yaptığı, yazdığınız iki sayı arasındaki asal sayıları bulmak. Çalışmasını denemek için 2 Listbox, 2 Textbox, 1 Command Box eklemelisiniz.

  1. Dim a, b, i, c As Long
  2. Private Sub Command1_Click()
  3. List1.Clear               ‘list1 i temizliyelim ki 2. kez araninca üst üste binmesin’
  4. k = Val(Text1.Text) - 1   ‘k yi ilk sayidan bir eksige ayarliyoruz cunku sonra ekliycez’
  5. l = Val(Text2.Text) - 1   ‘2. sayiyi dahil etmemek icin ondan da 1 cikariyoruz’
  6. 1:                          ‘eger sayi asal degilse burdan baslasin’
  7. k = k + 1                 ‘iste k ye 1 ekliyoruz "soz verdigimiz gibi"’
  8. For a = k To l            ‘k ile l arasindaki sayilar’
  9. c = a \ 2 + 1           ‘iste program fazla yorulmasin diye yarisina kadar aratiyorz’
  10. For i = 2 To c          ‘yarisina kadar aratmamin sebebi yarisindan büyük’
  11. ‘bir sayiya zaten bölünemiyecegi’
  12. b = a Mod (i)         ‘daha basit bir kod olsun diye modu kullandim’
  13. If b = 0 Then GoTo 1  ‘eger sayimiz asal degilse yeni sayi denemek icin basa dönsün’
  14. Next i                  ‘…’
  15. List1.AddItem (a)       ‘eger sayi for döngüsünden kurtuldu ise asal demektir ve’
  16. ‘list e eklenmeye hak kazanmıstir’
  17. Next a                    ‘…’
  18. End Sub                     ’sizce analamsiz kodlar olabilir ama bu benim ilk projem’
  19. ‘ve sanirim ÖSS sinavina hazirlanmamdan dolayi 2. si’
  20. ‘uzun bir zaman sonra olacak’

Delphi ile heceleme programı

Çok önceden delphi ile yaptığım bir heceleme algoritması. Uzun zaman sonra görünce buraya da yazmak istedim.
Programın algoritmasını yazarken nasıl hecelediğimizi keşfetmiştim o nedenle severim bu algoritmayı.
Ayrıca bu ve benzeri kodları yayınlarken kodları renklendirebileceğim bi wp plugini bilen var mı?

  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7.   Dialogs, StdCtrls, ALScrollingText;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     Memo1: TMemo;
  12.     Memo2: TMemo;
  13.     Button1: TButton;
  14.     procedure Button1Click(Sender: TObject);
  15.   private
  16. function sesli(harf:string):boolean;
  17.   public
  18.     { Public declarations }
  19.   end;
  20.  
  21. var
  22.   Form1: TForm1;
  23.  
  24. implementation
  25. {$R *.dfm}
  26.  
  27. function tform1.sesli(harf:string):boolean;
  28. begin
  29.  
  30. result:=false;
  31.  
  32. if harf=‘a’then  result:=true;
  33. if harf=‘e’then  result:=true;
  34. if harf=‘ı’then  result:=true;
  35. if harf=‘i’then  result:=true;
  36. if harf=‘o’then  result:=true;
  37. if harf=‘ö’then  result:=true;
  38. if harf=‘u’then  result:=true;
  39. if harf=‘ü’then  result:=true;
  40.  
  41. if harf=‘A’then  result:=true;
  42. if harf=‘E’then  result:=true;
  43. if harf=‘I’then  result:=true;
  44. if harf=‘İ’then  result:=true;
  45. if harf=‘O’then  result:=true;
  46. if harf=‘Ö’then  result:=true;
  47. if harf=‘U’then  result:=true;
  48. if harf=‘Ü’then  result:=true;
  49. end;
  50.  
  51. procedure TForm1.Button1Click(Sender: TObject);
  52. var
  53.   i:integer;
  54. begin
  55.   Memo2.Text := EmptyStr;
  56. for i := 1  to length(Memo1.Text) do
  57. begin
  58.   if
  59.       not     sesli(copy(Memo1.Text,i,1))
  60.       and     sesli(copy(Memo1.Text,i+1,1))
  61.       and not (copy(Memo1.Text,i,1)=‘ ‘)
  62.       and not (copy(Memo1.Text,i-1,1)=‘ ‘)
  63.       and not (copy(Memo1.Text,i+1,1)=‘ ‘)
  64.   then
  65.     begin
  66.      Memo2.text := Memo2.text+‘-’;
  67.     end;
  68.   if      sesli(copy(memo1.Text,i,1))
  69.       and sesli(copy(memo1.Text,i-1,1))
  70.   then
  71.     begin
  72.     Memo2.text := Memo2.text+‘-’;
  73.     end;
  74.   Memo2.Text := Memo2.Text + copy(Memo1.Text,i,1);
  75. end;
  76.  
  77. if copy(Memo2.Text,1,1) = ‘-’ then
  78. begin
  79.   Memo2.Text := copy(Memo2.Text,2,length(Memo2.text)-1);
  80. end;
  81. end;
  82.  
  83. end.

Programcı tipleri

Eski ama çok hoş bir yazıyı paylaşmak istedim.

C Programcısı
• Suda yürüyebilir;
• İşinde 66 MHz 486DX2 kullanır;
• Bir elektronik tablolama programını 2
günde yazabilir;
• Her fiilden sonra () kullanır; örneğin iş
arkadaşına “Bu gece sinemaya gelir
misin()? Sana sormadan() bilet aldım()
ama…” der.
(C programcılarının karşı cinsten arkadaşı
olmaz!).

LISP Programcısı
• Olimpik sınıf yüzücüdür;
• İşinde 33 MHz 386 kullanır;
• Bir elektronik tablolama programını bir haftada
yazabilir;
• Cümlelerinde bol parantez kullanır; örneğin iş
arkadaşına
“(((Bu gece) (sinemeya(gelir misin?)))
((Sana) sormadan (bilet aldım) ama…))”  der.

Turbo Pascal Programcısı
• Bayağı iyi yüzer;
• 16 MHz 286’larda bile program yazabilir;
• İyi bir hesap makinesi programını 10 günde yazabilir;
• Konuşurken gereksiz yere “begin-end” kullanır;
örneğin kız arkadaşına
“begin; Bu gece sinemeya gelir misin? Sana
sormadan bilet aldım ama… end;” der.
Programcı Tipleri 57
Kim Güler Bilgisayarlara

FORTRAN Programcısı
• Suda batmamayı başarır;
• Bulabilse 8 Mhz 8088 makinede bile program
yazabilir;
• Karmaşık sayılabilecek bir hesaplama için birkaç
haftada bir program yazabilir;
• Nasıl konuştukları bilinmiyor; daha doğrusu
hatırlanmıyor.

BASIC Programcısı
• Banyo küvetinde boğulmamak için bile yoğun çaba
sarfeder;
• Commodore 64 için bile program yazabilir;
• Birkaç saat içinde 2 sayıyı toplayan program yazabilir;
• Konuşurken cümlelerini numaralama gereksinimi
duyar. Örneğin kız arkadaşına
“10 Bu gece sinemaya gelir misin
20 Sana sormadan bilet aldım, ama…” der.

Assembly Dili Programcısı
• Deniz kenarına geldiğinde denizin yarılıp kendine yol
vermesini sağlayabilir;
• İşinde Pentium Pro kullanır;
• Çok kullanıcılı bir işletim sistemi yazabilir;
• Konuşurken en fazla 3 harfli kelimeler kullanır;
örneğin iş arkadaşına
“Bu gce snm’ya glm. Çok işm var” der.