输出字符菱形

2023-05-16

编程输入字符X,输出由字符X构成的以下样式的字符图形。

输入样例:

*

输出样例:

   *
  ***
 *****
*******
 *****
  ***
   *

输入样例:

A

输出样例:

   A
  AAA
 AAAAA
AAAAAAA
 AAAAA
  AAA
   A

突然想到一个比较方便的

最中间那一竖条先不看,看左边空白,从上至下

分别是

3个空白

2个空白

1个空白

0个空白

1个空白

2个空白

3个空白

相应的A也就是3-n个

#include <cstdio>
#include "vector"
#include "iostream"
#include "map"
#include "algorithm"
#include "math.h"

using namespace std;

int main() {
//    freopen("../i.txt", "r", stdin);
    char e;
    cin >> e;
    for (int i = 0; i < 7; ++i) {
        if (i!=0)
            cout << endl;
        for (int j = 0; j < abs(3 - i); ++j) {
            cout << ' ';
        }
        for (int j = 0; j < (3 - abs(3 - i)) * 2 + 1; ++j) {
            cout << e;
        }
    }
    return 0;
}

 进而想到通用的

菱形图案

请编程输入一个奇数n(n<100)和一个字符c,输出n行由字符c组成的菱形图案。

输入样例:

5 A

输出样例:

  A
 AAA
AAAAA
 AAA
  A

输入样例:

13 ?

输出样例:

      ?
     ???
    ?????
   ???????
  ?????????
 ???????????
?????????????
 ???????????
  ?????????
   ???????
    ?????
     ???
      ?


 

 假设左边这里叫做halfWidth,则halfWidth=(行数- 1) / 2

那么有

 最中间那一竖条先不看,看左边空白,从上至下

分别是

第0行,abs(halfWidth-0)个空白

第1行,abs(halfWidth-1)个空白

第2行,abs(halfWidth-2)个空白

第3行,abs(halfWidth-3)个空白

第4行,abs(halfWidth-4)个空白

第5行,abs(halfWidth-5)个空白

第6行,abs(halfWidth-6)个空白

相应的A也就是(halfWidth - abs(halfWidth - 行号)) * 2 + 1个

#include <cstdio>
#include "vector"
#include "iostream"
#include "map"
#include "algorithm"
#include "math.h"

using namespace std;

