Definition. A Pythagorean triple (x, y, z) is a triple of positive integers where x² + y² = 2². This can be thought of as describing an x x y rectangle with the property that the diagonal z is also of integer length. A Pythagorean triple (x, y, z) is primitive if x, y, z are coprime (i.e. there is no integer k> 1 which divides all of them). (a) Write a Python function PrimPyth (n) which returns a list of primitive Pythagorean triples (x, y, z) where 0

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
Definition. A Pythagorean triple (x, y, z) is a triple of positive integers where x² + y² = z². This can be
thought of as describing an x × y rectangle with the property that the diagonal z is also of integer length.
A Pythagorean triple (x, y, z) is primitive if x, y, z are coprime (i.e. there is no integer k > 1 which divides all
of them).
(a) Write a Python function PrimPyth (n) which returns a list of primitive Pythagorean triples (x, y, z) where
0 < x < y < z <n. For example, PrimPyth (6) should return [(3,4,5)]
Hint: In this project we represent triples as tuples (x, y, z) not as lists [x,y,z]. The two data-types
behave similarly in many ways. Do not write a triply nested loop which searches through all triples (x, y, z)
as this will take n³ steps! Instead, use the fact (proved by Euclid) that every primitive Pythagorean triple
arises as (m² — n², 2mn, m² + n²) where m, n are coprime integers which are not both odd. (Of course the
first two entries may be swapped.)
(b) Run your function from part (a) with n = 10000 and plot a scattergraph of y against x.
(c) Write a function Pyth (n) which returns a list of (not necessarily primitive) Pythagorean triples (x, y, z)
where z <n.
Hint: Use your function from part (a).
(d) Run your function from part (c) with n= 10000 and plot a scattergraph of y against x. (This should be a
new figure not overwriting the one from part (b)).
(e) Comment on your the features of your two graphs, writing your answer as a comment.
Transcribed Image Text:Definition. A Pythagorean triple (x, y, z) is a triple of positive integers where x² + y² = z². This can be thought of as describing an x × y rectangle with the property that the diagonal z is also of integer length. A Pythagorean triple (x, y, z) is primitive if x, y, z are coprime (i.e. there is no integer k > 1 which divides all of them). (a) Write a Python function PrimPyth (n) which returns a list of primitive Pythagorean triples (x, y, z) where 0 < x < y < z <n. For example, PrimPyth (6) should return [(3,4,5)] Hint: In this project we represent triples as tuples (x, y, z) not as lists [x,y,z]. The two data-types behave similarly in many ways. Do not write a triply nested loop which searches through all triples (x, y, z) as this will take n³ steps! Instead, use the fact (proved by Euclid) that every primitive Pythagorean triple arises as (m² — n², 2mn, m² + n²) where m, n are coprime integers which are not both odd. (Of course the first two entries may be swapped.) (b) Run your function from part (a) with n = 10000 and plot a scattergraph of y against x. (c) Write a function Pyth (n) which returns a list of (not necessarily primitive) Pythagorean triples (x, y, z) where z <n. Hint: Use your function from part (a). (d) Run your function from part (c) with n= 10000 and plot a scattergraph of y against x. (This should be a new figure not overwriting the one from part (b)). (e) Comment on your the features of your two graphs, writing your answer as a comment.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 2 images

Blurred answer
Knowledge Booster
Topological Sort
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education