Hướng dẫn how do you make a mixed fraction in python? - làm thế nào để bạn tạo một phân số hỗn hợp trong python?

Câu hỏi hay. Đây là một giải pháp sử dụng hàm phân số. Phân số là tốt vì nó làm giảm phân số. Bạn sử dụng phân chia sàn (//) để loại bỏ toàn bộ số và sau đó cung cấp phần còn lại thành phân số:

From fractions import Fraction
num = int(input('Type numerator'))
dem = int(input('Type denominator'))
Print str(num // dem) + ' and ' + str(Fraction(num%dem,dem)) if num//dem != 0 else str(Fraction(num%dem,dem))

[Python 9.5] (https://docs.python.org/2/l Library/fractions.html#fractions.fraction) Đọc mở rộng về phân số. Bởi vì bạn cho nó ăn và dem chứ không phải là một số thập phân thuần túy, nó khá an toàn.

Điều này cũng loại bỏ phản hồi '0 và ...' mà làm phiền tôi.

Không cần sử dụng mô -đun phân số, chúng ta phải tìm bộ chia chung lớn nhất (mượn hàm GCD từ phân số) làm giảm phân số ban đầu của chúng ta và sau đó sử dụng giải pháp rực rỡ từ @Jenner Felton

def gcdm(num,dem):
  while dem:
    num, dem = dem, num%dem
  return num
gcd = gcdm(num,dem)
num, dem = num/gcd, dem/gcd
Print "%d and %d/%d" % ((num//dem), (num%dem),dem) if num//dem !=0 else "%d/%d" % (num%dem,dem)


class Mixed2Improper: Mixed2Improper:

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; .denominator & nbsp; & nbsp; = & nbsp; phân số ['mẫu số']]]]]
    def __init__(self, fraction):
        self.whole_number = fraction['whole_number']
        self.numerator    = fraction['numerator']
        self.denominator  = fraction['denominator']

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def & nbsp; doconvert (tự): & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; return
    def doConvert(self):
        
        return self.whole_number * self.denominator + self.numerator


from MixedToImproper import Mixed2Improper MixedToImproper import Mixed2Improper


& nbsp; & nbsp; Phân số & nbsp; = & nbsp;
 
fraction = {'whole_number':3, 'numerator':1, 'denominator':3}

in ("& nbsp; & nbsp; & nbsp; & nbsp; chuyển đổi & nbsp; từ & nbsp; hỗn hợp & nbsp; sang & nbsp; không đúng & nbsp; '])) print (' {: 53d} & nbsp; {} '. định dạng (phân số [' toàn bộ_number '], & nbsp;'-')) phân số ['mẫu số'])))("    Converting from Mixed to Improper the fraction:\n")

print(   '{:55d}'.format(fraction['numerator']))
print('{:53d} {}'.format(fraction['whole_number'], '-'))
print(   '{:55d}'.format(fraction['denominator']))


Mix2imp & nbsp; = & nbsp; mixed2Improper (phân số) phân số ['tử số'] & nbsp; = & nbsp; mix2imp.doconvert ()
fraction['numerator'] = mix2imp.doConvert()

in ("\ n")("\n")

print('{:52d}'.format(fraction['numerator']))print('{:>52}'.format('Answer =      -'))print('{:52d}'.format(fraction['denominator']))('{:52d}'.format(fraction['numerator']))
print('{:>52}'.format('Answer =      -'))
print('{:52d}'.format(fraction['denominator']))

in ("\ n \ n")("\n\n")

Hướng dẫn how do you make a mixed fraction in python? - làm thế nào để bạn tạo một phân số hỗn hợp trong python?

Thể hiện và hiển thị cho học sinh và học sinh một ứng dụng toán học.

  • Trẻ em:
  • JavaScript
  • Java
  • C++
  • C#
  • Ngôn ngữ lập trình
  • Python
  • Perl
  • Ngôn ngữ của sự lựa chọn

  • Sơ đẳng
  • Trẻ em
  • Người lớn tuổi
  • Đệ tam

  • JavaScript
  • Java
  • C++
  • C#
  • Ngôn ngữ lập trình
  • Python
  • Perl

Mã để chuyển đổi một phần không phù hợp thành phần hỗn hợp trong Python



Số phân số

Như trước đây, các số phân số có thể phù hợp (ví dụ: 2/5), không đúng (ví dụ: 5/2) hoặc hỗn hợp (ví dụ: 21/2),

Giả sử chúng ta có phân số 10/3 - đây là một phần không phù hợp - chúng ta có thể chuyển đổi phần này thành một phần hỗn hợp bằng cách làm theo một số bước:

Bước 1:

Tìm số lớn nhất nhỏ hơn tử số (10), có thể phân chia mẫu số - 3 - không có phần còn lại. & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ⇒ 9
         ⇒ 9

Bước 2:

Trừ số được tìm thấy (9) - từ bước 1 - từ tử số (10) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ⇒ 10 - 9 = 1; Điều này mang lại toàn bộ số.
         ⇒ 10 - 9 = 1;
This yields the whole number.

Bước 3:

Chia số tìm thấy (9) - từ bước 1 - cho mẫu số (3) & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ⇒ 9/3 = 3; Điều này mang lại tử số mới.
         ⇒ 9/3 = 3;
This yields the new numerator.

Bước 4:

Tái sử dụng mẫu số (3) để có được phân số hỗn hợp của chúng tôi & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ⇒ 31/3
         ⇒ 31/3

Tạo một tệp mô -đun Python mới; Gọi nó là unmopertomixed.py loại ra mã python liền kề để chuyển đổi không phù hợp thành các phân số hỗn hợp.ImproperToMixed.py
Type out the adjoining Python code for converting improper to mixed fractions.


Lưu ý: Bạn có thể nhận xét mã đối tượng Python hỗn hợp trong lớp chính từ bài học trước hoặc đơn giản là tiếp tục từ nơi nó dừng lại. You can comment out the MixedToImproper Python object code in the main class from the previous lesson or simply continue from where it stopped.


So!

Hãy thử lấy tử số và mẫu số của riêng bạn.



Mã Python cho tệp mô -đun không phù hợp


class Improper2Mixed: Improper2Mixed:

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def & nbsp; '] & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;
    def __init__(self, fraction):
        self.numerator   = fraction['numerator']
        self.denominator = fraction['denominator']

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def & nbsp; doconvert (tự): & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbs & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; if & nbs ; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;
    def doConvert(self):
        
        for dividend in range(self.numerator, 0, -1):
            if dividend % self.denominator == 0:
                
                self.new_numerator = self.numerator - dividend
                
                self.whole_number = int(dividend / self.denominator)
                break

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;return {'whole_number':self.whole_number, 'numerator':self.new_numerator, 'denominator':self.denominator}


Đại số lớp chính


from ImproperToMixed import Improper2Mixed ImproperToMixed import Improper2Mixed


& nbsp; & nbsp; Phân số & nbsp; = & nbsp; {'Numerator': 10, & nbsp; 'mẫu số': 3}
 
fraction = {'numerator':10, 'denominator':3}

in ("\ n & nbsp; & nbsp; & nbsp; .("\n    Converting from Improper to Mixed the fraction:\n")

print('{:55d}'.format(fraction['numerator']))
print('{:>55}'.format('-'))
print('{:55d}'.format(fraction['denominator']))


Imp2Mix & nbsp; = & nbsp; không phù hợp2mixed (phân số) Phân số & nbsp; = & nbsp; imp2mix.doconvert ()
fraction = imp2mix.doConvert()

print(      '{:52d}'.format(fraction['numerator']))print('{:>48} {} {}'.format('Answer =   ', fraction['whole_number'], '-'))print(      '{:52d}'.format(fraction['denominator']))(      '{:52d}'.format(fraction['numerator']))
print('{:>48} {} {}'.format('Answer =   ', fraction['whole_number'], '-'))
print(      '{:52d}'.format(fraction['denominator']))

in ("\ n \ n")("\n\n")