Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

C Liczby losowanie 3 kolejnych liczb z przedziału

Ostatnio zmodyfikowano 2018-11-16 00:26
Autor Wiadomość
pekfos
» 2018-11-10 20:13:48
Mam na myśli żebyś wylosował 3 pierwsze liczby jeszcze przed pętlą.
P-172828
gam3
Temat założony przez niniejszego użytkownika
» 2018-11-12 23:30:19
Dzieki wielkie za podpowiedzi. Nie wiem czemu ciągle myślałem nad losowaniem w jednej zmiennej XD
C/C++
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    int los, los2, los3;
    srand( time( NULL ) );
   
    los = rand() % 11;
    los2 = rand() % 11;
    los3 = rand() % 11;
    while( los != 2 || los2 != 3 || los3 != 4 )
    {
        los = rand() % 11;
        los2 = rand() % 11;
        los3 = rand() % 11;
        printf( "%3d\n", los );
        printf( "%3d\n", los2 );
        printf( "%3d\n", los3 );
    }
   
   
   
   
    return 0;
}
P-172846
pekfos
» 2018-11-13 00:03:42
To nie jest poprawne rozwiązanie. Dla losowych liczb 4 1 2 3 8 0 będziesz losować dalej, chociaż powinieneś był zatrzymać się na 3, czyli na czwartej wylosowanej liczbie. Ty z jakiegoś powodu losujesz zawsze po 3 liczby.
P-172847
gam3
Temat założony przez niniejszego użytkownika
» 2018-11-13 00:50:26
Program miał losować liczby dopóki nie wylosuję sekwencji liczb, czyli 2 3 4 i ten kod to spełnia. W dokładnej kolejności, a nie gdy w ciągu znajdą się 2, 3 i 4.
P-172848
pekfos
» 2018-11-13 09:26:37
Czyli twoim zdaniem w 4 1 2 3 8 0 nie ma sekwencji trzech kolejnych liczb naturalnych?
P-172849
gam3
Temat założony przez niniejszego użytkownika
» 2018-11-13 12:16:16
A no tak to napisałeś jak by chodziło o 2,3,4 dlatego nie zauważyłem 1,2,3. Ale program zatrzymuje się na ostatniej liczbie z sekwencji. Mógłbyś pokazać, jak ty bys to napisał ?
P-172851
gam3
Temat założony przez niniejszego użytkownika
» 2018-11-13 17:01:05
Dobra źle zrozumiałem polecenie. XD
C/C++
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    int los, poprzednia1 = - 1, poprzednia2 = - 1;
   
   
    srand( time( NULL ) );
    while( los - 1 != poprzednia1 || poprzednia1 - 1 != poprzednia2 )
    {
        poprzednia2 = poprzednia1;
        poprzednia1 = los;
       
        los = rand() % 11;
        printf( "%3d\n", los );
       
       
    }
    return 0;
}
P-172852
pekfos
» 2018-11-13 17:42:17
Tak zatrzymasz się na wylosowaniu 0 1.
P-172853
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona