c++ - 用 '*' C++ 画一个圆圈
问题描述
我正在制作一个圆圈并且代码工作正常,但问题是即使它正在工作,这个圆圈也不完美,或者尽可能接近。
我的代码:
#include <iostream>
#include <math.h>
int main()
{
int radius = 6;
int i,j;
for (i=0; i<=2*radius; i++)
{
for (j=0; j<=2*radius; j++)
{
double distance = sqrt((double)(i-radius)*(i-radius) + (j-radius)*(j-radius));
if (distance>radius-0.65 && distance<radius+0.2)
{
std::cout << "*";
}
else
{
std::cout << " ";
}
}
std::cout << std::endl;
}
return 0;
}
圆圈看起来像一个柠檬,在不同的地方有一些奇怪的空间输出:
***
** **
* *
* *
* *
* *
* *
* *
* *
* *
* *
** **
***
// ^
// Wierd spacing
// Oval-ish
解决方案
推荐阅读
- azure-active-directory - Azure AD 中用于 Angular 应用程序的用户模拟
- intellij-idea - Docker compose 在 Intellij 的 zsh shell 中不起作用
- javascript - 当我的控制器抛出错误时,Jest 显示未定义
- javascript - IE11 setTimeout 需要更多时间来执行
- java - 尝试在 Ubuntu 上运行 Selenium 测试时出现问题
- ios - 如何以编程方式获取 Firebase InAppMessaging 实例 ID
- excel - 从 Google 表格复制特定范围并将值粘贴到 Excel
- c# - 是否可以在 Microsoft.AspNetCore.Mvc.Razor 中为装配部件声明别名?
- mysql - 执行全文搜索时,按 MyISAM 等相关性对 MySQL InnoDB 表进行排序
- swift - 创建 U 类型的类,其中 U 可以是任何协议