int main() {
//    freopen("../i.txt", "r", stdin);
    char e;
    int line;
    cin >> line;
    cin >> e;
    int halfWidth = (line - 1) / 2;
    for (int i = 0; i < line; ++i) {
        if (i != 0)
            cout << endl;
        for (int j = 0; j < abs(halfWidth - i); ++j) {
            cout << ' ';
        }
        for (int j = 0; j < (halfWidth - abs(halfWidth - i)) * 2 + 1; ++j) {
            cout << e;
        }
    }
    return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

输出字符菱形 的相关文章

随机推荐

  • VMware 无法安装 VMware Tools, 提示VMCI,内存驱动

    我是VMware16 镜像为Windows 7 Ultimate with Service Pack 1 x64 DVD Chinese Simplified 最新版7601 文件名 xff1a cn windows 7 ultimate
  • cmake3.8.2安装

    下载 xff1a 官网下载https cmake org download xff0c 最新的为3 14版本 xff0c 下载完成如下图 xff1a 安装很简单 xff0c 一路next
  • C语言:二维数组的使用及水平制表符(tab)

    题目 xff1a 编写一个计算从0 10各个数的平方和立方的程序 xff0c 并使用水平制表符 xff08 tab xff09 打印下表 要点一 xff1a 二维数组的应用 int a 11 3 定义了一个11 3 xff0c 即11行3列
  • win+G没反应,Xbox game bar按不出来

    按照https www bilibili com read cv7305256 这个方法前三个方案都没得用 重新设置快捷键也没有用根本就不识别 win 43 g就是填不进去 xff0c 其它快捷键可以 xff0c 就算填进去了 xff0c
  • gta5如何快速吃零食,M键里面没有动作

    在M菜单的风格里面 xff0c 把动作改成吃零食 去商店买好零食 xff0c 然后按M在动作那里设置成吃零食 xff0c 之后直接按Caps Lock键就能吃了立马补血
  • gta5如何快速吃零食,M键里面没有动作

    在M菜单的风格里面 xff0c 把动作改成吃零食 去商店买好零食 xff0c 然后按M在动作那里设置成吃零食 xff0c 之后直接按Caps Lock键就能吃了立马补血
  • GTA5怎么快速吃零食 回血

    百度下载按键精灵 新建脚本 KeyDowns 34 M 34 1 Delay 30 KeyUps 34 M 34 1 Delay 30 KeyDowns 34 Down 34 1 Delay 30 KeyUps 34 Down 34 1 D
  • GTA5前置任务怎么使用差事传送

    首先说一下会出的问题 1 线上等级没有到30级是没有提高产量差事的 3 提高产量差事没有出现R星服务器错误直接进去差事的 xff0c 请把你的游戏语言改成简体中文 xff0c 其他语言卡不了 有部分人出现了错误也会出现差事 4 复仇者的任务
  • npm ERR! code ERR_INVALID_URL,npm err安装报错

    nodeenv PS E WebstormProjects node onebot 1 3 final 2 gt npm i npm ERR code ERR INVALID URL npm ERR Invalid URL npm ERR
  • 桌面alt+enter按不了,没反应

    关闭360桌面助手即可 xff0c 如果是其它问题按下面的方法排查 https blog csdn net m0 37787662 article details 104038720 https blog csdn net zw521cx
  • 打游戏csgo的时候莫名其妙卡一下

    经过长期观察发现如下情况 我是天选2 3060 也是csgo突然卡一下 xff0c 有时候声音也一起同时卡一下 xff0c 半秒的样子 这篇文章适用于开启了核显和独显的 xff0c 并且是核显直连 之前一直在找 xff0c 看了好多解决方案
  • csgo游戏中怎么显示现实中的时间

    csgo游戏中怎么显示现实中的时间 xbox game bar下载这个应用就好了 这个更好使 提供一个浏览器 xff0c 这样的话想显示什么都可以了 按F11全屏
  • 华硕笔记本全硬盘恢复原厂状态 实机操作,MYASUS IN WINRE恢复,ASUS RECOVERY恢复

    本教程的前提的在之前就备份了原厂的RECOVERY分区 xff0c RESTORE分区 xff0c MYASUS分区 如果这些分区都没有的话那就只能找同型号笔记本的朋友要一份了 xff0c 或者去售后 xff0c 告诉他这三个分区都要恢复
  • 炉石传说 ccf

    炉石传说 ccf 题我就不贴了 xff0c 花了大概一下午写 xff0c 虽然感觉这个题难度不是很大 xff0c 但是还是结果只有七十分 xff0c ccf显示运行错误 xff0c 这个提示应该是运行测试用例的时候出现了逻辑错误 感觉应该还
  • word中编号怎么转成普通的字,如何把WORD编号转为普通文本

    记录一下word如何去掉自动编号格式但保留原编号内容的方法 xff1a 1 调出word的 开发工具 选项 打开文件 gt 选项 gt 自定义功能区 gt 选中开发工具 gt 确定 xff0c 2 编写宏 依次点击 xff1a 开发工具 x
  • xbox游戏文件备份了,怎么才能不重新下载

    今天我也是试了很久才找到的办法 因为之前我重装过 xff0c 有一次直接在xbox上下载地平线5 xff0c 结果秒安装好 我想应该可以用复制出来的文件直接安装 今天来试一下 xff0c 不想重新下载了 才一百兆的宽带 其他游戏一样的操作
  • VescoFx - Provoker压缩VST插件

    这个插件找了我好久哇 出处 xff1a https musicmakers ru vst 1399 vescofx provoker vocal compressor plugin v10 kompressor html https 10p
  • LittleAlterBoy.dll VST插件

    谷歌了很久都没有找到破解版的 xff0c 最后在一个群里面 xff0c 一位好心的老哥分享给我了 我也分享出来 https yunling lanzout com ic3Tpyhz0cd
  • 如何判断dll是64位,还是32位

    感觉这个方法最好用 PE文件头里有个machine字段指定CPU类型 xff0c 如果是0x8664就是64位程序 xff0c 0x14c 表示Intel 386或后继处理器及其兼容处理器 可以用c32asm工具导入dll文件查看 这个是x
  • 输出字符菱形

    编程输入字符X xff0c 输出由字符X构成的以下样式的字符图形 输入样例 输出样例 输入样例 A 输出样例 A AAA AAAAA AAAAAAA AAAAA AAA A 突然想到一个比较方便的 最中间那一竖条先不看 xff0c 看左边空