คำถามติดแท็ก fractal

เศษส่วนเป็นรูปร่างที่คล้ายตัวเองและมักจะมีรายละเอียดค่อนข้างมาก ชุดเศษส่วนที่รู้จักกันดี ได้แก่ ชุด Mandelbrot ชุด Julia และชุด Phoenix ภาพวาดเศษส่วนเหมือนต้นไม้ก็มีอยู่ทั่วไปเช่นกัน

4
ไดเรกทอรีต้นไม้ H
โปรแกรมเมอร์มักหมกมุ่นอยู่กับการวาดเศษส่วน ฉันคิดว่าเราต้องการสื่อที่ใช้คอมพิวเตอร์เครื่องใหม่ ต้นไม้ Hเป็นชนิดที่ค่อนข้างง่ายของเศษส่วนที่ทำจากเส้นแนวนอนและแนวตั้ง ที่นี่มันอยู่ที่การทำซ้ำสิบ ( มารยาท Wikipedia ): ตอนนี้ลองนึกภาพแต่ละบรรทัดในรูปภาพเป็นไดเรกทอรี (โฟลเดอร์) ในระบบไฟล์คอมพิวเตอร์มาตรฐาน ทั้งหมดยกเว้นเส้นที่เล็กที่สุดตัดกันสองบรรทัดเล็กกว่าตัวพวกมันเอง สองเส้นเล็ก ๆ เหล่านี้เป็นไดเรกทอรีย่อยของบรรทัดที่ใหญ่กว่า ดังนั้นเส้นแนวนอนขนาดใหญ่ที่อยู่ตรงกลางจึงเป็นไดเรคทอรีหลักของเส้นแนวตั้งที่ใหญ่ที่สุดสองเส้นซึ่งอยู่ในแนวเดียวกันกับพ่อแม่ปู่ย่าตายาย ฯลฯ ของเส้นที่เหลือในภาพ ท้าทาย เขียนโปรแกรมที่รับจำนวนเต็มบวก N ผ่าน stdin หรือบรรทัดคำสั่ง (หรือตัวเลือกอื่นที่ใกล้เคียงที่สุด) และสร้างแผนผังไดเร็กทอรีที่สะท้อนการวนซ้ำ Nth ของเศษส่วนต้นไม้ H การทำซ้ำครั้งแรก (N = 1) เป็นเส้นแนวนอนเดียว ในแต่ละการวนซ้ำที่ตามมาชุดใหม่ของเส้นแนวตั้งหรือแนวนอนจะถูกเพิ่มเข้าไปที่ปลายของบรรทัดปัจจุบัน ดังนั้นสำหรับ N = 2 จะมีการเพิ่มเส้นแนวตั้งสองเส้น (ทำให้เป็นรูปร่าง H) สำหรับ N = 3 สี่เส้นแนวนอนจะถูกเพิ่มเข้าไปในนั้นเป็นต้น treeชื่อของไดเรกทอรีรากจะต้องเสมอ ชื่อของไดเรกทอรีย่อยจะต้องตรงกับทิศทางที่พวกเขาอยู่ในส่วนที่เกี่ยวกับเส้นพ่อแม่ของพวกเขาโดยใช้right, …

1
Recinerive Chains
Steiner Chains เป็นกลุ่มของ N วงกลมที่แต่ละวงสัมผัสกับวงกลมที่ไม่มีการตัดกัน 2 วงรวมถึงวงกลมก่อนหน้าและถัดไปของโซ่ดังที่เห็นในภาพด้านล่าง: ในการท้าทายนี้คุณจะเขียนโปรแกรม / ฟังก์ชั่นที่ดึงโซ่ Steiner วนซ้ำนั่นคือวงกลมของห่วงโซ่ที่กำหนดจะเป็นวงกลมฐานของโซ่ที่ซ้ำอีกครั้ง: ท้าทาย เขียนโปรแกรม / ฟังก์ชั่นที่ยอมรับขนาดภาพและรายการจำนวนเต็มเพื่อแสดงระดับของวงกลมในแต่ละการวนซ้ำที่ต่อเนื่องของโซ่และเอาท์พุทของภาพด้วยโซ่ Steiner แบบเรียกซ้ำ อินพุต โปรแกรม / ฟังก์ชั่นของคุณจะยอมรับ 2 ข้อโต้แย้ง: s - ความกว้างและความสูงของภาพ ls - รายการจำนวนเต็มบวกแสดงถึงจำนวนของวงกลมที่มีอยู่ในการวนซ้ำของโซ่ต่อเนื่องซึ่งเรียงลำดับจากเชนบนสุดไปยังเชนล่างสุด เอาท์พุต โปรแกรม / ฟังก์ชั่นของคุณจะแสดงภาพขนาดsx sแสดงห่วงโซ่สทิเนอร์ วงกลมฐานระดับบนสุดจะมีขนาดใหญ่เท่ากับภาพที่มีเส้นผ่านศูนย์กลางsอยู่กึ่งกลางภาพ เพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้น 2 ฐานวงกลมของห่วงโซ่สทิเนอร์จะเป็นศูนย์กลางกล่าวคือจุดศูนย์กลางของวงกลมพื้นฐาน 2 วงจะเหมือนกัน กำหนดรัศมีภายนอกRและจำนวนวงกลมในห่วงโซ่NสูตรสำหรับรัศมีภายในR'คือR' = (R-R*sin(pi/N))/(sin(pi/N)+1) วงกลมของโซ่เช่นเดียวกับวงกลมฐานด้านในจะเป็นวงกลมฐานด้านนอกของการทำซ้ำของโซ่ต่อไป ในขณะที่วนรอบวงกลมซ้ำคำสั่งของห่วงโซ่ถัดไปควรสอดคล้องกับค่าถัดไป ls ในขณะที่วนซ้ำผ่านวงในของห่วงโซ่การเรียงลำดับควรจะเหมือนกับลำดับของผู้ปกครอง …

