Menentukan Sisa
Apakah mungkin menghitung sisa dari dua nilai yang diberikan hanya dengan penjumlahan, pengurangan, perkalian, dan pembagian? Apakah ada algoritma atau formula jika memungkinkan?
Misalnya, kita memiliki dua nilai: 100dan 30. Jika kita membagi 100oleh 30, kita mendapatkan 3.333.... Tetapi adakah cara untuk menjangkau 0.333...(tanpa mengetahui dari awal berapa banyak keutuhan yang disertakan)?
Untuk mengilustrasikan lebih lanjut apa yang saya maksud, dan berpegang pada contoh di atas, salah satu cara untuk menemukan sisanya adalah rumus berikut: 100 / 30 / 10 * 30 = 0.333...TAPI ini jelas tidak berfungsi untuk dua angka yang diberikan.
Beberapa contoh lagi (Nilai dalam tanda kurung adalah nilai yang saya cari):
100 / 40 = 2.5 (0.5) 450 / 50 = 9 (0) 11 / 4 = 2.75 (75)
Maaf, jika pertanyaan ini kurang jelas. Ini didasarkan pada tantangan pemrograman yang saya temui. Saya hanya ingin menggunakan CSS untuk menghitung sisa tinggi baris teks, memberikan offset vertikal tertentu pada teks. Misalnya, tinggi jendela mungkin 100, sedangkan tinggi garis adalah 30. Tetapi CSS tidak memiliki fungsi untuk dengan mudah menentukan sisanya, dan saya tidak dapat menggunakan loop atau rekursi (yaitu 100 - 30 - 30 - 30 - 30 < 0), atau bersyarat (yaitu jika N< 0, lakukan ...).
Matematika saya buruk. Tapi saya bertanya-tanya apakah itu mungkin secara matematis?
Jawaban
Saya tidak tahu apakah mungkin untuk membuat "sisa dalam pembagian integral" di CSS menggunakan "berpikir di luar kotak", tetapi secara matematis hal itu tidak dapat dilakukan hanya dengan penambahan, pengurangan, perkalian dan pembagian .
Yakni, sebuah fungsi $f(x,y)$terdiri dari penjumlahan, pengurangan, perkalian dan pembagian adalah fungsi rasional (hasil bagi dari dua polinomial nyata dalam dua variabel$x$ dan $y$).
Sekarang anggap saja $\text{remainder}(x,y)=\frac{P(x,y)}{Q(x,y)}$ dimana $P$ dan $Q$adalah polinomial. Memperbaiki$y=2$ dan kemudian kami akan melakukannya $\text{remainder}(x,2)=\frac{P(x,2)}{Q(x,2)}=\frac{p(x)}{q(x)}$ dimana $p(x)=P(x,2)$ dan $q(x)=Q(x,2)$- polinomial dalam satu variabel. Mengetahui bahwa:
$$\frac{p(n)}{q(n)}=0$$
untuk setiap genap $n$, Kita dapat menyimpulkan bahwa $p=0$(nol polinomial). Namun, hal ini kemudian tidak sesuai dengan ketentuan lainnya, yaitu:
$$\frac{p(n)}{q(n)}=1$$
untuk setiap ganjil $n$.
Catatan : Saya dapat melihat spesifikasi CSS untuk$\text{calc}()$mengatakan bahwa, pada akhirnya, ketika hasil kalkulasi CSS ditetapkan ke sebuah atribut, hasil tersebut mungkin dibulatkan jika atribut itu membutuhkan bilangan bulat. Pembulatan mirip dengan pemotongan ($\text{round}(x)=\text{ceil}(x+0.5)$) dan pemotongan dapat digunakan untuk pembagian integral ($\text{remainder}(x, y)=x-y\times\text{ceil}(x/y)$) jadi mungkin ini semua bisa digabungkan menjadi satu - tetapi saya sendiri tidak tahu bagaimana melakukannya, karena saya bukan ahli CSS ...
Anda mencari bagian pecahan dari sebuah bilangan.
Untuk memanfaatkan ini, tentukan fungsi dari dua variabel yang memberikan satu keluaran: $$t=f(x,y)=\frac{x}y-\left\lfloor\frac{x}y\right\rfloor.$$
Menggunakan contoh Anda di atas, kami memiliki yang berikut ini: \begin{align} f(100,30)&=\frac{100}{30}-\left\lfloor\frac{100}{30}\right\rfloor=\frac{10}3-3=\frac13\\ f(100,40)&=\frac{100}{40}-\left\lfloor\frac{100}{40}\right\rfloor=\frac52-2=\frac12\\ f(450,50)&=\frac{450}{50}-\left\lfloor\frac{450}{50}\right\rfloor=9-9=0\\ f(11,4)&=\frac{11}{4}-\left\lfloor\frac{11}{4}\right\rfloor=\frac{11}{4}-2=\frac34 \end{align}