[ NaturePhoenix @ 28.02.2009. 22:35 ] @
Funkcija koja racuna
a) povrsinu pravokutnika
b)koliko je puta pozvana ova gore funkcija pod a),ali treba uraditi preko staticke varijable

Evo ja znam pod a),ali molio bih pomoc pod b) da netko uradi.

Code:

#include<stdio.h>
float pov(int duljina,int sirina)
{
      return duljina*sirina;
}

void main()
{
      int duljina,sirina;
      printf("Unesite duljinu i sirinu");
      scanf("%d %d",&duljina,&sirina);

      printf("Povrsina pravokutnika iznosi %f\n",pov8duljina,sirina));
}
[ Sapphire @ 28.02.2009. 22:46 ] @
Code:

#include<stdio.h>

static int brojPozvanihPuta = 0;

float pov(int duljina,int sirina)
{
      brojPozvanihPuta++;
      return duljina*sirina;
}

int main()
{
      int duljina,sirina;
      printf("Unesite duljinu i sirinu");
      scanf("%d %d",&duljina,&sirina);

      printf("Povrsina pravokutnika iznosi %f\n", pov(duljina,sirina));
      printf("Povrsina pravokutnika iznosi %f\n", pov(duljina,sirina));
      printf("Povrsina pravokutnika iznosi %f\n", pov(duljina,sirina));

      printf("Broj puta: %d\n", brojPozvanihPuta);
}
[ Eurora3D Team @ 06.03.2009. 02:31 ] @
Ovo static int je moglo i bez static :)
Mislim da mu je zadatak da ima lokalnu staticku varijablu i dve funkcije
Code:

#include<stdio.h>

int b(bool increment) 
{
    static int call; // lokalne staticke variable su 0 ako nije drugacije naznaceno
    if(increment)
        return call++;
    return call;
}

float a(float x,float y)
{
    b(true);
    return x * y;
}

int main()
{
    int n = 5; // broj ponavljanja
    float x,y;
    printf("Unesite dimenzije pravougaonika\n");
    scanf("%f %f",&x,&y);

    while(n--)
        printf("Povrsina pravougaonika je %f\n", a(x,y));
    printf("Funkcija je pozvana %d puta\n", b(false));

    return 0;
}