trilyonlarca basamağı çarpan bi kod var mı???

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
delphiibo
Üye
Mesajlar: 72
Kayıt: 27 Eki 2005 04:55
Konum: istanbul
İletişim:

trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen delphiibo »

Arkadaşlar trilyonlarca basamağı çarpan bi kod var mı???
mesela
99999999999999999999999999999999999999999999999999 99999999999999999999999999999999999999999999999999 999999999999999999999999999999999999999 *9999999999999999999999999999999999999999999999999 99999999999999999999999999999999999999999999999999 9999999999999999999999999999999999999999 gibi.

normalde delphide belli limitler var, benim indirdiğim hesap makinesi tarzında programlarda da limitler var.

Demek istediğim bu tip sayıları çarpmak için yapılan bişi var mı? google hesap makinesi bile yanlış çarpıyor sayıyı. Windows hesap makinesi limiti doluyor.

Şimdi ben bi program yazdımda. Trilyonlarca basamağı çarpan toplayan vs. Hızlı bir şekilde hesaplıyor.
Acaba işe yarar mı???
Telif hakkı almaya gerek var mı???

Görüşlerinizi Bekliyorum...

Teşekkürler....
Onun tek dostu Allah
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen conari »

nerede gerek olabilir bu kadar sayının çarpımına..
Türk Liramızdan 6 sıfır atılmasaydı belki? :mrgreen:

Tübitaka göre 450 basamaklı sayı. bundan ilerisi yok.

99999999999999999999999999999999999999999999999999 99
99999999999999999999999999999999999999999999999999 999
99999999999999999999999999999999999999999999999999 999
99999999999999999999999999999999999999999999999999 999
99999999999999999999999999999999999999999999999999 999
99999999999999999999999999999999999999999999999999 999
99999999999999999999999999999999999999999999999999 999
99999999999999999999999999999999999999999999999999 999
999999999999999999999999999