3
สร้างลำดับไม้จิ้มฟัน
ลำดับไม้จิ้มฟันคืออะไร? ตามที่Wikipedia ในเรขาคณิตลำดับไม้จิ้มฟันเป็นลำดับของรูปแบบ 2 มิติซึ่งสามารถเกิดขึ้นได้โดยการเพิ่มส่วนของเส้น ("ไม้จิ้มฟัน") ซ้ำกับรูปแบบก่อนหน้าในลำดับ ขั้นตอนแรกของการออกแบบคือ "ไม้จิ้มฟัน" เดียวหรือส่วนของเส้น แต่ละขั้นตอนหลังจากครั้งแรกจะเกิดขึ้นโดยการออกแบบก่อนหน้านี้และสำหรับทุกปลายไม้จิ้มฟันสัมผัสวางไม้จิ้มฟันอีกเป็นศูนย์กลางที่มุมขวาในปลายนั้น กระบวนการนี้ส่งผลในรูปแบบของการเจริญเติบโตซึ่งจำนวนของส่วนที่ระยะ oscillates กับรูปแบบเศษส่วนระหว่าง 0.45n2 และ 0.67n2 ถ้า T (n) หมายถึงจำนวนของเซ็กเมนต์ที่ระยะ n ดังนั้นค่าของ n ที่ T (n) / n2 ใกล้เคียงกับค่าสูงสุดที่เกิดขึ้นเมื่อ n อยู่ใกล้กับกำลังสองเท่าในขณะที่ค่าที่ใกล้ที่สุด เกิดขึ้นใกล้กับตัวเลขที่มีค่าประมาณ 1.43 เท่าของกำลังสอง โครงสร้างของลำดับขั้นในลำดับไม้จิ้มฟันมักจะมีลักษณะคล้ายกับแฟร็กทัล T-square หรือการจัดเรียงของเซลล์ในหุ่นยนต์เคลื่อนที่ของ Ulam-Warburton ทุกพื้นที่ที่ล้อมรอบด้วยไม้จิ้มฟันในรูปแบบ แต่ไม่ใช่ตัวเองผ่านไม้จิ้มฟันต้องเป็นสี่เหลี่ยมหรือสี่เหลี่ยม มันได้รับการคาดเดาว่าทุกรูปสี่เหลี่ยมผืนผ้าที่เปิดอยู่ในรูปแบบไม้จิ้มฟัน (นั่นคือรูปสี่เหลี่ยมผืนผ้าที่ล้อมรอบอย่างสมบูรณ์ด้วยไม้จิ้มฟัน แต่ไม่มีไม้จิ้มฟันข้ามภายใน) มีความยาวด้านและพื้นที่ที่เป็นพลังของสองกับหนึ่งในความยาวด้าน อยู่ที่มากที่สุดสองคน งาน คุณต้องสร้างโปรแกรมหรือฟังก์ชั่นที่รับอินพุตจาก STDIN, อาร์กิวเมนต์ของฟังก์ชันหรืออาร์กิวเมนต์บรรทัดคำสั่งและสร้างเศษส่วน …

