1. 程式人生 > 實用技巧 >1036 跟奧巴馬一起程式設計 (15分)

1036 跟奧巴馬一起程式設計 (15分)

美國總統奧巴馬不僅呼籲所有人都學習程式設計,甚至以身作則編寫程式碼,成為美國曆史上首位編寫計算機程式碼的總統。2014 年底,為慶祝“電腦科學教育周”正式啟動,奧巴馬編寫了很簡單的計算機程式碼:在螢幕上畫一個正方形。現在你也跟他一起畫吧!

輸入格式:

輸入在一行中給出正方形邊長 N(3N20)和組成正方形邊的某種字元 C,間隔一個空格。

輸出格式:

輸出由給定字元 C 畫出的正方形。但是注意到行間距比列間距大,所以為了讓結果看上去更像正方形,我們輸出的行數實際上是列數的 50%(四捨五入取整)。

輸入樣例:

10 a

輸出樣例:

aaaaaaaaaa
a        a
a        a
a        a
aaaaaaaaaa
#include<iostream>
using namespace std;
int main(){
    int N;
    char c;
    cin>>N>>c;
    
for(int i=0;i<(N+1)/2;i++){ if(i==0||i==(N+1)/2-1){ for(int j=0;j<N;j++) cout<<c; cout<<endl; }else{ cout<<c; for(int k=0;k<N-2;k++) cout<<" "; cout<<c<<endl; } } }

這裡需要注意當N為奇數時,N/2都會帶一個0.5。因為題目要求四捨五入,所以只要是奇數,都需要變成比當前奇數大1的偶數,也就是(N+1)/2。