24小时热门版块排行榜    

查看: 752  |  回复: 4

fengfeng子

银虫 (正式写手)

[求助] C++ 已有1人参与

//用C++画y=sinx的图像。其中后半个周期为什么 i 是从0开始,而不是从31?多谢
#include<iostream.h>
#include<math.h>
#include<conio.h>
using namespace std;
int main()
{
double y,x;
int i;
for(y=1;y>=-1;y-=0.1) /*y为列方向,值从1到-1,步长为0.1*/
{
         x=abs(asin(y))*10; /*计算出y对应的弧度m,乘以10为图形放大倍数*/
         if(y>=0)
         {
                 for(i=0;i<x;i++)
                 cout<<" ";
                 cout<<"*"; /*控制打印左侧的 * 号*/
                 for(;i<31-x;i++)
                 cout<<" ";
                 cout<<"*\n"; /*控制打印同一行中对称的右侧*号*/
          }
          else //后半个周期
         {
                 for(i=0;i<31+x;i++)   //为什么是i是从0开始,而不是从31
                 cout<<" ";
                 cout<<"*"; /*控制打印左侧的 * 号*/
                 for(;i<62-x;i++)
                 cout<<" ";
                  cout<<"*\n";
         }
}


getch();
return 0;
}
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

YouthUtopian

至尊木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
fengfeng子: 金币+5, ★★★★★最佳答案 2015-08-17 09:07:33
必须是从0开始,后半个周期相对于前半个周期 整体向右偏移了 31,每个点都要多打 31 个空格,画第三个半周期也是从0开始。
2楼2015-08-17 08:49:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fengfeng子

银虫 (正式写手)

引用回帖:
2楼: Originally posted by YouthUtopian at 2015-08-17 08:49:58
必须是从0开始,后半个周期相对于前半个周期 整体向右偏移了 31,每个点都要多打 31 个空格,画第三个半周期也是从0开始。

如果i =10,也就是在前面打了21个空格,对吧
3楼2015-08-17 09:07:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

YouthUtopian

至尊木虫 (著名写手)

引用回帖:
3楼: Originally posted by fengfeng子 at 2015-08-17 09:07:24
如果i =10,也就是在前面打了21个空格,对吧...

4楼2015-08-17 09:43:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

本帖仅楼主可见
5楼2017-12-01 17:40:01
已阅   申请程序强帖   回复此楼   编辑   查看我的主页
相关版块跳转 我要订阅楼主 fengfeng子 的主题更新
信息提示
请填处理意见