[C_CH09-易] 利用振幅和頻率計算波
問題描述:在這個問題中,根據所給的振幅 (Amplitude) 及頻率 (Frequency) ,你的程式要產生這樣的波。
輸入說明:輸入的第一列有一個整數 n( n<=9 ) ,代表有幾組測試資料。接下來每組測試資料有 2 列,各有 1 個正整數( A 、 F ), A 代表振幅( A<=9 ), F 代表頻率( F<=9 )。
輸出說明:每組測試資料請輸出 F 個波,每個波振幅的水平高度為 A 。波本身是以其 " 高度 " 的內容所組成。每個波之間以一空白行分隔開來。 測試資料間也以一空白行分開。 請參考 Sample Output 。 範例:
輸入說明:輸入的第一列有一個整數 n( n<=9 ) ,代表有幾組測試資料。接下來每組測試資料有 2 列,各有 1 個正整數( A 、 F ), A 代表振幅( A<=9 ), F 代表頻率( F<=9 )。
輸出說明:每組測試資料請輸出 F 個波,每個波振幅的水平高度為 A 。波本身是以其 " 高度 " 的內容所組成。每個波之間以一空白行分隔開來。 測試資料間也以一空白行分開。 請參考 Sample Output 。 範例:
Sample Input: | Sample Output: |
2 2 3 3 2 | 1 22 1 1 22 1 1 22 1 1 22 333 22 1 1 22 333 22 1 |
- #include <iostream>
- using namespace std;
- int main() {
- // [C_CH09-易] 利用振幅和頻率計算波
- int n, A, F;//測資數量,震幅, 頻率
- cin >> n;
- if(n <= 9)
- {
- for(int i = 0; i < n;i++)
- {
- cin >> A >> F;
- if(A <= 9 && F <= 9)
- {
- for(int j = 0;j < F;j++)//波的重複次數
- {
- for(int k = 1;k <= A;k++)
- //輸出幾行(上半部)
- {
- for(int m = 1;m <= k;m++)
- {
- if(m == k)
- {
- cout << k << endl;
- }
- else
- {
- cout << k;
- }
- }
- }
- for(int k = (A-1);k > 0 ;k--)
- //輸出幾行(下半部)
- {
- for(int m = k;m > 0;m--)
- {
- if(m == 1)
- {
- cout << k << endl;
- }
- else
- {
- cout << k;
- }
- }
- }
- if(j != (F-1))
- {
- cout << endl;
- }
- }
- if(i != (n-1))
- {
- cout << endl;
- }
- }
- }
- }
- return 0;
- }
沒有留言:
張貼留言