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

Pomoc z programem

Ostatnio zmodyfikowano 2010-12-12 19:15
Autor Wiadomość
Tymek
Temat założony przez niniejszego użytkownika
Pomoc z programem
» 2010-12-11 19:58:51
Treść zadania

Dana jest tablica jednowymiarowa liczb rzeczywistych i pewien parametr a. Napisz program, który na
podstawie tych danych utworzy 3 nowe tablice zawierające odpowiednio:
· liczby większe od a,
· mniejsze od a
· równe a.
Podaj także ich liczebności. Użyj funkcji



C/C++
#include <iostream>
using namespace std;

int ile_wiekszych( float a, float[], int k ); //przeszukuje tablice  , int k potrzebne jest na wejsciu
int ile_mniejszych( float a, float[], int k ); //przeszukuje tablice  , int k potrzebne jest na wejsciu
int ile_rownych( float a, float[], int k ); //przeszukuje tablice  , int k potrzebne jest na wejsciu
void przepisz_wieksze( float a, float[], wieksze[], int k );
void przepisz_mniejsze( float a, float[], mniejsze[], int k );
void przepisz_rowne( float a, float[], rowne[], int k );

main() //
{
    int k;
    float a;
    cin >> k;
    cin >> a;
    float * T = new int[ k ];
    //wypenic tablice
    for( int i = 0; i < k; i++ )
    {
        cin >> T[ i ];
    }
    //deklarujesz wieksze , mniejsze , rowne
    int w = ile_wiekszych( a, T, k ); //bierz adres 1 elementu
    int m = ile_mniejszych( a, T, k );
    int r = ile_rownych( a, T, k );
    //
    float * wieksze = new float[ wieksze ];
    float * mniejsze = new float[ mmniejsze ];
    float * rowne = new float[ rowne ];
   
   
   
   
    int ile_wiekszych( float a, float[], int k ) //przeszukuje tablice  , int k potrzebne jest na wejsciu
    {
        int l;
        for( int i, i < k, i++ )
        {
            if( T[ i ] > a )
            {
                l++;
            } }
        return l;
    }
    int ile_mniejszych( float a, float[], int k ) //przeszukuje tablice  , int k potrzebne jest na wejsciu
    {
        int l;
        for( int i, i > k, i++ )
        {
            if( T[ i ] > a )
            {
                l++;
            } }
        return l;
    }
    int ile_rownych( float a, float[], int k ) //przeszukuje tablice  , int k potrzebne jest na wejsciu
    {
        int l;
        for( int i, i == k, i++ )
        {
            if( T[ i ] > a )
            {
                l++;
            } }
        return l;
    }
   
    void przepisz_wieksze( float a, float[], wieksze[], int k )
    {
        j = 0
        for( int i = 0, i < k, i++ )
        {
            if( T[ i ] > a )
            {
                wieksze[ j ] == T[ i ];
                j++
            }
        }
        void przepisz_rowne( float a, float[], rowne[], int k )
        {
            j = 0
            for( int i = 0, i < k, i++ )
            {
                if( T[ i ] == a )
                {
                    wieksze[ j ] == T[ i ];
                    j++
                }
            }
            void przepisz_mniejsze( float a, float[], mniejsze[], int k )
            {
                j = 0
                for( int i = 0, i < k, i++ )
                {
                    if( T[ i ] < a )
                    {
                        wieksze[ j ] == T[ i ];
                        j++
                    }
                }
               
               
               
               
                cout << "elemnenty tablicy" << endl;
            }
            system( "pause" )
        }


prograam ma sporo błędów , może mi ktoś pomóc z tym?
Nie wiem dlaczego ale już błędy są od początku że funkcja
C/C++
void przepisz_wieksze( float a, float[], wieksze[], int k );
void przepisz_mniejsze( float a, float[], mniejsze[], int k );
void przepisz_rowne( float a, float[], rowne[], int k );
nie jest zadeklarowana
P-25077
DejaVu
» 2010-12-11 20:30:40
A to co to jest?
, wieksze[],
P-25078
Drraven
» 2010-12-11 20:33:01
hym...
źle zdefiniowana tablica - chyba ;p
może chodziło mu o new[] ?
P-25079
Tymek
Temat założony przez niniejszego użytkownika
» 2010-12-11 20:33:58
Tablice dynamiczne z
C/C++
float * wieksze = new float[ wieksze ];
float * mniejsze = new float[ mniejsze ];
float * rowne = new float[ rowne ];
P-25080
ison
» 2010-12-11 20:42:17
@up genialne, deklarujesz tablicę dynamiczną o rozmiarze wskaźnika :)
1)
Nie wiem dlaczego ale już błędy są od początku że funkcja
C/C++
void przepisz_wieksze( float a, float[], wieksze[], int k );
void przepisz_mniejsze( float a, float[], mniejsze[], int k );
void przepisz_rowne( float a, float[], rowne[], int k );
raz deklarujesz zmienną bez nazwy a raz zmienną bez typu i się dziwisz że nie działa?
2)main powinien zwracać int
3)nie możesz deklarować funkcji w funkcji
P-25082
Tymek
Temat założony przez niniejszego użytkownika
» 2010-12-12 19:15:59
C/C++
#include <iostream>
using namespace std;

