Hirdetés

Új hozzászólás Aktív témák

  • WonderCSabo
    félisten

    Hello!
    Lenne 1 kis problemam kene 1 programot irjak ami kiszamolja 1 max 500 cm sugaru kor teruletet es keruletet a kovetkezo feltetelek alapjan:
    -hasznalj fajlt
    -hasznalj sajat fuggvenyt
    Probalkoztam de sajnos folyton hibauzenetet ir ki:

    using namespace std;
    float p=3.14;
    void f(float x)
    {
    float a,u;
    a=p*x*x;
    u=2*p*x;
    }
    void ir ()
    {
    float x;
    FILE*f;
    f=fopen("eredmeny.txt","w");
    fprintf(f,"%f ",f(x));
    fclose(f);
    }
    int main()
    {
    float x;
    char cont= 'i';
    do{
    printf ("\n sugar: ");
    scanf ("%f",&x);
    if (x>500) printf ("hiba");
    else
    {
    f(x);
    ir ();
    }
    printf("\n flytatod ? valaszolj I vagy N: ");
    cont=getche();
    }while ((cont=='I')||(cont=='i'));
    printf("\n\nnyoj meg barmit a befejezeshez");
    getch();
    return 0;
    }

    Esetleg tudna valaki segiteni hogy mi a problema?Elore is koszi.

    #include <stdio.h>
    /* C - ben nincs namespace,
    includeolni viszont itt is kell... */

    const float p = 3.14;

    void f(const float x, float* const u, float* const a)
    {
    /*
    az itt deklarát lokális változókat
    nem látja az ir fv, ezárt át kell adni módosításra is
    */

    *u = p * x * x;
    *a = 2 * p * x;
    }

    void ir (const float u, const float a) /* át kell adni ezeket - et, a main-beli
    lokális a, u az ir - bõl nem látszik */
    {
    FILE* file; /* ha ez is f-nek hívod, bekavar az u.a.
    nevû fv - el... */
    file = fopen("eredmeny.txt","w");
    fprintf(file, "terulet: %f cm2 kerulet: %f cm", u, a);
    fclose(file);
    }
    int main()
    {
    float x, a, u;
    char cont = 'i';
    char c;
    do
    {
    printf ("\n sugar: ");
    scanf ("%f", &x);
    scanf("%c", &c); /* különben a getchar a bufferben lévő
    \n - t olvassa be, és emiatt terminál a ciklus*/
    if (x < 1 || x > 500) printf ("hiba"); /* a feltételed szerint 1 - nél se lehet kisebb */
    else
    {
    f(x, &u, &a);
    ir (u, a);
    }
    printf("\n flytatod ? valaszolj I vagy N: ");
    cont = getchar(); /* a fv. neve getchar... */
    }
    while ((cont == 'I') || (cont == 'i'));
    printf("\n\nnyoj meg barmit a befejezeshez");
    getchar();
    return 0;
    }

Új hozzászólás Aktív témák