problem s procesi

kaj mogoče bi mi znal kdo pomagat pri tej nalogi. Besedilo je takšno
Napišite program z imemom zfib.c, kjer oče zaporedno ustvari n sinov (n podamo kot prvi argument programa) in počaka, da se vsi sinovi končajo. V prvem sinu izračunamo in izpišemo (n-1)-ti element fibonaccijevega zaporedja, v drugem (n-2)-ti element, ... in v zadnjem (0)-ti element fibonaccijevega zaporedja. Uporabite rekurzivno različico funkcije fibonacci.

Komentarji

  • Cube Član Ubuntu.si
    #include <stdio.h>

    int fibb(int n){
    if((n==1) || (n==2))
    return 1;
    else
    return (fibb(n-1)+fibb(n-2));
    }

    int main(){
    int n,j;

    printf(\"Vnesi stevilo n[n>0]\n\");
    scanf(\"%d\",&n);

    for(j=1;j<=n;j++)
    printf(\"%d \",fibb(j));

    printf(\"\n\");

    return 0;
    }

    najbrz rabis neki tazga,

    lp,cube
  • tudi jaz se pravkar ubadam s to nalogo. sem probal ta programček skompajlat Cube pa javi neke napake
    vfib.c:13: warning: incompatible implicit declaration of built-in function ‘printf’
    vfib.c:14: warning: incompatible implicit declaration of built-in function ‘scanf’
  • Cube Član Ubuntu.si
    SInDrOoM je dejal/-a:
    tudi jaz se pravkar ubadam s to nalogo. sem probal ta programček skompajlat Cube pa javi neke napake
    vfib.c:13: warning: incompatible implicit declaration of built-in function ‘printf’
    vfib.c:14: warning: incompatible implicit declaration of built-in function ‘scanf’

    na zacetku si pozabu dat #include

    lp,cube
  • jst imam isti problem s tem error-om.
    Pa sem includal na vrhu stdio.h

    edino kar sumim je ker poganjam Ubuntuja preko Live CD, mogoče treba še kej omogočit ?

    tnx,
    lp
  • Cube Član Ubuntu.si
    uredil/-a 20. April, 2008
    ce si uporabnik windows sistema nalozi devc++. gtk kompajler za win.
    http://sourceforge.net/project/downloading.php?groupname=dev-cpp&filename=devcpp4.zip&use_mirror=kent
    in poskusaj pognat program. Definitivno bi moral delovati ker ni nevem kaksna carovnija.
    za live pa nevem k nisem se nikoli poizkusu vendar dvomim.

    lp,cube
  • Mene pa zanima kaksna je razlika če so navodila za (vzporedno in zaporedno) in kako bi zgledalo vzporedno. Napišite program z imemom zfib.c, kjer oče vzporedno ustvari n sinov .

    LP,
    Hvala
  • napsy Član Ubuntu.si
    uporabiš nitenje (glej posix threads)
  • int fibonacci(int a)
    {
    if((a==1) || (a==2))
    return 1;
    else
    return (fibonacci(a-1)+fibonacci(a-2));
    }


    int main(int argc, char **argv)
    {
    if(argc>1)
    {
    int v,i;
    int stevec=atoi( (argv[1]) );
    for(i=1;i<=stevec;i++)
    {
    if (v=fork()==0)
    {
    printf("Fib(%d", stevec- i);
    printf(") = %d", fibonacci(stevec-i+1));
    printf("\n");
    exit(EXIT_SUCCESS);
    }
    else
    {
    wait(&v);
    }
    }
    }
    else
    {
    printf("Podati morate parameter n!\n");
    }
    return 0;
    }

    Takole bi naj zgledalo Zaporedno.
    To pač gre seštevanje Fibonaccija po vrsti.

    Mene pa zanima kako spremenim da bo vzporedno.
    To je primer izpisa za fib:38
    Fib(9) = 55
    Fib(38) = 63245986
    Fib(8) = 34
    Fib(7) = 21
    Fib(6) = 13
    Fib(5) = 8
    Fib(4) = 5
    Fib(3) = 3
    Fib(2) = 2
    Fib(1) = 1
    Fib(0) = 1
    Fib(36) = 24157817
    Fib(37) = 39088169
    .
    .
    .
    .
    LP
    Dejan
  • A mi zna kdo pomagat??
Za komentiranje se prijavite ali pa se vpišite.