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

C++ - Duży lotek na funkcjach i tablicach

Ostatnio zmodyfikowano 2016-11-28 23:23
Autor Wiadomość
Mashnar
Temat założony przez niniejszego użytkownika
» 2016-11-28 23:05:59
Ok dziękuje wszystkim za pomoc , chyba działa poprawnie. :) Wstawiam kod może się komus przyda


C/C++
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <algorithm>
using namespace std;


void podaj( int liczby[ 6 ] )
{
   
    cout << "Witaj w kumulacji duzego lotka! " << endl;
    cout << " Na poczatku podaj swoje 6 liczb " << endl;
    for( int i = 0; i <= 5; i++ )
    {
        cin >> liczby[ i ];
    }
   
}
void losuj( int wylos[ 6 ] )
{
    int x;
    time_t t;
    srand(( unsigned ) time( & t ) );
   
   
    cout << "Nastepuje zwolnienie blokady" << endl;
    cout << " Wylosowane dzis liczby TO " << endl;
    for( int i = 0; i <= 5; i++ )
    {
        do {
            x = rand() % 49 + 1;
        }
        while(( wylos[ 0 ] == x ) ||( wylos[ 1 ] == x ) ||
        ( wylos[ 2 ] == x ) ||( wylos[ 3 ] == x ) ||( wylos[ 4 ] == x ) ||( wylos[ 5 ] == x ) );
       
        wylos[ i ] = x;
       
       
    }
    for( int j = 0; j <= 5; j++ )
    {
        cout << wylos[ j ] << ",";
       
    }
}
int policz( int liczby[ 6 ], int wylos[ 6 ] )
{
   
   
    int ilosc = 0;
    for( int i = 0; i <= 5; i++ ) {
        for( int j = 0; j <= 5; j++ ) {
            if( liczby[ i ] == wylos[ j ] ) ilosc++;
           
        }
       
    }
    if( ilosc == 0 )
         cout << "Trafiles 0 liczb" << endl;
   
    if( ilosc == 1 )
         cout << "Trafiles 1 liczbe" << endl;
   
    if( ilosc == 2 )
         cout << "Trafiles 2 liczby" << endl;
   
    if( ilosc == 3 )
         cout << "Trafiles 3 liczby" << endl;
   
    if( ilosc == 4 )
         cout << "Trafiles 4 liczby" << endl;
   
    if( ilosc == 5 )
         cout << "Trafiles 5 liczb" << endl;
   
    if( ilosc == 6 )
         cout << "Trafiles szostke !! " << endl;
   
   
   
    cout << endl;
   
}


int main()
{
   
    int liczby[ 6 ];
    int wylos[ 6 ];
    int traf;
    podaj( liczby );
    losuj( wylos );
   
    policz( liczby, wylos );
   
   
   
   
    return 0;
}
P-154235
mateczek
» 2016-11-28 23:23:06
wyzeruj te tablice, bo przy twoim systemie sprawdzania dubli jest źle !!!
C/C++
int policz( int liczby[], int wylos[] ) //cyfry w nawiasach kwadratowych są ignorowane
{
    int ilosc = 0;
    for( int i = 0; i <= 5; i++ ) {
        for( int j = 0; j <= 5; j++ ) {
            if( liczby[ i ] == wylos[ j ] ) ilosc++;
           
        }
       
    }
    cout << "Trafiles : " << ilosc << " liczb" << endl;
    return ilosc; // funkcja powinna zwracać wartość chyba że zmienisz "void policz( int liczby[], int wylos[] ) "
}

https://zapodaj.net/images​/e9fd829f9630f.png
P-154236
1 « 2 »
Poprzednia strona Strona 2 z 2