10 saniyede 100 milyon basamaklı sayıları çarpmak
başlık "azraili bekleyen adam" tarafından 17.11.2024 14:03 tarihinde açılmıştır.
1.
5 basamağın üstünde ben iptal oldum. bu ne la! dahası 100 milyon basamaklı sayıyı 10 saniyede, 1 milyar basamaklı sayıları 1 dk da hesaplayıp terminal ekranına yazdırıyor dijital beyin cpu.
streamable.com/u1vo9q
böylesine basit bir program nasıl oluyor da 10-100 milyon basamaklı 2 sayıyı üretip, çarpım değerini hesaplayıp ekrana yazdırıyor, insan beyni tarafından kavranması olanaksız bir hesaplama yeteneği!
#include <stdio.h>
#include <gmp.h>
#include <stdlib.h>
#include <time.h>
int main() {
// gmp değişkenlerini tanımla
mpz_t num1, num2, result;
mpz_init(num1);
mpz_init(num2);
mpz_init(result);
// rastgele sayı üretimi için bir durum oluştur
gmp_randstate_t state;
gmp_randinit_mt(state); // mersenne twister yöntemi
gmp_randseed_ui(state, time(null)); // zamanı seed olarak kullan
// 100 basamaklı iki rastgele sayı üret
mpz_urandomb(num1, state, 10000000 * 3.32); // 3.32 yaklaşık olarak log10(2)'dir
mpz_urandomb(num2, state, 10000000 * 3.32);
// iki sayıyı çarp
mpz_mul(result, num1, num2);
// sonuçları yazdır
gmp_printf("sayı 1: %zd\n", num1);
gmp_printf("sayı 2: %zd\n", num2);
gmp_printf("çarpım: %zd\n", result);
// belleği temizle
mpz_clear(num1);
mpz_clear(num2);
mpz_clear(result);
gmp_randclear(state);
return 0;
}
streamable.com/u1vo9q
böylesine basit bir program nasıl oluyor da 10-100 milyon basamaklı 2 sayıyı üretip, çarpım değerini hesaplayıp ekrana yazdırıyor, insan beyni tarafından kavranması olanaksız bir hesaplama yeteneği!
#include <stdio.h>
#include <gmp.h>
#include <stdlib.h>
#include <time.h>
int main() {
// gmp değişkenlerini tanımla
mpz_t num1, num2, result;
mpz_init(num1);
mpz_init(num2);
mpz_init(result);
// rastgele sayı üretimi için bir durum oluştur
gmp_randstate_t state;
gmp_randinit_mt(state); // mersenne twister yöntemi
gmp_randseed_ui(state, time(null)); // zamanı seed olarak kullan
// 100 basamaklı iki rastgele sayı üret
mpz_urandomb(num1, state, 10000000 * 3.32); // 3.32 yaklaşık olarak log10(2)'dir
mpz_urandomb(num2, state, 10000000 * 3.32);
// iki sayıyı çarp
mpz_mul(result, num1, num2);
// sonuçları yazdır
gmp_printf("sayı 1: %zd\n", num1);
gmp_printf("sayı 2: %zd\n", num2);
gmp_printf("çarpım: %zd\n", result);
// belleği temizle
mpz_clear(num1);
mpz_clear(num2);
mpz_clear(result);
gmp_randclear(state);
return 0;
}
devamını gör...
2.
yapabiliyorum mesela direkt deneyelim yemin ediyorum hesap makinesine bakmicam. he 100 milyon basamakli diyomus yok oyle degil de, yine de yapicam 9 haneli sayiyi carpicam.
789.989.474 carpi 362.947.393
soyluyorum
23 trilyon 687 milyon 675 bin 824
dogru mu degil mi bilmiyorum. evet.
789.989.474 carpi 362.947.393
soyluyorum
23 trilyon 687 milyon 675 bin 824
dogru mu degil mi bilmiyorum. evet.
devamını gör...
3.
durun daha bu birşey değil, gelecekte yapay zeka 100 milyon sayfalı orjinal bir romanı bir saniyede yazmaya başlayınca asıl şoku yaşayacaksınız dediğim işlemdir.
devamını gör...