okunuşu
dokuz yüz doksan dokuz senoktokatragintilyon dokuz yüz doksan dokuz senseptenkatragintilyon
dokuz yüz doksan dokuz sensexkatragintilyon dokuz yüz doksan dokuz senkenkatragintilyon
dokuz yüz doksan dokuz senkattuorkatragintilyon dokuz yüz doksan dokuz sentrekatragintilyon
dokuz yüz doksan dokuz sendokatragintilyon dokuz yüz doksan dokuz senunkatragintilyon
dokuz yüz doksan dokuz senkatragintilyon dokuz yüz doksan dokuz sennovemtrigintilyon
dokuz yüz doksan dokuz senoktotrigintilyon dokuz yüz doksan dokuz senseptentrigintilyon
dokuz yüz doksan dokuz sensextrigintilyon dokuz yüz doksan dokuz senkentrigintilyon
dokuz yüz doksan dokuz senkattuortrigintilyon dokuz yüz doksan dokuz sentretrigintilyon
dokuz yüz doksan dokuz sendotrigintilyon dokuz yüz doksan dokuz senuntrigintilyon
dokuz yüz doksan dokuz sentrigintilyon dokuz yüz doksan dokuz sennovemvigintilyon
dokuz yüz doksan dokuz senoktovigintilyon dokuz yüz doksan dokuz senseptenvigintilyon
dokuz yüz doksan dokuz sensexvigintilyon dokuz yüz doksan dokuz senkenvigintilyon
dokuz yüz doksan dokuz senkattuorvigintilyon dokuz yüz doksan dokuz sentrevigintilyon
dokuz yüz doksan dokuz sendovigintilyon dokuz yüz doksan dokuz senunvigintilyon
dokuz yüz doksan dokuz senvigintilyon dokuz yüz doksan dokuz sennovemdesilyon
dokuz yüz doksan dokuz senoktodesilyon dokuz yüz doksan dokuz senseptendesilyon
dokuz yüz doksan dokuz sensexdesilyon dokuz yüz doksan dokuz senkendesilyon
dokuz yüz doksan dokuz senkattuordesilyon dokuz yüz doksan dokuz sentredesilyon
dokuz yüz doksan dokuz sendodesilyon dokuz yüz doksan dokuz senundesilyon
dokuz yüz doksan dokuz sendesilyon dokuz yüz doksan dokuz sennovemtilyon
dokuz yüz doksan dokuz senoktotilyon dokuz yüz doksan dokuz senseptentilyon
dokuz yüz doksan dokuz sensextilyon dokuz yüz doksan dokuz senkentilyon
dokuz yüz doksan dokuz senkattuortilyon dokuz yüz doksan dokuz sentretilyon
dokuz yüz doksan dokuz sendotilyon dokuz yüz doksan dokuz senuntilyon
dokuz yüz doksan dokuz sentilyon dokuz yüz doksan dokuz novemnonagintilyon
dokuz yüz doksan dokuz oktononagintilyon dokuz yüz doksan dokuz septennonagintilyon
dokuz yüz doksan dokuz sexnonagintilyon dokuz yüz doksan dokuz kennonagintilyon
dokuz yüz doksan dokuz kattuornonagintilyon dokuz yüz doksan dokuz trenonagintilyon
dokuz yüz doksan dokuz dononagintilyon dokuz yüz doksan dokuz unnonagintilyon
dokuz yüz doksan dokuz nonagintilyon dokuz yüz doksan dokuz novemoktogintilyon
dokuz yüz doksan dokuz oktooktogintilyon dokuz yüz doksan dokuz septenoktogintilyon
dokuz yüz doksan dokuz sexoktogintilyon dokuz yüz doksan dokuz kenoktogintilyon
dokuz yüz doksan dokuz kattuoroktogintilyon dokuz yüz doksan dokuz treoktogintilyon
dokuz yüz doksan dokuz dooktogintilyon dokuz yüz doksan dokuz unoktogintilyon
dokuz yüz doksan dokuz oktogintilyon dokuz yüz doksan dokuz novemseptuagintilyon
dokuz yüz doksan dokuz oktoseptuagintilyon dokuz yüz doksan dokuz septenseptuagintilyon
dokuz yüz doksan dokuz sexseptuagintilyon dokuz yüz doksan dokuz kenseptuagintilyon
dokuz yüz doksan dokuz kattuorseptuagintilyon dokuz yüz doksan dokuz treseptuagintilyon
dokuz yüz doksan dokuz doseptuagintilyon dokuz yüz doksan dokuz unseptuagintilyon
dokuz yüz doksan dokuz septuagintilyon dokuz yüz doksan dokuz novemsexagintilyon
dokuz yüz doksan dokuz oktosexagintilyon dokuz yüz doksan dokuz septensexagintilyon
dokuz yüz doksan dokuz sexsexagintilyon dokuz yüz doksan dokuz kensexagintilyon
dokuz yüz doksan dokuz kattuorsexagintilyon dokuz yüz doksan dokuz tresexagintilyon
dokuz yüz doksan dokuz dosexagintilyon dokuz yüz doksan dokuz unsexagintilyon
dokuz yüz doksan dokuz sexagintilyon dokuz yüz doksan dokuz novemkenquagintilyon
dokuz yüz doksan dokuz oktokenquagintilyon dokuz yüz doksan dokuz septenkenquagintilyon
dokuz yüz doksan dokuz sexkenquagintilyon dokuz yüz doksan dokuz kenkenquagintilyon
dokuz yüz doksan dokuz kattuorkenquagintilyon dokuz yüz doksan dokuz trekenquagintilyon
dokuz yüz doksan dokuz dokenquagintilyon dokuz yüz doksan dokuz unkenquagintilyon
dokuz yüz doksan dokuz kenquagintilyon dokuz yüz doksan dokuz novemkatragintilyon
dokuz yüz doksan dokuz oktokatragintilyon dokuz yüz doksan dokuz septenkatragintilyon
dokuz yüz doksan dokuz sexkatragintilyon dokuz yüz doksan dokuz kenkatragintilyon
dokuz yüz doksan dokuz kattuorkatragintilyon dokuz yüz doksan dokuz trekatragintilyon
dokuz yüz doksan dokuz dokatragintilyon dokuz yüz doksan dokuz unkatragintilyon
dokuz yüz doksan dokuz katragintilyon dokuz yüz doksan dokuz novemtrigintilyon
dokuz yüz doksan dokuz oktotrigintilyon dokuz yüz doksan dokuz septentrigintilyon
dokuz yüz doksan dokuz sextrigintilyon dokuz yüz doksan dokuz kentrigintilyon
dokuz yüz doksan dokuz kattuortrigintilyon dokuz yüz doksan dokuz tretrigintilyon
dokuz yüz doksan dokuz dotrigintilyon dokuz yüz doksan dokuz untrigintilyon
dokuz yüz doksan dokuz trigintilyon dokuz yüz doksan dokuz novemvigintilyon
dokuz yüz doksan dokuz oktovigintilyon dokuz yüz doksan dokuz septenvigintilyon
dokuz yüz doksan dokuz sexvigintilyon dokuz yüz doksan dokuz kenvigintilyon
dokuz yüz doksan dokuz kattuorvigintilyon dokuz yüz doksan dokuz trevigintilyon
dokuz yüz doksan dokuz dovigintilyon dokuz yüz doksan dokuz unvigintilyon
dokuz yüz doksan dokuz vigintilyon dokuz yüz doksan dokuz novemdesilyon
dokuz yüz doksan dokuz oktodesilyon dokuz yüz doksan dokuz septendesilyon
dokuz yüz doksan dokuz sexdesilyon dokuz yüz doksan dokuz kendesilyon
dokuz yüz doksan dokuz kattuordesilyon dokuz yüz doksan dokuz tredesilyon
dokuz yüz doksan dokuz dodesilyon dokuz yüz doksan dokuz undesilyon
dokuz yüz doksan dokuz desilyon dokuz yüz doksan dokuz nonilyon
dokuz yüz doksan dokuz oktilyon dokuz yüz doksan dokuz septilyon
dokuz yüz doksan dokuz seksilyon dokuz yüz doksan dokuz kentilyon
dokuz yüz doksan dokuz katrilyon dokuz yüz doksan dokuz trilyon
dokuz yüz doksan dokuz milyar dokuz yüz doksan dokuz milyon
dokuz yüz doksan dokuz bin dokuz yüz doksan dokuz
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
qamyoncu
Üye
Mesajlar: 266
Kayıt: 12 Tem 2008 04:30

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen qamyoncu »

