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

Losowanie 20 liczb losowych z przedziału określonego przez użytkownika (start, stop) zad.17

Ostatnio zmodyfikowano 2016-06-12 16:19
Autor Wiadomość
korek94
Temat założony przez niniejszego użytkownika
Losowanie 20 liczb losowych z przedziału określonego przez użytkownika (start, stop) zad.17
» 2016-06-12 15:55:12
cześć.

mam problem z zapisaniem zadania, które przekazuje dwie liczby (START,STOP) funkcji wylosuj(). Funkcja ta powinna wylosować 20 liczb z przedziału określonego przez użytkownika. program losuje 2x tyle liczb i nie mieszczą się one w przedziale.


C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>


int wylosuj( int a, int b )

{
   
    std::cout << "Wylosowanie  " <<(( std::rand() % b ) + a ) << std::endl;
    int liczba =( std::rand() % b ) + a;
   
}



int main()
{
   
   
    srand( time( NULL ) );
    int start;
    std::cin >> start;
    int stop;
    std::cin >> stop;
    int ile = 20;
    do
    {
        std::cout << wylosuj( start, stop ) << std::endl;
        ile--;
    } while( ile > 0 );
   
    return 0;
}
P-149062
Gibas11
» 2016-06-12 16:19:51
1. Błędny wzór na liczbę losową z przedziału.
2. Nie użyłeś return więc funkcja zwraca śmieci.
3. Po co wyświetlasz liczbę w funkcji skoro możesz ją po prostu zwrócić i wyświetlić w main?

Edit zmień pętlę na taką: while(ile-- > 0), twoja wykona się też dla ile = 0.
P-149063
« 1 »
  Strona 1 z 1