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] [//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"]
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
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: 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 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ố. 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. 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 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 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. Hãy thử lấy tử số và mẫu số của riêng bạn.Số phân số
⇒ 9
⇒ 10 - 9 = 1;
This yields the whole number.
⇒ 9/3 = 3;
This yields the new numerator.
⇒ 31/3
Type out the adjoining Python code for converting improper to mixed fractions.So!
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"]