Hướng dẫn anagram program in python using for loop - chương trình đảo chữ trong python sử dụng vòng lặp for

Bài viết này được tạo để bao gồm một số chương trình trong Python, nhận được hai chuỗi của người dùng vào thời gian chạy và kiểm tra xem hai chuỗi có phải là ANAGRAM hay không. Dưới đây là danh sách các chương trình:

  • Kiểm tra hai chuỗi là đảo chữ hoặc không sử dụng cho vòng lặp mà không cần sắp xếp chuỗifor loop, without sorting the string
  • Sử dụng hàm sort []sorted[] Function
  • Sử dụng chức năng do người dùng xác định
  • Sử dụng lớp học

Trước khi tạo các chương trình này, trước tiên chúng ta hãy hiểu về Anagram.

Chuỗi anagram là gì?

Hai chuỗi có thể được gọi là ANAGRAM, khi:

  • Cả hai đều chứa cùng một số ký tự
  • thứ tự của các nhân vật không quan trọng
  • Một chuỗi có thể được sắp xếp lại để tạo thành chuỗi khác

Ví dụ, ABC và CBA là hai chuỗi đảo chữ. Tương tự, sáng tạo và phản ứng cũng là đảo chữ. Đó là, các nhân vật sáng tạo có thể được sắp xếp lại để hình thành phản ứng và ngược lại.abc and cba are two anagram strings. Similarly, creative and reactive are also anagram. That is, characters of creative can be rearranged to form reactive and vice-versa.

Kiểm tra hai chuỗi là cách sử dụng cho vòng lặp

Chương trình này được tạo bằng cách sử dụng vòng lặp để kiểm tra xem hai chuỗi được nhập bởi người dùng có bị đối nghịch hay không. Câu hỏi là, viết một chương trình Python để kiểm tra ANAGram hay không mà không sắp xếp chuỗi. Đây là câu trả lời của nó:for loop to check whether the two strings entered by user are anagram or not. The question is, write a Python program to check Anagram or not without sorting the string. Here is its answer:

print["Enter the First String:"]
textOne = str[input[]]
print["Enter the Second String:"]
textTwo = str[input[]]
found=0
notFound=0
lenOne = len[textOne]
lenTwo = len[textTwo]
if lenOne == lenTwo:
    for i in range[lenOne]:
        found = 0
        for j in range[lenOne]:
            if textOne[i] == textTwo[j]:
                found = 1
                break
        if found==0:
            notFound = 1
            break
    if notFound==1:
        print["\nStrings are Not Anagram"]
    else:
        print["\nStrings are Anagram"]
else:
    print["\nLength of Strings are not Equal"]

Đây là mẫu chạy mẫu của nó:

Bây giờ cung cấp hai chuỗi đầu vào nói hãy lắng nghe đầu tiên và im lặng dưới dạng chuỗi thứ hai và nhấn phím ENTER để kiểm tra và in xem hai chuỗi này có phải là đảo chữ hay không như thể hiện trong ảnh chụp nhanh được đưa ra dưới đây:listen as first and silent as second string and press ENTER key to check and print whether these two strings are anagram or not as shown in the snapshot given below:

Dưới đây là một mẫu chạy khác với người dùng đầu vào nghe và silenx là chuỗi thứ nhất và thứ hai:listen and silenx as first and second string:

Và đây là lần chạy mẫu thứ ba với mã đầu vào của người dùng và cracker là chuỗi thứ nhất và thứ hai:codes and cracker as first and second string:

Lưu ý - Phương thức str [] được sử dụng để chuyển đổi bất kỳ loại giá trị nào thành loại chuỗi. Và phương thức Len [] trả về độ dài của chuỗi được truyền dưới dạng đối số của nó.The str[] method is used to convert any type of value to a string type. And len[] method returns length of string passed as its argument.

Việc chạy khô của chương trình ở trên với người dùng đầu vào nghe và im lặng, đi như:listen and silent, goes like:

  • Các giá trị ban đầu, TEXTONE = Nghe [được nhập bởi người dùng], TextTwo = im lặng [được nhập bởi người dùng], đã tìm thấy = 0, notfound = 0textOne = listen [entered by user], textTwo = silent [entered by user], found = 0, notFound = 0
  • Bây giờ sử dụng phương thức Len [], độ dài của chuỗi thứ nhất và thứ hai được khởi tạo thành các biến lenone và lentwo. Vì vậy, lenone = 6 và lentwo = 6len[] method, the length of first and second string gets initialized to lenOne and lenTwo variables. So lenOne=6 and lenTwo=6
  • Vì điều kiện [của nếu] lenone == lentwo hoặc 6 == 6 đánh giá là đúng, do đó luồng chương trình đi vào bên trong cơ thể nếu cơ thể nàyif] lenOne == lenTwo or 6 == 6 evaluates to be true, therefore program flow goes inside this if's body
  • Phạm vi [] trả về một chuỗi các giá trị, bắt đầu bằng 0 và tăng thêm 1 mỗi lần, theo mặc định. Tiếp tục cho đến khi Lenone-1, vì Lenone cung cấp như đối số của nórange[] returns a sequence of values, starting with 0 and increments by 1 each time, by default. Continues until lenOne-1, since lenOne provided as its argument
  • Do đó, lần đầu thực thi, giá trị của tôi là 0, vì vậy tôii's value is 0, so i

Bài Viết Liên Quan

Chủ Đề