# 隨機歌單背後的方法

如果是第一種方法的話，有可能會在短時間之間又重複聽到相同的曲子，但如果是第二種方法的話，那麼就一定要所有的歌曲都聽過一遍後，才會再重複喔。

為了示範隨機歌單的例子，我們還是需要一個清單，假設我們把它命名為list，然後建立一個用來產生有序資料的索引變數index，則產生一個有序數字清單的程式積木如下：

![](/files/-LSyMYzGAjULXis_yrwf)

建立完成之後，只要程式一執行，就可以在舞台上看到如下所示的清單：

![](/files/-LSyMptE8yjCHrIF2I8J)

接著，我們用來打亂數字順序的方法是，設定兩個變數分別是x以及y，然後重複10次，每一次都隨機選擇1\~10之間的數字做為x和y的內容，而x和y的目的就是要用來指出兩個要交換內容的項目之索引值。此外，為了要交換索引的內容項目，還需要一個暫存的變數，我們把它命名為temp，因此，除了清單list之外，這個程式還需要以下的變數：

![](/files/-LSyNQCJrE5kuuh_AWw8)

打亂順序的程式積木如下：

![](/files/-LSyNWmDx4vGW8mYrXLx)

在這個程式積木中要特別留意的是，x和y指的是索引，而temp變數中放的則是實際的項目內容。完成的程式積木如下所示：

![](/files/-LSyNjwAxAfwELprHg5L)

此程式執行完畢之後，可以看到清單中的數字順序就被打亂了，而且清單中的數字不會有重複的情形發生喔。

![](/files/-LSyO2aT0LxJkIEAWsBX)

學會了這項技能，同學們知道如何製作發牌程式了嗎？


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nkust.gitbook.io/csx/ge-bei-de-fang-fa.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
