nierówność
mati: hej pomoże ktoś z taką nierównością, chyba chodzi o jakiś ciąg ale nie moge nic znaleźć
30 paź 21:34
Jack: lewa strona to nic innego jak srednia harmoniczna od 1 do n liczb.
30 paź 21:36
30 paź 21:37
mati: dzieki zaraz poszukam na internecie bo nigdy nie słyszałem,ogólnie mam napisać progam który
bedzie wyznaczał najmniejsze n
30 paź 21:37
mati: gdzie wydaje mi sie troche to bez sensu bo nbedzie od jakiegoś a do nieskończoności ...
30 paź 21:37
Adamm: | | n | |
n√n!≥ |
| średnia harmoniczna z geometryczną |
| | | |
n
n>n!10
n wystarczy pokazać od którego momentu zachodzi nierówność
30 paź 21:41
mati: dzieki wielkie
30 paź 21:43
Saizou :
mati a jak brzmi całe zadanie ?
30 paź 21:44
mati: dla jakich n zachodzi nierówność, naisz program w C wyznaczający najmniejsze n
30 paź 21:47
Saizou :
ale nie ma takiego n
30 paź 22:01
ICSP: Nie wierze xD
30 paź 22:04
Adamm: Saizou no przecież szereg harmoniczny dąży do ∞, musi taki być
30 paź 22:07
Saizou :
program ci się zapętli

#include <iostream>
using namespace std;
int main(){
int n=1;
int suma=0;
do {
suma=suma+1/n;
n=n+1;
} while (suma>10);
cout << n;
return 0;
}
30 paź 22:07
Saizou :
Adamm ja to wiem, tylko piszę dla informacji matiego
30 paź 22:08
30 paź 22:17
mati: no właśnie to mnie dziwi bo dązy do nieskończonośći ...
30 paź 22:29
mati: może sie pomylili i dali znaczek w drugą strone
30 paź 22:29
mati: <>, gdyby szereg harmoniczny miałby dążyć do 10 to jakiś sens by to miało
30 paź 22:30
Adamm: mati co cię dziwi?
wytłumacz
jeśli chodzi o takową liczbę to na pewno taka będzie chociaż wątpię że ją wyliczysz ponieważ
będzie ogromna
30 paź 22:31
Saizou : Możesz spróbować z unsigned long long int (czyli 0 — +18 446 744 073 709 551 615 (bez znaku)),
ale to może być za mało
30 paź 22:34
Adamm: patrz, szereg harmoniczny dąży do ∞ ale to nie jest szereg harmoniczny a jedynie ciąg,
wiadomo że rośnie więc zawsze będzie taki n że zachodzi nierówność
co do tej liczby to niekoniecznie będzie ogromna, i to co ci podałem jest raczej bez sensu,
nawet jesli znajdziesz liczbę spełnającą moją wzorem to nie koniecznie będzie najmniejsza,
a napewno będzie trzeba dużej mocy obliczeniowej żeby ją obliczyć
Saizou teraz zauważyłem, dałeś inta zamiast zmiennoprzecinkowej
30 paź 22:36
mati: fuck... sorry źle myślałem o tym zadaniu bo pracowałem na tablicach chwile i je
zaszufladkowałem ...dzieki za pomoc
30 paź 22:39
Saizou :
o tak, suma powinna być float
30 paź 22:40
Saizou :
i w sumie n też powinno być typu float
30 paź 22:45
mati: czemu n float, jak n jest całkowitą ?
30 paź 22:47
Adamm: żeby dzielenie się zgadzało
30 paź 22:49
Saizou :
int/float daje float, ale dla C int/int to int (czyli dzielenie całkowite)
30 paź 22:50
wynik: 12367
30 paź 22:55
mati: właśnie zrobiłem zgadza sie xd
30 paź 22:58
mati: a nie 12368 ?
30 paź 22:59
30 paź 23:00
Saizou : mi też wyszło 12 368
30 paź 23:02
mati: może przez to ze float ma za mało cyfr znaczacych
30 paź 23:07
mati: wynik daje 10.000051
30 paź 23:08
mati: a z wykresu "wynik" 10.000048
30 paź 23:08
Saizou : To użyj double
30 paź 23:09
Adamm: spróbuj long long double
30 paź 23:10
mati: double wystarcza robi do 10.000048
30 paź 23:13
wynik: long long double nie istnieje. W czym masz jeszcze problem, wynik podałem, na potwierdzenie
masz to jeszcze policzone przez wolfram.
30 paź 23:13
mati: błąd wynika może z tego ze na początku wczytuje n=1 do obliczen
30 paź 23:13
wynik: jak chodzi o błąd programu to daj kod
30 paź 23:14
wynik: strzelam: robisz pętlę, która trwa dopóki suma < 10, w pętli do wyniku dodajesz 1/n a następnie
zwiększasz n o 1. Wtedy odpowiedzią po wyjściu z pętli jest n−1 a nie n.
30 paź 23:16
mati: no tak właśnie robie xd tylko dopiero zaczynam programowanie od podstaw
30 paź 23:17
mati: mógłbyś powiedzieć czemu po wyjści z pętli powinienem zwracać sobie n−1
30 paź 23:18
mati: bo wtedy sie zgadza tylko nwm skąd to sie bierze
30 paź 23:18
mati: bo we wzorze na sume 1/i też zaczyna liczyć wolfram od i=1
30 paź 23:19
wynik: skoro na początku pętli dodajesz do sumy 1/n a potem zwiększasz n o 1 to po każdym obiegu pętli
dla n w zmiennej suma masz Hn−1
30 paź 23:20
Saizou :
ale też inaczej, pętla do... while działa tak, że najpierw coś robi a potem sprawdza warunek
logiczny,
31 paź 07:58
wynik: tak, ale to nie zmienia tego o czym piszę
31 paź 11:12
31 paź 11:53