С++, помогите найти ошибку в программе

Компьютеры программирование программы С++

программа это проводит преобразование Фурье, проблема собственно с написанием самой формулы преобразования

float main(){
const double pi = 3.1415;
float x;
float summa=0;//изначальная сумма для к-того элемента
float k,n; //номер палки(к), номер изначального отсчета сигнала(n)
float N=51; // всего отсчетов
float a[51]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51};
for (k=0; k<51; k++) // получаем палки спектра
{
for (n=0; n<51; n++) // крутим все отсчеты при постоянном к
x=a[n]*exp(cos((2*pi*n*k)/N)-sin((2*pi*n*k)/N)); //значение палки
summa=summa+x; // суммируем все значения по формуле фурье
cout<<summa<<endl; // выводим на экран к-тую палку спектра

ошибка в этом выражении >> x=a[n]*exp(cos((2*pi*n*k)/N)-sin((2*pi*n*k)/N));
"error C2108: subscript is not of integral type"
Ответы:
>> a[n]
n должен быть целым.
1. зачем вам вообще в данном случае массив a[]? используйте (n-1)
2. зачем заводить переменную N=51, если в половине мест вы все равно пишите 51? или замените все на N (если предполагается большее число шагов), или используйте везде 51.
3. float main(){ - может все же int main() ?
массив float a[51] просто убил


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.