int ile_wiekszych( float a, float T[], int k ); //przeszukuje tablice  , int k potrzebne jest na wejsciu
int ile_mniejszych( float a, float T[], int k ); //przeszukuje tablice  , int k potrzebne jest na wejsciu
int ile_rownych( float a, float T[], int k ); //przeszukuje tablice  , int k potrzebne jest na wejsciu
void przepisz_wieksze( float a, float T[], float * wieksze[], int k );
void przepisz_mniejsze( float a, float T[], float * mniejsze[], int k );
void przepisz_rowne( float a, float T[], float * rowne[], int k );
void wyswietl_wieksze( float wieksze[], int k );
void wyswietl_mniejsze( float mniejsze[], int k );
void wyswietl_rowne( float rowne[], int k );

main() //
{
    int k;
    float a;
    cin >> k;
    float * T = new float[ k ];
    //wypenic tablice
    for( int i = 0; i < k; i++ )
    {
        cin >> T[ i ];
    }
   
    cout << "elemnenty tablicy :";
    cin >> a;
    //deklarujesz wieksze , mniejsze , rowne
    int w = ile_wiekszych( a, T, k ); //bierz adres 1 elementu
    int m = ile_mniejszych( a, T, k );
    int r = ile_rownych( a, T, k );
    //
    float * wieksze[ w ];
    float * mniejsze[ m ];
    float * rowne[ r ];
   
    przepisz_wieksze( a, T, wieksze, k );
    przepisz_rowne( a, T, rowne, k );
    przepisz_mniejsze( a, T, mniejsze, k );
   
    wyswietl_wieksze( * wieksze, w );
    wyswietl_mniejsze( * mniejsze, m );
    wyswietl_rowne( * rowne, r );
   
    system( "pause" );
}


int ile_wiekszych( float a, float T[], int k ) //przeszukuje tablice  , int k potrzebne jest na wejsciu
{
    int l;
    for( int i; i < k; i++ )
    {
        if( T[ i ] > a )
        {
            l++;
        }
    }
    return l;
}

int ile_mniejszych( float a, float T[], int k ) //przeszukuje tablice  , int k potrzebne jest na wejsciu
{
    int l;
    for( int i; i > k; i++ )
    {
        if( T[ i ] > a )
        {
            l++;
        }
    }
    return l;
}

int ile_rownych( float a, float T[], int k ) //przeszukuje tablice  , int k potrzebne jest na wejsciu
{
    int l;
    for( int i = 0; i < k; i++ )
    {
        if( T[ i ] == a )
        {
            l++;
        }
    }
    return l;
}

void przepisz_wieksze( float a, float T[], float * wieksze[], int k )
{
    int j = 0;
    for( int i = 0; i < k; i++ )
    {
        if( T[ i ] > a )
        {
            * wieksze[ j ] == T[ i ];
            j++;
        }
    }
}

void przepisz_rowne( float a, float T[], float * rowne[], int k )
{
    int j = 0;
    for( int i = 0; i < k; i++ )
    {
        if( T[ i ] == a )
        {
            * rowne[ j ] == T[ i ];
            j++;
        }
    }
}

void przepisz_mniejsze( float a, float T[], float * mniejsze[], int k )
{
    int j = 0;
    for( int i = 0; i < k; i++ )
    {
        if( T[ i ] < a )
        {
            * mniejsze[ j ] == T[ i ];
            j++;
        }
    }
}

void wyswietl_wieksze( float wieksze[], int k ) {
    for( int i = 0; i < k; i++ )
    {
        cout << wieksze[ i ] << " ";
    }
}

void wyswietl_mniejsze( float mniejsze[], int k ) {
    for( int i = 0; i < k; i++ )
    {
        cout << mniejsze[ i ] << " ";
    }
}

void wyswietl_rowne( float rowne[], int k ) {
    for( int i = 0; i < k; i++ )
    {
        cout << rowne[ i ] << " ";
    }
}

troche to poprawiłem ale nadal nie działa  . coś jest nie tak z tymi wskaźnikami,
P-25106
« 1 »
  Strona 1 z 1