Мне нужно написать программу, которая печатает следующее выражение «1-2 + 3-4 + 5 + .... n. (Нечетные числа добавляют и даже цифры вычитают) Я написал этот точный код:C язык программирования помогает мне?
#include <stdio.h>
int main()
{
float c,n,i,s;
c=getch();
printf ("\n Please write n:");
scanf ("%f",&n);
s=0.f;
for (i=1;i<=n;i++)
{
s+=((2*i-1) -2*i);
}
printf("\n Sum =%.2f",s);
getch();
}
Когда я его компилирую, он не показывает ошибок. Когда я запускаю его, каждый раз, когда я помещаю число, например 5, результат получается - -5, или если я помещаю 3, я получаю -3.Что у меня есть сделано неправильно?
EDIT: Мне нужно получить такой результат: например, если я положил 6, я должен сделать 1-2 + 3-4 + 5-6 = -3. Если я поставлю 4 I необходимо сделать 1-2 + 3-4 = -2.And так далее!
программы Вы не печатает строку, печатает поплавок. – hank
Извините, если я игнорирую ваш вопрос, но серия, которую вы написали выше, является «телескопической серией» и имеет закрытую форму. Посмотрите на это следующим образом: (1 - 2) + (3 - 4) + (5 - 6) + ... + (2n-1 - 2n) = (-1) + (-1) + ... + (-1) = -n. Похоже, что ваши результаты верны? Но я не внимательно смотрел на код. – rliu
А потом вы неправильно написали выражение наверху. Вы все равно можете найти закрытую форму довольно тривиально. – rliu