Tech Proof Ответов: 1

С помощью цикла for составить программу вручную за вопрос(https://1drv.ms/u/s! Ajrld_fzlfykhx8hc1sbkiufuc_p)


Вопрос заключается в следующем-:
Напишите программу с использованием цикла for, которая вычисляет sinx и cosx, используя следующие степенные ряды-
sinx=x-x^3/3!+x^5/5!-x^7/7!+....
cosx=1-x^2/2!+x^4/4!-x^6/6!+.....

Примечание-(Здесь ! используется для факториала этого числа и ^ для степени)
.

Что я уже пробовал:

синусно-косинусный класс
{
void main(double x,int n)
{
int i,j,k,f;
двойная сумма=0.0;
х=математика.toRadians(х);
{
для(i=1,j=1;i<=n;i=i+2,j++)
{
f=1;
для(k=1;k<=i;k++)
{
f=f*i;
}

если(j%2==0)
sum=sum-(Math.pow(x,i)/f);
еще
sum=sum+(Math.pow(x,i)/f);
}
Системы.из.код println("грех"+математика.toDegrees(х)+"="+сумма);
}

для(i=0,j=1;i<=n;i=i+2,j++)
{
f=1;
для(k=1;k<=i;k++)
{
f=f*i;
}

если(j%2==0)
sum=sum-(Math.pow(x,i)/f);
еще
sum=sum+(Math.pow(x,i)/f);
}
Системы.из.код println("потому что"+математика.toDegrees(х)+"="+сумма);
}}

Richard Deeming

Репост
Вы уже опубликовали это на форуме Java:
С помощью цикла for составить программу вручную за вопрос( https://1drv.ms/u/s! Ajrld_fzlfykhx8hc1sbkiufuc_p ) - Доски Обсуждений Java[^]

Необъяснимый, неформатированный дамп кода и ссылка для загрузки всего вашего проекта-это еще не вопрос.

Richard MacCutchan

Я думал, мы уже один раз проголосовали против этого.

[no name]

Можете ли вы решить этот вопрос-: ДА или нет, скажите один раз
Вопрос заключается в следующем-:
Напишите программу с использованием цикла for, которая вычисляет sinx и cosx, используя следующие степенные ряды-
sinx=x-x^3/3!+x^5/5!-x^7/7!+....
cosx=1-x^2/2!+x^4/4!-x^6/6!+.....

Примечание-(Здесь ! используется для факториала этого числа и ^ для степени)

Richard MacCutchan

Да, "написать программу", которая является инструкцией для вас, чтобы написать программу подробно в этом задании. Так чего же именно вы от нас хотите?

1 Ответов

Рейтинг:
9

OriginalGriff

Компиляция не означает, что ваш код верен! :смеяться:
Подумайте о процессе разработки как о написании электронного письма: успешная компиляция означает, что вы написали электронное письмо на правильном языке - например, на английском, а не на немецком, - а не то, что письмо содержало сообщение, которое вы хотели отправить.

Итак, теперь вы входите во вторую стадию разработки (на самом деле это четвертая или пятая, но вы перейдете к более ранним стадиям позже): тестирование и отладка.

Начните с рассмотрения того, что он делает, и как это отличается от того, что вы хотели. Это важно, потому что это дает вам информацию о том, почему он это делает. Например, если программа предназначена для того, чтобы позволить пользователю ввести число, а он удваивает его и печатает ответ, то если ввод / вывод был таким:

Input   Expected output    Actual output
  1            2                 1
  2            4                 4
  3            6                 9
  4            8                16
Тогда совершенно очевидно, что проблема заключается в бите, который удваивает его - он не прибавляет себя к себе или умножает его на 2, он умножает его на себя и возвращает квадрат входного сигнала.
Таким образом, вы можете посмотреть на код, и очевидно, что он находится где-то здесь:
int Double(int value)
   {
   return value * value;
   }

Как только у вас появится идея, что может пойти не так, начните использовать отладчик, чтобы выяснить, почему. Поместите точку останова в первую строку метода и запустите приложение. Когда он достигнет точки останова, отладчик остановится и передаст управление вам. Теперь вы можете запускать свой код построчно (так называемый "одноступенчатый") и просматривать (или даже изменять) содержимое переменных по мере необходимости (черт возьми, вы даже можете изменить код и повторить попытку, если вам это нужно).
Подумайте о том, что должна делать каждая строка кода перед ее выполнением, и сравните это с тем, что она действительно делала, когда вы использовали кнопку "Step over" для выполнения каждой строки по очереди. Он сделал то, что вы ожидали? Если да, то переходите к следующей строке.
Если нет, то почему? Чем это отличается?
Надеюсь, это поможет вам определить, в какой части этого кода есть проблема и в чем она заключается.
Это навык, и его стоит развивать, поскольку он помогает вам как в реальном мире, так и в развитии. И, как и все навыки, он только улучшается при использовании!