Mathcenter Forum  

Go Back   Mathcenter Forum > คณิตศาสตร์ทั่วไป > ปัญหาคณิตศาสตร์ทั่วไป
สมัครสมาชิก คู่มือการใช้ รายชื่อสมาชิก ปฏิทิน ค้นหา ข้อความวันนี้ ทำเครื่องหมายอ่านทุกห้องแล้ว

ตั้งหัวข้อใหม่ Reply
 
เครื่องมือของหัวข้อ ค้นหาในหัวข้อนี้
  #1  
Old 27 มิถุนายน 2019, 20:52
ออฟ ออฟ ไม่อยู่ในระบบ
สมาชิกใหม่
 
วันที่สมัครสมาชิก: 26 มิถุนายน 2019
ข้อความ: 4
ออฟ is on a distinguished road
Default ช่วยหาวิธีคำนวณหาค่า X หน่อยครับ มืดแปดด้าน

(x Mod (256 * 256)) + ((x / (256 * 256) Mod 256) * 100000) = 15121591
ด้านบนเป็นสมการ ที่ทาง บริษัทที่จีนให้มาเพื่อ เข้ารหัส ที่นี้ถ้าเราป้อนในโปรแกรมเข้าไปด้วยค่า 9917527 แทนค่า X ค่าในสูตร
จะได้คำตอบ 15121591 แทนค่า
( 9917527 Mod (256 * 256)) + (ปัดเศษลง( 9917527 / (256 * 256) Mod 256) * 100000) = 15121591

ที่นี้ในมางกลับกันถ้าผมมีแค่ค่าคำตอบ 15121591 สามารถคิดย้อนกลับหาค่า X ได้ไหมครับ หรือใกล้เคียงที่สุด ค่า x จะต้องได้ 9917527
ขอบคุณครับ

01 กรกฎาคม 2019 09:13 : ข้อความนี้ถูกแก้ไขแล้ว 3 ครั้ง, ครั้งล่าสุดโดยคุณ ออฟ
ตอบพร้อมอ้างอิงข้อความนี้
  #2  
Old 01 กรกฎาคม 2019, 00:37
NaPrai's Avatar
NaPrai NaPrai ไม่อยู่ในระบบ
จอมยุทธ์หน้าหยก
 
วันที่สมัครสมาชิก: 02 กุมภาพันธ์ 2017
ข้อความ: 174
NaPrai is on a distinguished road
Default

ยังไม่เข้าใจโจทย์อะครับ ช่วยอธิบายเพิ่มหน่อยได้ไหมครับ
ตอบพร้อมอ้างอิงข้อความนี้
  #3  
Old 01 กรกฎาคม 2019, 09:13
ออฟ ออฟ ไม่อยู่ในระบบ
สมาชิกใหม่
 
วันที่สมัครสมาชิก: 26 มิถุนายน 2019
ข้อความ: 4
ออฟ is on a distinguished road
Default

(x Mod (256 * 256)) + ((x / (256 * 256) Mod 256) * 100000) = 15121591
ด้านบนเป็นสมการ ที่ทาง บริษัทที่จีนให้มาเพื่อ เข้ารหัส ที่นี้ถ้าเราป้อนในโปรแกรมเข้าไปด้วยค่า 9917527 แทนค่า X ค่าในสูตร
จะได้คำตอบ 15121591 แทนค่า
( 9917527 Mod (256 * 256)) + (ปัดเศษลง( 9917527 / (256 * 256) Mod 256) * 100000) = 15121591

ที่นี้ในมางกลับกันถ้าผมมีแค่ค่าคำตอบ 15121591 สามารถคิดย้อนกลับหาค่า X ได้ไหมครับ หรือใกล้เคียงที่สุด ค่า x จะต้องได้ 9917527
ขอบคุณครับ
ตอบพร้อมอ้างอิงข้อความนี้
  #4  
Old 01 กรกฎาคม 2019, 18:31
Amankris's Avatar
Amankris Amankris ไม่อยู่ในระบบ
กระบี่ธรรมชาติ
 
วันที่สมัครสมาชิก: 13 มกราคม 2007
ข้อความ: 2,492
Amankris is on a distinguished road
Default

อ้างอิง:
ให้ $f(n)$ คือเศษจากการหาร $n$ ด้วย $256^2$
และ $g(n)$ คือเศษจากการหาร $\left\lfloor\dfrac{n}{256^2}\right\rfloor$ ด้วย $256$
จงหาจำนวนเต็ม $x$ ที่ $f(x)+100000g(x)=15121591$
ใช่แบบนี้ไหมครับ
ไม่แน่ใจว่าต้องหาทั้งหมดด้วยรึเปล่า

01 กรกฎาคม 2019 18:33 : ข้อความนี้ถูกแก้ไขแล้ว 2 ครั้ง, ครั้งล่าสุดโดยคุณ Amankris
ตอบพร้อมอ้างอิงข้อความนี้
  #5  
Old 03 กรกฎาคม 2019, 16:44
ออฟ ออฟ ไม่อยู่ในระบบ
สมาชิกใหม่
 
วันที่สมัครสมาชิก: 26 มิถุนายน 2019
ข้อความ: 4
ออฟ is on a distinguished road
Default

อ้างอิง:
ข้อความเดิมเขียนโดยคุณ Amankris View Post
ใช่แบบนี้ไหมครับ
ไม่แน่ใจว่าต้องหาทั้งหมดด้วยรึเปล่า
แทนค่าได้ครับ ว่าแต่ขอตัวอย่าง แก้สมการให้ดูหน่อยครับ ถ้าคำตอบ= 5355507 x จะได้ค่าเท่าไรครับ
ตอบพร้อมอ้างอิงข้อความนี้
  #6  
