#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int x[100];
float a,f,t;
cout<<" Enter the amplitude:";
cin>>a;
cout<<"Enter frequency:";
cin>>f;
f=1.0/f;
cout<<"Enter the time interval::";
cin>>t;
int i=0;
while(i<t)
{
x[i] = a * sin(2 * 3.14 * f * t);
cout<<x[i]<<" ";
}
return 0;
}
当我运行它时,我只是获得了大量的值输出,都是一样的。例如,输入5
,7
和9
可以获得连续输出:
4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4
:
and so on...
答案 0 :(得分:2)
您既不会递增i
也不会递减t
,这意味着您的循环很可能是无限循环:
while(i<t)
{
x[i] = a * sin(2 * 3.14 * f * t);
cout<<x[i]<<" ";
}
根据您的需要,可能在循环体内应该有i++
之类的东西。
您可能还会发现每个数组元素都设置为相同的值,因为您在计算中使用t
而不是i
的某个函数。
答案 1 :(得分:-1)
您需要包含两个标题。
#include <iostream>
#include <cmath>