Aynı hassaslığı virgülden sonraki trilyon basamakta da sağlayacak bir yöntem belki kullanışlı olabilir ama ticari açıdan bi değerinin olmadığını sanıyorum :)
Batuhan TAŞDÖVEN
'Yükseldikçe küçülen bir uçurtma..'
Kullanıcı avatarı
delphiibo
Üye
Mesajlar: 72
Kayıt: 27 Eki 2005 04:55
Konum: istanbul
İletişim:

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen delphiibo »

Ya acamım ticari değil. Sadece yazılım camiasına katkı.

işlemci kullanımı minumum düzeyde ve hızı da yüksek. Ne gerek var diyor bazı arkadaşlar. Bence nasa veya diğer kurumlar için uygun olabilir diye düşünüyorum.
Onun tek dostu Allah
emin_as
Üye
Mesajlar: 559
Kayıt: 01 Eki 2008 10:05
Konum: izmir
İletişim:

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen emin_as »

Bu konuda sayısız program var ve 70 lerden beri her tür bilgisayar böylesi hesapları yapabiliyor.

http://en.wikipedia.org/wiki/Arbitrary- ... arithmetic

Genelde profesyonel hesaplamalar için matlab tercih edilir.
http://en.wikipedia.org/wiki/MATLAB
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen csunguray »

Aşağıda string olarak verilen 2 sayının çarpımını string olarak dönderen bir fonksiyon var. Sayıların uzunluğunu 255 haneye kadar verebilirsiniz. String değişkenleri WideString olarak değiştirirseniz bu sınırlamayı da kaldırabilirsiniz.

Kaynak:
http://delphi.cjcsoft.net/viewthread.php?tid=17302

Kod: Tümünü seç

function Multiple (A,B:string) : string;
Var
  Sign, SgnA, SgnB, N : shortint;
  I, J, D, Transf     : byte;
  N1, N2, Temp, S     : string;