Old 15 กรกฎาคม 2019, 20:41
ohmohm ohmohm ไม่อยู่ในระบบ
หัดเดินลมปราณ
 
วันที่สมัครสมาชิก: 14 กันยายน 2013
ข้อความ: 49
ohmohm is on a distinguished road
Default

ดูๆ ไป นึกถึงเลขฐานสองหรือฐานสิบหกในคอมพิวเตอร์ โดย $256 = 2^8$ ก็คือ 8 bit หรือเลขฐานสิบหก 2 หลัก (bit = binary digit จำนวนหลักของเลขฐานสอง) ถ้า $256*256 = 2^8*2^8 = 2^{16}$ ก็คือ 16 บิต หรือเลขฐานสิบหก 4 หลัก

ผมมองว่า (x Mod (256 * 256)) คือการเอาเฉพาะ 16 บิตด้านขวาสุดของ x (ถ้าเป็นเลขฐานสิบหก ก็ 4 หลัก)

ส่วน x / (256 * 256) คือการเอา x มาเลื่อน (shift) บิตไปทางขวา 16 บิต
จากนั้น Mod 256 อีกครั้ง คือการเอาเฉพาะ 8 บิตขวาสุด (ถ้าเป็นเลขฐานสิบหก ก็ 2 หลัก แสดงว่า x เป็นเลขฐานสิบหก จำนวน 6 หลัก)
จากนั้นเอามาคูณ 100000 (เลขฐานสิบ)

15121591 = 21591 + 15100000

21591 เมื่อแปลงเป็นเลขฐานสิบหก ได้ 0x5457
ส่วน 15100000 หาร 100000 ได้ 151 แปลงเป็นเลขฐานสิบหก ได้ 0x97
เอามาต่อกันได้ = 0x975457 = 9917527

ขออภัยถ้าใช้ภาษาคอมพิวเตอร์เยอะไปหน่อย

เพิ่มๆ ถ้าคำตอบ= 5355507

53=0x35
55507=0xD8D3

คำตอบคือ 0x35D8D3 = 3528915

15 กรกฎาคม 2019 20:47 : ข้อความนี้ถูกแก้ไขแล้ว 1 ครั้ง, ครั้งล่าสุดโดยคุณ ohmohm
ตอบพร้อมอ้างอิงข้อความนี้
  #7  
Old 24 กรกฎาคม 2019, 08:20
ออฟ ออฟ ไม่อยู่ในระบบ
สมาชิกใหม่
 
วันที่สมัครสมาชิก: 26 มิถุนายน 2019
ข้อความ: 4
ออฟ is on a distinguished road
Default

อ้างอิง:
ข้อความเดิมเขียนโดยคุณ ohmohm View Post
ดูๆ ไป นึกถึงเลขฐานสองหรือฐานสิบหกในคอมพิวเตอร์ โดย $256 = 2^8$ ก็คือ 8 bit หรือเลขฐานสิบหก 2 หลัก (bit = binary digit จำนวนหลักของเลขฐานสอง) ถ้า $256*256 = 2^8*2^8 = 2^{16}$ ก็คือ 16 บิต หรือเลขฐานสิบหก 4 หลัก

ผมมองว่า (x Mod (256 * 256)) คือการเอาเฉพาะ 16 บิตด้านขวาสุดของ x (ถ้าเป็นเลขฐานสิบหก ก็ 4 หลัก)

ส่วน x / (256 * 256) คือการเอา x มาเลื่อน (shift) บิตไปทางขวา 16 บิต
จากนั้น Mod 256 อีกครั้ง คือการเอาเฉพาะ 8 บิตขวาสุด (ถ้าเป็นเลขฐานสิบหก ก็ 2 หลัก แสดงว่า x เป็นเลขฐานสิบหก จำนวน 6 หลัก)
จากนั้นเอามาคูณ 100000 (เลขฐานสิบ)

15121591 = 21591 + 15100000

21591 เมื่อแปลงเป็นเลขฐานสิบหก ได้ 0x5457
ส่วน 15100000 หาร 100000 ได้ 151 แปลงเป็นเลขฐานสิบหก ได้ 0x97
เอามาต่อกันได้ = 0x975457 = 9917527

ขออภัยถ้าใช้ภาษาคอมพิวเตอร์เยอะไปหน่อย

เพิ่มๆ ถ้าคำตอบ= 5355507

53=0x35
55507=0xD8D3

คำตอบคือ 0x35D8D3 = 3528915
ใช่เลยครับวิธีนี้ สวรรค์เลยครับ ขอบคุณมากๆครับ ตอนนี้ผมใช้วิธีหาค่าด้วยวิธี ป้อนค่าแบบจนกว่าจะตรงกับคำตอบ โดยใช้การวนลูปจนเจอคำตอบ หารออกที่ละครึ่ง ขอบคุณมากจริงๆครับ มีอีกหลายที่ ที่รอคำตอบนี้ครับ
ตอบพร้อมอ้างอิงข้อความนี้
ตั้งหัวข้อใหม่ Reply


เครื่องมือของหัวข้อ ค้นหาในหัวข้อนี้
ค้นหาในหัวข้อนี้:

ค้นหาขั้นสูง

กฎการส่งข้อความ
คุณ ไม่สามารถ ตั้งหัวข้อใหม่ได้
คุณ ไม่สามารถ ตอบหัวข้อได้
คุณ ไม่สามารถ แนบไฟล์และเอกสารได้
คุณ ไม่สามารถ แก้ไขข้อความของคุณเองได้

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
ทางลัดสู่ห้อง


เวลาที่แสดงทั้งหมด เป็นเวลาที่ประเทศไทย (GMT +7) ขณะนี้เป็นเวลา 10:04


Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Modified by Jetsada Karnpracha