Koordinatensystem



  • Hi, ich bin in C ein Noob und bräuchte mal Hilfe bei der Erstellung eines Koordinatensystem, dass mir lineare Gleichungen nach dem Typ f(x)=m*x+b graphisch anzeigen soll. Dabei soll die Gerade mit * angezeigt werden und der Ursprung unten links auf dem Monitor sein. Könnte derjenige es auch verständlich kommentieren, da ich halt Noob bin. Hab schonmal angefangen, hier mein Abfang:

    #include<stdio.h>
    #include<conio.h>

    #define MAX_X 80
    #define MAX_Y 50

    void main()

    {
    int a,b,x,y,z,m;

    /***************************************************************************/

    {
    clrscr();

    printf("f(x)=m*x+b\n");

    printf("\nBitte die Steigung (m) eingeben: ");

    scanf("%d",&m);

    printf("\nBitte y-Achsenabschnitt (b) eingeben: ");

    scanf("%d",&b);

    }
    /***************************************************************************/

    for(a=0; a<MAX_X; a++)

    {

    printf("³\n");

    }

    /***************************************************************************/

    for(a=0; a<MAX_Y; a++)

    {

    printf("Ä");

    }

    /***************************************************************************/

    getch();

    }

    THX schonmal im Vorraus und bitte NICHT so kompliziert.



  • ich will ja nicht gemein sein, aber das ganze hinkt gewaltig: wenn du das auf der konsole ausgeben willst, wird das ziemlich schwierig. schau dir mal die improved console aus dem konsolenforum an, damit kann man glaub ich zeichen auf dem bildschirm mit (x,y) ansteuern. wenn du das hast, musst du eigentlich nur noch die funktionswerte für <bildschirmbreite> ausrechnen, und ausgeben.
    besser: du nimmst eine grafiklib deiner wahl, und pinselst die pixel in eine canvas.
    da du aber anscheinend anfänger bist, versuch das erste, oder nimm ne paintbox aus dem c++ builder



  • Das ist wohl eher kein mathematisches Problem.
    Wahrscheinlich bist Du in ANSI-C oder DOS/Win-Konsole besser aufgehoben.
    Wo willst Du hin? (ich verschieb Dich dann, bitte keinen neuen Thread aufmachen)



  • ..



  • ich schieb Dich jetzt mal zur Konsole


Log in to reply