Pomoc w zadaniu

0

Witam czy mógłby mi ktoś pomóc i wyjawić schamat jak robić tego typu zadania za pomocą pętli for? co znaczyu ten znak pi?

http://zapodaj.net/39c45330993a4.png.html

0

... to iloczyn, czego konkretnie nie rozumiesz?

0

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
int m;
int n;
double liczba;
double suma=0;

cout<<"Podaj m: ";
cin>>m;
cout<<"Podaj n: ";
cin>>n;

for(int i=pow(m,2);i<=n; ++i)
{
    double liczba=(i-3)/(4*i-1);
    suma*=liczba;
}
cout<<suma;

}

Napisałem taki kod, ale wyświtla 0 za każdym razem.

0

double liczba; Po co skoro w pętli for deklarujesz tą zmienną jeszcze raz

(i-3)/(4*i-1) wychodzi ci zero jeśli i jest typu int bo wtedy zaokrągla wynik w dół; rozwiązanie: castuj dzielną lub dzielnik do double, poczytaj o static_cast; natomiast nie deklaruj i jako double

EDIT!!!

suma*=liczba; na pewno *=?

0

Czy mógłbyś mi napisać ten kod, bez używania static_cast? Byłbym bardzo wdzięczny. Potrzebuje to ogarnąć na sprawdzian który mam jutro.

0
#include <iostream>
#include <cmath>
using namespace std;

int main()
  {
   int m,n;
   double suma=1;

   cout<<"Podaj m: ";
   cin>>m;
   cout<<"Podaj n: ";
   cin>>n;
   for(int i=m*m;i<=n;++i) suma*=(i-3)/(4.0*i-1);
   cout<<3*suma;
   return 0;
  }

pow(b,e) przeważnie obliczane jako exp(e*ln(b)) - więc o ile wykładnik nie jest ułamkowy - nie ma sensu używać.

0

@_13th_Dragon Twój kod również zwraca 0 za każdym razem :/

2
#include <iostream>
using namespace std;

int main() {
	int n,m,mq;
	float result = 1;
	cin >> n >> m;
	mq = m*m;
	for (int i=m*m; i<n; i++){
		result*=(float)(i - 3)/(4*i -1 );
	}		
	result*=3;
	cout <<"Wynk:"<<result;	


	return 0;
}
0

Rzeczywiści zwraca 3 w większości :/

0

Dzięki, dobzi ludzie. :D

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