Sonuç hep 1 çıkıyor. Hata nerde yardımcı olur musunuz ?
#include <iostream> using namespace std; int main() { int n,i; double sum=0; cout<<"Enter n value:"; cin>>n; for(i=1; i<=n; i++) {sum=sum+1/i;} cout<<"Result="<<sum<<endl; system ("pause"); }
< Bu mesaj bu kişi tarafından değiştirildi Perseveranza -- 23 Kasım 2015; 15:51:51 >
sadece i=1 iken 1/i işlemi 1 sonucu üretiyor. i 1 den büyükken i int olduğu için 1/i ifadesi hep 0 değeri üretiyor(int bölme) sum=sum+1.0/(double)i; kullanılabilir. (i yi double çevirip bölme işlemini yapıyor)
< Bu mesaj bu kişi tarafından değiştirildi Perseveranza -- 23 Kasım 2015; 15:51:51 >