Problem z rysownikiem funkcji liniowej
Ostatnio zmodyfikowano 2016-10-02 01:24
Szustarol Temat założony przez niniejszego użytkownika |
Problem z rysownikiem funkcji liniowej » 2016-10-01 21:45:50 witam! napisalem prosty program do rysowania funkcji liniowych, niestety program nie chce rysowac funkcji malejacych #include <iostream> #define PUNKT_ZERO_Y 13
using namespace std;
int main() { int a, b; cout << "f(x) = ax + b" << endl; cout << "a: "; cin >> a; cout << "b: "; cin >> b; bool ifdraw[ 79 ][ 25 ]; for( int i = 0; i < 80; i++ ) for( int j = 0; j < 25; j++ ) ifdraw[ i ][ j ] = false; int c; int yres[ 79 ]; for( int i = - 39; i < 40; i++ ) { yres[ i + 39 ] = a * i + b; yres[ i + 39 ] /= 2; cout << yres[ i + 39 ] << endl; } int ctr = 0; while( true ) { if( yres[ ctr ] < - 11 ) { ctr++; continue; } else if( yres[ ctr ] >= 13 ) break; if( ctr > 79 ) break; if( yres[ ctr ] >= 0 ) { ifdraw[ ctr ][ 12 - yres[ ctr ] ] = true; cout << "Setting true for position X:" << ctr << ", value: " << 12 - yres[ ctr ] << endl; } else { ifdraw[ ctr ][ 12 +- 1 * yres[ ctr ] ] = true; cout << "Setting true for position X:" << ctr << ", value: " << 12 +- 1 * yres[ ctr ] << endl; } ctr++; } for( int i = 0; i < 25; i++ ) { for( int j = 0; j < 80; j++ ) { if( ifdraw[ j ][ i ] ) cout << 'X'; else cout << ' '; } cout << endl; } return 0; }
w przypadku funkcji malejacej po prostu nic nie wypisuje chociaz wspolzedne sa dobre prosze o mozliwa pomoc |
|
kmlkamilek |
» 2016-10-02 01:24:03 Nie pasuje mi tu jedna rzecz: bool ifdraw[ 79 ][ 25 ]; for( int i = 0; i < 80; i++ ) for( int j = 0; j < 25; j++ ) ifdraw[ i ][ j ] = false;
Tutaj program się sypie. Tablica 79 na 25, w pętli z w ostatnim obiegu pętli z licznikiem i, odwołasz się do nieistniejącego indeksu tablicy. |
|
« 1 » |