Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support |

#1
February 17th, 2013, 02:50 PM
 DopplerEffect
Registered User

Join Date: Feb 2013
Posts: 5
Time spent in forums: 1 h 14 m 16 sec
Reputation Power: 0
Help Begginer in Assigment

Hello everyone,

I've assigment that requries a function to be created to find gcd of four numbers, you may see below for details

Using the pseudo code below (Euclid's algorithm) write a function gcd4 which finds the greatest common divisor of four positive integers.

function gcd(a, b)
while b ≠ 0
t := b
b := a mod t
a := t
return a

any hints that you give may help

#2
February 17th, 2013, 04:04 PM
 dariyoosh
Contributing User

Join Date: Nov 2012
Location: Iran / France
Posts: 132
Time spent in forums: 2 Days 6 h 25 m 17 sec
Reputation Power: 133
What you have implemented so far in terms of python code for this problem?

#3
February 17th, 2013, 04:07 PM
 dariyoosh
Contributing User

Join Date: Nov 2012
Location: Iran / France
Posts: 132
Time spent in forums: 2 Days 6 h 25 m 17 sec
Reputation Power: 133
http://en.wikipedia.org/wiki/Greatest_common_divisor

Last edited by dariyoosh : February 17th, 2013 at 04:14 PM.

#4
February 17th, 2013, 04:27 PM
 DopplerEffect
Registered User

Join Date: Feb 2013
Posts: 5
Time spent in forums: 1 h 14 m 16 sec
Reputation Power: 0
Yes i need an actual Python code for implement i write it for 2 integers but things are getting complicated when integers came to 4

def gcd(a, b):
while b != 0 :
a, b = b, a%b
print a

#5
February 17th, 2013, 05:24 PM
 b49P23TIvg
Contributing User

Join Date: Aug 2011
Posts: 3,386
Time spent in forums: 1 Month 2 Weeks 3 Days 14 h 5 m 35 sec
Reputation Power: 383
First, change gcd to return the greatest common divisor rather than print it. Almost always better to return a value than print it. You can print it later. In this case it's necessary.
Code:
```def gcd(a, b):
while b != 0 :
a, b = b, a%b
return a```
Next, compute the gcd over a list of numbers as
Code:
```import functools
functools.reduce(gcd, [24, 6, 60])```
Computing in turn the gcd of 24 and 6 which is 6, then of 6 and 60 which is 6. Now you've got conceptually correct code for any size list.
__________________
[code]Code tags[/code] are essential for python code!

 Viewing: Dev Shed Forums > Programming Languages > Python Programming > Help Begginer in Assigment