c++ Czy liczby w tablicy sa ustawione w porządku rosnącym?
Ostatnio zmodyfikowano 2016-02-02 23:33
Barnak Temat założony przez niniejszego użytkownika |
c++ Czy liczby w tablicy sa ustawione w porządku rosnącym? » 2016-02-02 20:20:21 Witam funkcja mająca to rozwiązać działa nieprawidłowo czy ktoś mógłby rzucić na to okiem? #include <iostream> #include <cstdlib> #include <ctime>
using namespace std;
void generuj( int n, int t[] ) { for( int i = 0; i < n; i++ ) t[ i ] = rand() % 100; }
void wypisz( int n, int t[] ) { for( int i = 0; i < n; i++ ) cout << t[ i ] << endl; }
bool czy_rosnacy( int n, int t[] ) { for( int i = 0; i < n - 1; i++ ) { if( t[ i ] < t[ i + 1 ] ) return true; else return false; } }
int main()
{ int n; cout << "podaj wymiar tablicy" << endl; cin >> n; int t[ n ]; srand( time( NULL ) ); generuj( n, t ); wypisz( n, t ); if( czy_rosnacy( n, t ) == true ) cout << "liczby podane sa w porzadku rosnacym" << endl; else cout << "liczby nie sa podane w porzadku rosnacym" << endl; return 0; }
|
|
Rashmistrz |
» 2016-02-02 20:25:49 w funkcji czy_rosnacy sprawdzana jest wyłącznie para pierwszych elementów.
Zwrócić prawdę powinieneś po zakończeniu pętli, a zwrócić tam fałsz gdy zostanie znaleziona nieprawidłowość. |
|
Barnak Temat założony przez niniejszego użytkownika |
» 2016-02-02 21:06:37 Dzięki może teraz uda się to rozwiązać:) |
|
kmlkamilek |
» 2016-02-02 23:33:07 bool czy_rosnacy( int n, int t[] ) { for( int i = 0; i < n - 1; i++ ) { if( t[ i ] < t[ i + 1 ] ) continue; else return false; } return true; }
Spróbuj tego. Prześledź jak działa. Porównaj ze swoim. Wyciągnij wnioski. |
|
« 1 » |