4
ต้นไม้ ASCII art H
ต้นไม้ Hเป็นโครงสร้างต้นไม้เศษส่วนที่เริ่มต้นด้วยบรรทัด ในการวนซ้ำแต่ละครั้ง T branch จะถูกเพิ่มในจุดปลายทั้งหมด ในการท้าทายนี้คุณต้องสร้างการแสดง ASCII ของระดับต้นไม้ H ทุกวินาที ระดับแรกมีเพียงสามตัวอักษรยัติภังค์ลบ: --- ระดับถัดไปถูกสร้างซ้ำ: สร้างเมทริกซ์ 2x2 ของสำเนาจากระดับก่อนหน้าโดยคั่นด้วยช่องว่างหรือบรรทัดสามบรรทัด เชื่อมต่อกึ่งกลางของสำเนาด้วยเส้นศิลปะ ASCII ในรูปแบบของ H. ใช้-สำหรับเส้นแนวนอน|สำหรับเส้นแนวตั้งและ+เมื่อใดก็ตามที่เส้นตรงเข้าหากัน ระดับที่สอง -+- -+- | | +-----+ | | -+- -+- ระดับที่สาม -+- -+- -+- -+- | | | | +--+--+ +--+--+ | | | | | | -+- …

1
กำหนดว่าพิกัดเชิงเหตุผลอยู่ในสามเหลี่ยม Sierpinski ที่ถูกต้องหรือไม่
Sierpinski สามเหลี่ยมคือชุดของจุดบนเครื่องบินซึ่งถูกสร้างโดยเริ่มต้นด้วยรูปสามเหลี่ยมเดียวและซ้ำ ๆ แยกสามเหลี่ยมทั้งหมดเป็นสี่สามเหลี่ยมสอดคล้องและลบสามเหลี่ยมศูนย์ สิทธิ Sierpinski สามเหลี่ยมมีมุมที่(0,0), (0,1)และ(1,0)และมีลักษณะเช่นนี้ คำจำกัดความที่เทียบเท่าของชุดนี้มีดังนี้: คะแนนในnการทำซ้ำ TH nของกระบวนการที่อธิบายข้างต้นทั้งหมด จุด(x,y)ด้วย0 <= x <= 1และ0 <= y <= 1เช่นว่าสำหรับจำนวนเต็มบวกทั้งหมดnที่nบิต TH ในการขยายตัวของฐาน x และ y 1ไม่ได้ทั้ง ปล่อย T = {(0,0),(1,0),(0,1)} อนุญาตfเป็นฟังก์ชันในชุดของจุด 2D ที่กำหนดโดยต่อไปนี้: f(X) = {(0,0)} ∪ {(x+t)/2 | x∈X, t∈T} จากนั้นทางขวา Sierpinski สามเหลี่ยมเป็นปิดทอพอโลยีของจุดอย่างน้อยคงที่ (โดยชุดบรรจุ) fของ อนุญาตSเป็นสแควร์{(x,y) | 0<=x<=1 …

2
ตารางศิลปะ ASCII เลียนแบบแฟร็กทัล
เขียนโปรแกรมที่เล็กที่สุดที่คุณสามารถสร้างเลียนแบบแฟร็กทัลได้ คุณอาจใช้วิธีการใด ๆ ที่คุณรู้สึกว่าสร้างผลลัพธ์เช่นเดียวกับกฎด้านล่าง คุณไม่จำเป็นต้องใช้ความคิดใด ๆ จากวิธีการที่แนะนำ! โปรแกรมของคุณจะรับสองอินพุตเป็นคนแรกที่กำหนดรูปแบบในรูปแบบที่074ทำจากตัวเลขสามหลักจาก 0 ถึง 7 อินพุตที่สองจะกำหนดขนาด3จะเป็น 8x8 4จะเป็น 16x16 และอื่น ๆ (2 ^ n) โปรแกรมของคุณจะต้องแสดงผลลัพธ์ที่ถูกต้องสำหรับทุกขนาดตั้งแต่ 0 (1x1) ถึงอย่างน้อย 5 (32x32) ถ้ามันสร้างผลลัพธ์ใด ๆ สำหรับตัวเลขที่สูงกว่ามันจะต้องถูกต้องนั่นคือมันจะต้องสร้างผลลัพธ์ที่ถูกต้องจนถึงขนาดที่กำหนด แต่จะไม่สร้างผลลัพธ์ที่เกินขนาดนั้นถ้ามันผิด คุณอาจสันนิษฐานว่าขนาดสูงสุด 15 (32768x32768) เนื่องจากเป็นขนาดที่บ้าสำหรับศิลปะ ASCII (1GB)! รูปแบบ 8x8 จะมีลักษณะดังนี้ (กฎ160) ซ้ายสุดหลักจะเป็นบล็อกA, กลางหลัก (ไม่คิดหยาบคายโปรด!) สำหรับบล็อกและหลักขวาสุดสำหรับบล็อกB Cในการสร้างเศษส่วนให้ลดขนาดลงครึ่งหนึ่งในทั้งสองมิติและใช้กฎการหมุน / การมิร์เรอร์สำหรับบล็อก หากต้องการลดขนาดรูปแบบให้แบ่งเป็นเท่า ๆ กันในพื้นที่ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.