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

Problem z kodem, rozdzial 19...

Ostatnio zmodyfikowano 2017-08-17 16:59
Autor Wiadomość
Laplance
Temat założony przez niniejszego użytkownika
Problem z kodem, rozdzial 19...
» 2017-08-17 12:46:38
Napisalam kod w funkcjach do rozdzialu 19. Problem w tym,ze kompilator nic nie widzi, a sam kod po odpaleniu sie wylacza...


#include <cstdlib>
#include <iostream>
#include <ctime>
using namespace std;
void wylosujLiczby(int tablica [999],int ile)
{
    srand(time(NULL));
    ile=0;
    do
    {
        tablica[ ile] = ((rand()%7)+4);

        ile++;
    }
    while(ile!=999);
}

void wypiszLiczby(int tablica[999],int ile)
{
    do
    {
        cout<<tablica[ile]<<endl;
        ile++;
    }
    while (ile!=999);
}

int obliczSume(int ile,int tablica [999],int suma)
{
    ile=0;
    do
    {
        suma += tablica[ile];
        ile++ ;
    }
    while(ile!=999) ;

}



int main()
{
    int tablica[ 999 ];
    int ile;
    int suma;
    wylosujLiczby( tablica, ile );
    obliczSume(  ile,tablica,suma);
    cout << "Suma liczb wynosi: " << suma << endl;
    return 0;

}
P-164053
mateczek
» 2017-08-17 15:21:24
sumę do obliczeń przekaż przez referencje lub zwróć wartość. kod ma sporo błędów logicznych. Połatałem go.
C/C++
#include <iostream>
#include <ctime>
using namespace std;
void wylosujLiczby( int tablica[], int ile )
{
   
    for( int i = 0; i < ile; i++ ) {
        tablica[ i ] =(( rand() % 7 ) + 4 );
    }
}

void wypiszLiczby( int tablica[], int ile )
{
    for( int i = 0; i < ile; i++ )
         cout << tablica[ i ] << endl;
   
}

int obliczSume( int ile, int tablica[] )
{
    int suma = 0;
    for( int i = 0; i < ile; i++ ) {
        suma += tablica[ i ];
    }
   
    return suma;
}



int main()
{
    srand( time( NULL ) );
    int tablica[ 999 ];
    int ile = 5;
    wylosujLiczby( tablica, ile );
    wypiszLiczby( tablica, ile );
    int suma = obliczSume( ile, tablica );
    cout << "Suma liczb wynosi: " << suma << endl;
    return 0;
   
}
P-164054
maly7
» 2017-08-17 15:22:11
W jakim sensie kompilator nic nie widzi? Na pewno kompilujesz dobry plik?

Po za tym, masz kilka błędów w kodzie.
int obliczSume( int ile, int tablica[ 999 ], int suma )

Między innymi:
-Funkcja nic nie zwraca a powinna
-Po co przekazujesz wartość ile skoro ją i tak na początku zerujesz.
-W mainie używasz zmiennej ile ale nie jest ona zainicjalizowana, tak samo suma.
P-164055
Anim
» 2017-08-17 15:54:49
Fakt, że program się wyłącza zapewne spowodowane jest tym, że kończy działanie ^^

dodaj getch() w mainie, przed return 0.
P-164058
Laplance
Temat założony przez niniejszego użytkownika
» 2017-08-17 16:59:10
Chcialam ominac petle for, ale macie racje XDXDXD Zawsze gdy cos napisze trudno mi to zmienic XD temat uwazam za zamkniety
P-164063
« 1 »
  Strona 1 z 1