【算法笔记】B1036 跟奥巴马一起编程

1036 跟奥巴马一起编程 (15 分)

美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!

输入格式:

输入在一行中给出正方形边长 N(3N20)和组成正方形边的某种字符 C,间隔一个空格。

输出格式:

输出由给定字符 C 画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的 50%(四舍五入取整)。

输入样例:

10 a

输出样例:

aaaaaaaaaa
a        a
a        a
a        a
aaaaaaaaaa

思路:

第一行和做后一行全输出C,其余行第一个字符和最后一个字符输出C,中间输出空格。行数可以通过判断边数N是否是奇数来四舍五入。

CODE:

#include<iostream>
using namespace std;

int main(){
    int a,n;
    char b;
    cin>>a>>b;
    if(a%2!=0) n=(a+1)/2;
    else n=a/2;
    for(int i=0;i<n;i++){
        for(int j=0;j<a;j++){
            if(i==0||i==n-1) cout<<b;
            else{
                if(j==0||j==a-1) cout<<b;
                else cout<<" ";
            }
        }
        cout<<endl;
    }
    return 0;
}

 

posted @ 2019-03-15 09:21  Resfeber  阅读(212)  评论(0编辑  收藏  举报