Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Generowanie liczby z zakresu, zawsze większa od poprzedniej.


aroB

Rekomendowane odpowiedzi

Opublikowano

Gdzie napisałem że mi nie odpowiada? Jego rozwiązanie działa tak jak ma działać tylko że generowane liczby są albo za duże albo za małe. Dlatego napisałem że zamiast generować liczby z zakresu pomyślę nad zrobieniem wzoru który będzie obliczał liczby.. Początkowo myślałem że rozwiązanie pierwsze będzie działać no ale chyba nie będzie.

 

a próbowałeś zmienić zakres z 0-2500 do takiego jaki chciałeś?

Opublikowano

 

Gdzie napisałem że mi nie odpowiada? Jego rozwiązanie działa tak jak ma działać tylko że generowane liczby są albo za duże albo za małe. Dlatego napisałem że zamiast generować liczby z zakresu pomyślę nad zrobieniem wzoru który będzie obliczał liczby.. Początkowo myślałem że rozwiązanie pierwsze będzie działać no ale chyba nie będzie.

 

a próbowałeś zmienić zakres z 0-2500 do takiego jaki chciałeś?

 

 

tak, chodzi po prostu o to jak ustawie zakres 0-2500 to pierwsze np 10 liczb będzie takich jak ma być ale ostatnia liczba musi być już naprawdę wysoka i nie uzyskam tego takim zakresem, a jak zwiększę zakres do np 100000, 2000000 to wtedy liczby będą za duże..

 

wytłumaczę może bardziej o co chodzi bo cały czas piszę że potrzebuje wygenerować liczby z zakresu ale nie do końca wiadomo ocb więc....

 

Program może działać na dwa sposoby albo ma generować 255 liczb w zakresie 0, do 3,6kkkk albo 135 liczb w zakresie od 2kkk do 3,6kkk gdzie każda kolejna będzie wieksza od poprzedniej.. ale musi się zwiększać w taki sposób że np 

Pierwsza liczba to 100

kolejna to 700

następna to 1300

1700

2500

3900

5100

6200

7900

11000

19200

36000

 

czyli im większa liczba tym bardziej musi się zwiększać.

#EMERYTURA

Opublikowano

Dystrybuanta rozkladu poisona. Jednak on wylosuje Ci male liczby, ale po odpowiednim przemnożeniu wyjdzie to co bys chcial. Tak mysle....

Osobiście pomagam tylko na PW lub e-mail


-----------------------------------------------------------------


https://github.com/smietanka

Opublikowano

W takim razie, też zmieniłem trochę swój kod, żeby odpowiadał:

srand(time(NULL));
int liczba=0,d=0;
while(d==0)
{
int n = ( rand() % 2500) + 1;
if(n > liczba && n*1.2 <= 2500) 
{
liczba = n*1.2;
d = 1;
}}

@Sopelek997

Nie zgodzę się tylko z tym:

"rand(), srand() są zawsze stdlib.h, time jest w time.h"

Pobierz sobie Dev-C++ i sprawdź - żeby działało srand(time(NULL));, nie trzeba include'ować stdlib, a jeśli chodzi o time.h źle się wyraziłem - potrzebny jest po prostu dla wartości time, ale, jakby nie patrzeć, w DC++ potrzebna jest tylko ta, a nie stdlib :v

jw19e8.png

Opublikowano

 

 

Gdzie napisałem że mi nie odpowiada? Jego rozwiązanie działa tak jak ma działać tylko że generowane liczby są albo za duże albo za małe. Dlatego napisałem że zamiast generować liczby z zakresu pomyślę nad zrobieniem wzoru który będzie obliczał liczby.. Początkowo myślałem że rozwiązanie pierwsze będzie działać no ale chyba nie będzie.

 

a próbowałeś zmienić zakres z 0-2500 do takiego jaki chciałeś?

 

 

tak, chodzi po prostu o to jak ustawie zakres 0-2500 to pierwsze np 10 liczb będzie takich jak ma być ale ostatnia liczba musi być już naprawdę wysoka i nie uzyskam tego takim zakresem, a jak zwiększę zakres do np 100000, 2000000 to wtedy liczby będą za duże..

 

wytłumaczę może bardziej o co chodzi bo cały czas piszę że potrzebuje wygenerować liczby z zakresu ale nie do końca wiadomo ocb więc....

 

Program może działać na dwa sposoby albo ma generować 255 liczb w zakresie 0, do 3,6kkkk albo 135 liczb w zakresie od 2kkk do 3,6kkk gdzie każda kolejna będzie wieksza od poprzedniej.. ale musi się zwiększać w taki sposób że np 

Pierwsza liczba to 100

kolejna to 700

następna to 1300

1700

2500

3900

5100

6200

7900

11000

19200

36000

 

czyli im większa liczba tym bardziej musi się zwiększać.

Napisz może powoli i dokładnie co chcesz, bo to już drugietwoje podejście i w każdym nie dość że przykłady są różne to jeszcze odbiegają od treści.

 

 

 

@Sopelek997

Nie zgodzę się tylko z tym:

"rand(), srand() są zawsze stdlib.h, time jest w time.h"

Pobierz sobie Dev-C++ i sprawdź - żeby działało srand(time(NULL));, nie trzeba include'ować stdlib, a jeśli chodzi o time.h źle się wyraziłem - potrzebny jest po prostu dla wartości time, ale, jakby nie patrzeć, w DC++ potrzebna jest tylko ta, a nie stdlib :v

ojejku

próbowałeś samo srand(10)?

time.h może includować stdlib.h, dlatego nie trzeba pewnie includować ręcznie

http://en.cppreference.com/w/c/chrono/time

http://en.cppreference.com/w/c/numeric/random/srand

Opublikowano

@Sopelek977

Pewnie by zadziałało, ale nie zmienia to faktu, że nie trzeba w DC++ include'ować stdlib, nawet, jeśli chciałoby się użyć srand(10).

jw19e8.png

Opublikowano
Pewnie by zadziałało, ale nie zmienia to faktu, że nie trzeba w DC++ include'ować stdlib, nawet, jeśli chciałoby się użyć srand(10).

 

Teraz zbaczamy z tematu

 

 

@MistrzMaster

Jeśli chodzi o rand(), srand(), itp. w przypadku niektórych środowisk (np. Dev-C++) występuje w time.h :v

Nie, nie występuje

Opublikowano

@Sopelek977 Zwracam honor, że pomyliłem się z tym, że trzeba include'ować time.h w DC++, aczkolwiek ty również się pomyliłeś, że potrzebny jest w tym środowisku do tego stdlib.h, więc tym akcentem proponuję zakończenie wymiany zdań :v

jw19e8.png

Opublikowano
aczkolwiek ty również się pomyliłeś, że potrzebny jest w tym środowisku do tego stdlib.h

Takie gdybanie na temat konkretnego środowiska jest bez sensu. Po to jest standard, żeby jednoznacznie stwierdzić odpowiedź. A standard mówi, że time.h nie musi includować cstdlib.h

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...