Program wyznaczający wartość szeregu y(n) dla podanej wartości n

0

Mam program do napisania, ale kompilator Dev-C++ wywala mi błędy i nie wiem, jak je poprawić, by program się skompilował.

Treść programu: Napisz program wyznaczający wartość szeregu y(n) dla podanej wartości n:
y(n)=13+24+35+46+...+(n-1)*(n+1)

Tak wygląda mój kod programu:

#include <stdio.h>

int main()
{
	int suma,n,licznik;
	printf("Podaj wartosc n. ");
	scanf ("%d", &n);
	scanf ("%d", &suma);
}
suma = 0;

for(licznik = 0; licznik < n; ++licznik) {
	suma = suma+((n-1)*(n+1));
}
{
	printf("Wartosc szeregu n %d wynosi: %d\n", n, suma);
	
	getch();
	return 0;
}

Co trzeba poprawić, bo nie mam pomysłu, a w programowaniu jestem słaby.
Proszę o pomoc, z góry dziękuje bardzo.

0

Na przyszłość podawaj też co mówi kompilator.

Nic dziwnego, że ten kod się nie kompiluje. Odnosisz się do niezadeklarowanych zmiennych, piszesz instrukcje wykonywalne poza funkcjami (kiedy konkretnie ten for miałby się wykonać?). Sugeruję powrót do tutoriala i zmianę kompilatora/ide na coś nowszego.

A ten kod powinien wyglądać mniej więcej tak:

#include <stdio.h>

int main()
{
    int suma, n, licznik;
    printf("Podaj wartosc n. ");
    scanf("%d", &n);
    suma = 0;

    for (licznik = 0; licznik < n; ++licznik) {
        suma = suma + ((n - 1) * (n + 1));
    }
    printf("Wartosc szeregu n %d wynosi: %d\n", n, suma);

    getch();
    return 0;
}

Przy okazji: po co pobierasz wartość suma od użytkownika, skoro ma ona być wynikiem obliczeń?

0
  1. Zainstaluj nowszego DevCpp wtedy nie będziesz potrzebować getch();
  2. DevCpp - nie kompilator tylko IDE które (przynajmniej teoretycznie) może używać dowolnego kompilatora.
  3. Zacznij od przeczytania jakiegoś kursu C++ może na początek nie całość ale przynajmniej początek, powyższy kod wskazuje że nie wiesz co robisz.
  4. Kod powinien wyglądać tak:
#include <stdio.h>
 
int main()
  {
   int n,i,suma;
   printf("Podaj wartosc n: ");
   scanf("%d",&n);
   // tu ewentualnie jakiś warunek dla n<2
   for(suma=0,i=2;i<=n;++i) suma+=(i-1)*(i+1);
   printf("Wartosc szeregu n %d wynosi: %d\n",n,suma);
   return 0;
  }

1 użytkowników online, w tym zalogowanych: 0, gości: 1