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

Liczby pseudolosowe

Ostatnio zmodyfikowano 2015-12-17 16:53
Autor Wiadomość
Bonhart
Temat założony przez niniejszego użytkownika
Liczby pseudolosowe
» 2015-12-17 16:42:04
C/C++
#include <iostream>
#include <cmath>
#include <ctime>
#include <cstdlib>
using namespace std;

void wczyt( int t[] )
{
    for( int i = 0; i < 20; i++ )
         t[ i ] =( rand() % 50 ) + 1;
   
}
bool pierwsza( int a )
{
    if( a == 2 ) return true;
   
    if( a == 1 || a % 2 == 0 ) return false;
   
    for( int i = 2; i <= sqrt( a ); i++ )
         if( a % i == 0 ) return false;
   
    return true;
}
void sprawdzanie( int t[] )
{
    cout << "Liczby pierwsze " << endl;
    int c = 0;
    for( int i = 0; i < 20; i++ )
    if( pierwsza( i ) )
    {
        cout << i << " ";
        c++;
    }
    cout << endl;
    cout << "Z wylosowanych licz jest " << c << " liczb pierwszych " << endl;
}
int main()
{
    srand( time( NULL ) );
    int t[ 20 ];
    wczyt( t );
    sprawdzanie( t );
    return 0;
}
P-142093
ArgonZapan
» 2015-12-17 16:46:12
C/C++
for( int i = 0; i < 20; i++ )
     t[ i ] =( rand() % 50 ) + 1;
P-142095
Bonhart
Temat założony przez niniejszego użytkownika
» 2015-12-17 16:50:28
Nie pomogło .
A w pętli for(int i=1;i<=20;i++) jest dobrze dobrana .
P-142096
ArgonZapan
» 2015-12-17 16:53:48
C/C++
void wczyt( int t[] )
{
    for( int i = 1; i <= 20; i++ )
         t = rand() % 50 + 1;
   
}

nie sprawdzałem w kompilatorze, ale robisz tablice 20 elementów, o indeksach od 0 do 19, więc pętla for jest na bank źle zrobiona. Druga sprawa, to nie odwołujesz się do elementów tablicy, a do wskaźnika "t". Spróbuj wypisać każdy element tablicy.
P-142097
« 1 »
  Strona 1 z 1