1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
aleksklad [387]
3 years ago
8

The Polish mathematician Wacław Sierpiński described the pattern in 1915, but it has appeared in Italian art since the 13th cent

ury. Though the Sierpinski triangle looks complex, it can be generated with a short recursive function. Your main task is to write a recursive function Sierpinski() that plots a Sierpinski triangle of order n to standard drawing. Think recursively: Sierpinski() should draw one filled equilateral triangle (pointed downwards) and then call itself recursively three times (with an appropriate stopping condition). It should draw 1 filled triangle for n = 1; 4 filled triangles for n = 2; and 13 filled triangles for n = 3; and so forth.
API specification:
When writing your program, exercise modular design by organizing it into four functions, as specified in the following API:

public class Sierpinski {

// Height of an equilateral triangle whose sides are of the specified length.
public static double height(double length)

// Draws a filled equilateral triangle whose bottom vertex is (x, y)
// of the specified side length.
public static void filledTriangle(double x, double y, double length)

// Draws a Sierpinski triangle of order n, such that the largest filled
// triangle has bottom vertex (x, y) and sides of the specified length.
public static void Sierpinski(int n, double x, double y, double length)

// Takes an integer command-line argument n;
// draws the outline of an equilateral triangle (pointed upwards) of length 1;
// whose bottom-left vertex is (0, 0) and bottom-right vertex is (1, 0); and
// draws a Sierpinski triangle of order n that fits snugly inside the outline.
public static void main(String[] args)
}

Restrictions: You may not change either the scale or size of the drawing window.
Observe the following rules:

DO NOT use System.exit().
DO NOT add the project or package statements.
DO NOT change the class name.
DO NOT change the headers of ANY of the given methods.
DO NOT add any new class fields.
ONLY display the result as specified by the example for each problem.
DO NOT print other messages, follow the examples for each problem.
USE StdIn, StdOut, and StdDraw libraries.
Computers and Technology
1 answer:
soldi70 [24.7K]3 years ago
7 0

Answer:

/ Sierpinski.java

public class Sierpinski {

     // method to find the height of an equilateral triangle with side length =

     // length

     public static double height(double length) {

           // formula= length*sqrt(3)/2

           double h = (length * Math.sqrt(3)) / 2.0;

           return h;

     }

     // method to draw a filled triangle (pointed downwards) with bottom vertex

     // x,y

     public static void filledTriangle(double x, double y, double length) {

           // finding height

           double h = height(length);

           // filling triangle as a polygon

           // passing x, x-length/2, x+length/2 as x coordinates

           // and y, y+h, y+h as y coordinates

           StdDraw.filledPolygon(new double[] { x, x - (length / 2.0),

                       x + (length / 2.0) }, new double[] { y, y + h, y + h });

     }

     // method to draw an n level sierpinski triangle

     public static void sierpinski(int n, double x, double y, double length) {

           // checking if n is above 0 (base condition)

           if (n > 0) {

                 // drawing a filled triangle with x, y as bottom coordinate, length

                 // as side length

                 filledTriangle(x, y, length);

                 // drawing the triangle(s) on the top

                 sierpinski(n - 1, x, y + height(length), length / 2);

                 // drawing the triangle(s) on the left side

                 sierpinski(n - 1, x - (length / 2.0), y, length / 2);

                 // drawing the triangle(s) on the right side

                 sierpinski(n - 1, x + (length / 2.0), y, length / 2);

           }

     }

     public static void main(String[] args) {

           // parsing first command line argument as integer, if you dont provide

           // the value while running the program, this program will cause

           // exception.

           int n = Integer.parseInt(args[0]);

           // length of the outline triangle

           double length = 1;

           // finding height

           double h = height(length);

           // drawing a triangle (pointed upwards) to represent the outline.

           StdDraw.polygon(new double[] { 0, length / 2, length }, new double[] {

                       0, h, 0 });

           // drawing n level sierpinski triangle(s) with length / 2, 0 as x,y

           // coordinates and length / 2 as initial side length

           sierpinski(n, length / 2, 0, length / 2);

     }

}

You might be interested in
The basic input/output system (bios is stored on a ________ chip.
Burka [1]
Read Only Memory (ROM)

6 0
4 years ago
Need help with this question please help it’s on c++
yan [13]

Answer:

b

Explanation:

if you look at the end of the code it brings c back but for it to do that it has to make a newline.

8 0
3 years ago
In order to write a successful algorithm, you must first be able to:
svp [43]
First define the problem
4 0
3 years ago
How did the use of ARPANET change computing?
Paladinen [302]

Answer:

Explanation:

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

PLEASE MARK BRAINLIESTPLEASE MARK BRAINLIEST

8 0
4 years ago
Select the statements that are true regarding the future of technology. Select 2 options.
nata0808 [166]

Answer:

  • Quantum computers are currently being built by Google and IBM, and will be available to the public in 2021.
  • Biocomputing can involve the use of biological components, like DNA, to store and process data.

Explanation:

Quantum computers make use of quantum processes like superposition to perform computation which make them exponentially faster and more powerful than normal classic computers.

Leading the way to develop quantum computers that will be available to the public are Google and IBM with IBM having confirmed in September 2020 that they already have a 65 qubits quantum computer which should be public by 2021.

Biocomputing is also another exciting future prospect in computer technology. It involves the use of biological components like DNA and proteins to store and process data. It is believed that with further work in this field, biocomputers will be able to perform computations many times faster than the traditional computer.

4 0
4 years ago
Other questions:
  • You've been asked to find the average of a range of numbers. Which of the following could you use to find the average of cells A
    9·1 answer
  • Which of the following modes of replication requires a very low latency network connection and ensures data remains in synch wit
    5·1 answer
  • When is a wrecker considered to be an emergency vehicle?
    12·1 answer
  • How many cells does the organism have?\
    5·2 answers
  • Next, Sue decides to embed a chart from Microsoft Word. She copies and pastes data from a table that she has already created in
    8·1 answer
  • The first step in transforming an extended e-r model into a relational database design is to
    14·1 answer
  • Your computer has been showing signs of a malware infection, and today it started up in Safe Mode. Because your computer is not
    6·1 answer
  • What are the ways to search out a number from a tree?
    11·1 answer
  • What is the difference between a threat and an attack?
    7·1 answer
  • Refer to Table 8-4. Consider the data above (in billions of dollars) for an economy: Gross domestic product (in billions of doll
    12·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!