30/09/2018, 18:24

Cách tạo phương thức trên python

Corvert java sang python như nào vậy ạ?

public static String result(int a){
	String s = ""
	int i = 2
	while(i<=a){
		if(a%i==0){
			s = s + i + "*";
			a = a/i;
		}else i++
	}
	return s;
}
main(){
	int a = new Scanner(System.in).nextInt();
	System.out.print(result(a));
}
Đinh Quốc Hân viết 20:34 ngày 30/09/2018

Mình nghĩ bạn nên tìm hiểu Python trước khi đặt câu hỏi như thế này.

[Video] Python Bài 0 - Giới thiệu Python [Video] Python Bài 1 - Chương trình đầu tiên [Video] Python Bài 2 - Comments [Video] Python Bài 2 - Comments - Ôn tập [Video] Python Bài 3 - Số và toán [Video] Python Bài 3 - Số và toán - Ôn tập [Video] Python Bài 4 - Biến và tên [Video] Python Bài 4 - Biến và tên - Ôn tập [Video] Python Bài 5 - Tiếp tục biến và tên [Video] Python Bài 5 - Tiếp tục biến và tên - Ôn tập [Video] Python Bài 6 - Strings and text [Video] Python Bài 6 - Strings and text - Ôn tập …
def  result(int a):
    s = ""
    i = 2
    while i <=a :
        if a%i == 0 :
	    s = s + i + "*"
	    a = a/i
        else:
            i++
    return s

def main():
    a = input("Enter a number: ")
    print a
Tạ Duy Hoàng viết 20:34 ngày 30/09/2018

OK Mình cảm ơn ạ!..

htl@PyMI.vn viết 20:33 ngày 30/09/2018

Hình như python ko có (int a) trong def, ko có while và ko có i++

Đinh Quốc Hân viết 20:26 ngày 30/09/2018

Hình như python ko có (int a) trong def, ko có while và ko có i++

Hihi bạn có thể chỉnh lại giúp mình cho đúng không ?

htl@PyMI.vn viết 20:25 ngày 30/09/2018

Mình chỉ nhớ như vậy thôi, đang dùng điện thoại nên hơi ngại

Sorry mình nhớ nhầm, có while

chỗ nối str thì trong python phải convert int sang str

def result(a):
    s = ""
    i = 2
    if type(a) == 'int':
        while i <= a:
            if a % i == 0:
                s = s + str(i) + "*"
                a = a / i
            else:
                i += 1
    else:
        s = "No integer entered"
    return s


if __name__ == '__main__':
    a = input("Enter a number: ")
    print(result(a))

có thể dùng đoạn code này để bắt buôc nhập vào int:

while True:
    a = raw_input("enter a number: ")
    if type(a) == 'int':
        break

thì trong hàm result ko cần kiểm tra a là int hay ko nữa, nhg theo mình thì để cả 2 chỗ cũng được, để dùng lại hàm result ở chỗ khác ko bị lỗi

Bài liên quan
0