Begin
  SgnA:=Sgn (A);
  SgnB:=Sgn (B);
  Sign:=SgnA*SgnB;
  If SgnA=-1 then
    N1:=Neg (A)
            else
    N1:=A;
  If SgnB=-1 then
   N2:=Neg (B)
            else
   N2:=B;
  If Sign=0 then
   Temp:='0'
           else
   Begin
     N1:=FormatLongNumber (N1,0);
     N2:=FormatLongNumber (N2,0);
     Temp:='0';
     For J:=Length (N2) downto 1 do
       Begin
         D:=Dgt (N2 [J]);
         Transf:=0;
         S:='';
         For I:=1 to Length (N2)-J do
           S:=S+'0';
         For I:=Length (N1) downto 1 do
           Begin
             N:=Transf+D*Dgt (N1 [I]);
             If Length (S)=255 then
               LongNumErrorFlag:=True;
             S:=Chr (N mod 10+48)+S;
             Transf:=N div 10
           End;
         If Transf>0 then
           If Length (S)=255 then
             LongNumErrorFlag:=True
                             else
             S:=Chr (Transf+48)+S;
         Temp:=Add (Temp,S)
       End
   End;
  If Sign=-1 then
   Temp:=Neg (Temp);
  Temp:=FormatLongNumber (Temp,0);
  Multiple:=Temp
End;
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
Kullanıcı avatarı
delphiibo
Üye
Mesajlar: 72
Kayıt: 27 Eki 2005 04:55
Konum: istanbul
İletişim:

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen delphiibo »

csunguray arkadaşın verdiği linkteki kodlar çok karışık. Ben bi kaç satırlık bişi yapmıştım.

Neyse arkadaşlar Hepinize teşekkürler. Amacım zaten çarpma yapmak değildi. Sıkıştırma programı yazıyorum bi tane. Onun için böyle bişi yapma gereği hissettim.
Onun tek dostu Allah
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen csunguray »

Bizimle dalga geçiyorsun yani. Biz de salak salak arkadaşın işi çözülsün veya merağı geçsin diye araştırıp cevap veriyoruz. Bravo valla.
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen conari »

delphiibo yazdı:Ya acamım ticari değil. Sadece yazılım camiasına katkı.

işlemci kullanımı minumum düzeyde ve hızı da yüksek. Ne gerek var diyor bazı arkadaşlar. Bence nasa veya diğer kurumlar için uygun olabilir diye düşünüyorum.
Ticari değil de telif hakkı ?? :mrgreen:
delphiibo yazdı:Telif hakkı almaya gerek var mı???
delphiibo yazdı:csunguray arkadaşın verdiği linkteki kodlar çok karışık. Ben bi kaç satırlık bişi yapmıştım.
Bu bir kaç satırlık kodu nasadakiler yazamıyormu?

Sonuç....... :alsana:
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
delphiibo
Üye
Mesajlar: 72
Kayıt: 27 Eki 2005 04:55
Konum: istanbul
İletişim:

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen delphiibo »

Arkadaşlar. Kendimi Einstein ilan etmedim. Ama bazı arkadaşlar bizi kırıyorlar. Biz burda bi kod bulup sizinle paylaşıyoruz. Sadece görüş almak istiyoruz. Bilmediğimizden soruyoruz. Belki işe yarayacak bişiler bulduk diye düşündük. Nasa bulmuşsa ne yapalım. Bizim bulmamızda kötümü oluyor. telif hakkı almak para kazanmak demek değil. Zaten ortada kazandıracak bişi de yok. Sadece kod kısmının ismimiz üzerine geçmesini istedik. Herhalde son derece doğal hakkımız. Burdan bizi eleştiren arkadaşlar ; lütfen tartışma ortamı yaratmayın. isteyen siyaset meydanına gitsin...
Onun tek dostu Allah
akdatilla
Üye
Mesajlar: 292
Kayıt: 02 Nis 2006 06:04
Konum: Antalya

Re: trilyonlarca basamağı çarpan bi kod var mı???

Mesaj gönderen akdatilla »

merhaba
bundan yaklaşık 12 yıl once ben de senin gibi bir düşünceyle basic ya da pascal gibi bir dille deneme programı yazmıştım.
O zaman ben de boyle bişey birilerine gerekli olurmu acaba diye düşündum ama fazla uzerinede düşmedim. Kısa bir sürede de unuttum gitti.
Bence sen de unut gitsin :)
Cevapla