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

Losowanie bez powtórzeń - Program rozwiązujący zadanie

Ostatnio zmodyfikowano 2015-10-29 19:25
Autor Wiadomość
Lich555
Temat założony przez niniejszego użytkownika
» 2015-10-28 20:57:06
Wcześniej myślałem, że jak napiszemy false, to nam powinno pominąć if( iLiczba == tab[ i ] ) (bo to jest true).
Teraz rozumiem to tak, że jak if( iLiczba == tab[ i ] ) jest true, czyli wylosowana liczba jest równa liczbie w tablicy to wtedy pokaże się true. Dobrze to rozumiem? :D
P-139309
carlosmay
» 2015-10-28 21:44:19
if( iLiczba == tab[ i ] ) jest true, czyli wylosowana liczba jest równa liczbie w tablicy to wtedy pokaże się true
 Program wyjdzie z funkcji zwracając z niej do miejsca wywołania wartość true , czyli po sprawdzeniu danych przekazanych do funkcji,
wartość zwrócona "zastępuje" wywołanie funkcji.

Jeśli chodzi o kilka returnów w funkcji, to musisz "obwarować" wartością zwracaną wszystkie możliwe punkty powrotu z funkcji, aby uniknąć niezdefiniowanych zachowań.
P-139311
Lich555
Temat założony przez niniejszego użytkownika
» 2015-10-29 19:25:20
Co do zadania domowego nr 1. Daleko od poprawnego działania jest mój program? :P

C/C++
#include <iostream>
#include <cstdlib>
#include <time.h>

using namespace std;

bool czybyla( int iKac, int iiLiczba[] )
{
    int i = 0;
    if( iKac <= i )
         return false;
   
    do
    {
        if( iiLiczba[ i ] == iKac )
             return true;
       
        i++;
    } while( i < 2 );
   
    return false;
}

int los( int iLiczba[] )
{
    return( iLiczba[ rand() % 2 ] );
}

int main()
{
    srand( time( NULL ) );
    int liczba[ 3 ];
    int i = 0;
    int wylos = 0;
   
    cout << "Podaj 3 liczby" << endl;
    for( int i = 0; i < 3; i++ )
         cin >> liczba[ i ];
   
    cout << endl;
    int kac = los( liczba );
    do
    {
        if( czybyla( kac, liczba ) == false )
             liczba[ wylos ] = kac;
       
        cout << kac << endl;
       
        wylos++;
    } while( wylos < 2 );
   
    return 0;
}
P-139348
1 « 2 »
Poprzednia strona Strona 2 z 2