9-2
(2/2 分数)
题目描述
显示正弦曲线y=35sin(x)在[0,2*pi)的部分与x轴围成的图形
要求:从x=0开始,每隔pi/30的距离在屏幕上输出一行,图形内的部分用'*'表示,图形外的部分用空格表示。曲线边界按y的绝对值四舍五入取整。 (x=0,y=0)这个点在第一行的第36个字符处用'*'表示。 图形的前几行是" *" " *****" " ********" " ************" " ***************"
问在输出的第n行中,有___个连续的'*','*'之前有____个空格。
输入格式输入n
输出格式输出两个数,中间以空格隔开
样例输入2样例输出
5 35代码框
#include<iostream>
#include<cmath>
using namespace std;
const double pi=3.14159265;
int main() {
double x,y;
int yy;
int spn,stn,count;
int n;
cin>>n;
count=1;
for (x=0.0;x<2.0*pi;x+=pi/30.0) {
y=35.0*sin(x);
yy=(int)floor(y+0.5);
stn=(yy>=0)?yy:-yy;
stn++;
spn=(yy>=0)?35:35+yy;
if (count==n) {
cout<<stn<<" "<<spn;
break;
}
count++;
}
return 0;
}