C problem
Prikazujem rezultate 1 do 2 od 2

Tema: C problem

  1. #1
    Početnik C BLUE (avatar)
    Učlanjen
    07.11.2004.
    Lokacija
    Beograd
    Poruke
    45
    Reputaciona moć
    0

    Podrazumevano C problem

    Ja sam skoro poceo da ucim C. Presao sam mali deo knjige pa sam hteo da pokusam da napravim neki mali programcic koji prikazuje neku tabelicu.
    Medjutim izgleda da postoji mnogo laksi nacin da se ovo napravi?????? Mislim kod funkcionise ali mozda je mogao da bude dosta manji????

    #include <stdio.h>
    float procenti1,procenti2,procenti3,procenti4,procenti5, procenti6,procenti7
    ,procenti8,procenti9,procenti10;
    long unos1,unos2,unos3,unos4,unos5,unos6,unos7,unos8,un os9,unos10;
    long snaga;
    int dnevno1,dnevno2,dnevno3,dnevno4,dnevno5,dnevno6,dn evno7,dnevno8,dnevno9
    ,dnevno10,dana;
    long brojac_kat;
    int kategorija;
    long ukupno1,ukupno2,ukupno3,ukupno4,ukupno5,ukupno6,uk upno7,ukupno8,ukupno9
    ,ukupno10;
    int prom,brojac1,ostatak;

    int punjenje,obavljeno;
    char unos;
    char rec1[15],rec2[15],rec3[15],rec4[15],rec5[15],rec6[15],rec7[15],rec8[15]
    ,rec9[15],rec10[15];
    int duzina1,duzina2,duzina3,duzina4,duzina5,duzina6,du zina7,duzina8,duzina9
    ,duzina10;
    int tab_bro,inter_bro,prekidac,brojac_za_unos;
    int kontrola,kate_zelja;



    izracunavanje();
    tabela();
    unos_podataka();
    promene();
    uzmi();
    dodavanje_kategorija();

    main()
    {
    prekidac=2;
    if (prekidac==1)
    {
    kategorija=4;
    uzmi();
    tabela();
    goto test_izlaz;
    }

    uzmi();
    unos_podataka();
    izracunavanje();
    tabela();
    krug:
    dodavanje_kategorija();
    promene();
    izracunavanje();
    tabela();

    goto krug;
    test_izlaz:
    for (;;


    }


    izracunavanje()
    {
    ukupno1=unos1;
    ukupno2=unos1+unos2;
    ukupno3=unos1+unos2+unos3;
    ukupno4=unos1+unos2+unos3+unos4;
    ukupno5=unos1+unos2+unos3+unos4+unos5;
    ukupno6=unos1+unos2+unos3+unos4+unos5+unos6;
    ukupno7=unos1+unos2+unos3+unos4+unos5+unos6+unos7;
    ukupno8=unos1+unos2+unos3+unos4+unos5+unos6+unos7+ unos8;
    ukupno9=unos1+unos2+unos3+unos4+unos5+unos6+unos7+ unos8+unos9;
    ukupno10=unos1+unos2+unos3+unos4+unos5+unos6+unos7 +unos8+unos9+unos10;

    procenti1=unos1/(snaga/100);
    procenti2=unos2/(snaga/100);
    procenti3=unos3/(snaga/100);
    procenti4=unos4/(snaga/100);
    procenti5=unos5/(snaga/100);
    procenti6=unos6/(snaga/100);
    procenti7=unos7/(snaga/100);
    procenti8=unos8/(snaga/100);
    procenti9=unos9/(snaga/100);
    procenti10=unos10/(snaga/100);

    dnevno1=unos1/dana;
    dnevno2=unos2/dana;
    dnevno3=unos3/dana;
    dnevno4=unos4/dana;
    dnevno5=unos5/dana;
    dnevno6=unos6/dana;
    dnevno7=unos7/dana;
    dnevno8=unos8/dana;
    dnevno9=unos9/dana;
    dnevno10=unos10/dana;

    ostatak=snaga-unos1-unos2-unos3-unos4-unos5-unos6-unos7-unos8-unos9-unos10;


    }


    tabela()
    {
    brojac1=1;


    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina1;++inter_bro)
    putchar(rec1[inter_bro]);
    printf (">>>>>%d",unos1);
    printf (" || UKUPN1O>> %d",ukupno1);
    printf (" || procenti1>> %f",procenti1);
    printf (" || dnevno1>> %d",dnevno1);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina2;++inter_bro)
    putchar(rec2[inter_bro]);
    printf (">>>>>%d",unos2);
    printf (" || UKUPNO2>> %d",ukupno2);
    printf (" || procenti2>> %f",procenti2);
    printf (" || dnevno2>> %d",dnevno2);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina3;++inter_bro)
    putchar(rec3[inter_bro]);
    printf (">>>>>%d",unos3);
    printf (" || UKUPNO3>> %d",ukupno3);
    printf (" || procenti3>> %f",procenti3);
    printf (" || dnevno3>> %d",dnevno3);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina4;++inter_bro)
    putchar(rec4[inter_bro]);
    printf (">>>>>%d",unos4);
    printf (" || UKUPNO4>> %d",ukupno4);
    printf (" || procenti4>> %f",procenti4);
    printf (" || dnevno4>> %d",dnevno4);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;


    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina5;++inter_bro)
    putchar(rec5[inter_bro]);
    printf (">>>>>%d",unos5);
    printf (" || UKUPNO5>> %d",ukupno5);
    printf (" || procenti5>> %f",procenti5);
    printf (" || dnevno5>> %d",dnevno5);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;


    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina6;++inter_bro)
    putchar(rec6[inter_bro]);
    printf (">>>>>%d",unos6);
    printf (" || UKUPNO6>> %d",ukupno6);
    printf (" || procenti6>> %f",procenti6);
    printf (" || dnevno6>> %d",dnevno6);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina7;++inter_bro)
    putchar(rec7[inter_bro]);
    printf (">>>>>%d",unos7);
    printf (" || UKUPNO6>> %d",ukupno7);
    printf (" || procenti6>> %f",procenti7);
    printf (" || dnevno6>> %d",dnevno7);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;


    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina8;++inter_bro)
    putchar(rec8[inter_bro]);
    printf (">>>>>%d",unos8);
    printf (" || UKUPNO8>> %d",ukupno8);
    printf (" || procenti8>> %f",procenti8);
    printf (" || dnevno8>> %d",dnevno8);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina9;++inter_bro)
    putchar(rec9[inter_bro]);
    printf (">>>>>%d",unos9);
    printf (" || UKUPNO9>> %d",ukupno9);
    printf (" || procenti9>> %f",procenti9);
    printf (" || dnevno9>> %d",dnevno9);
    ++brojac1;
    if (brojac1==kategorija+1)
    goto tab_kraj;

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    for (inter_bro=1;inter_bro<=duzina10;++inter_bro)
    putchar(rec10[inter_bro]);
    printf (">>>>>%d",unos10);
    printf (" || UKUPNO10>> %d",ukupno10);
    printf (" || procenti10>> %f",procenti10);
    printf (" || dnevno10>> %d",dnevno10);

    tab_kraj:

    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");
    printf ("\n||Snaga je >>%d<<||||Ostatak je:>>%d<<||",snaga,ostatak);
    printf ("\n");
    printf ("------------------------------------------------------------------------------|\n");


    }


    unos_podataka()
    {
    brojac_kat=1;
    brojac_za_unos=1;

    printf ("\nEko snaga>");
    scanf ("%d",&snaga);

    printf ("\nDana ostalo>");
    scanf ("%d",&dana);


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina1;++inter_bro)
    putchar(rec1[inter_bro]);scanf (" %d",&unos1);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina2;++inter_bro)
    putchar(rec2[inter_bro]);scanf (" %d",&unos2);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina3;++inter_bro)
    putchar(rec3[inter_bro]);scanf (" %d",&unos3);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina4;++inter_bro)
    putchar(rec4[inter_bro]);scanf (" %d",&unos4);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina5;++inter_bro)
    putchar(rec5[inter_bro]);scanf (" %d",&unos5);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina6;++inter_bro)
    putchar(rec6[inter_bro]);scanf (" %d",&unos6);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina7;++inter_bro)
    putchar(rec7[inter_bro]);scanf (" %d",&unos7);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;


    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina8;++inter_bro)
    putchar(rec8[inter_bro]);scanf (" %d",&unos8);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;

    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina9;++inter_bro)
    putchar(rec9[inter_bro]);scanf (" %d",&unos9);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;

    printf ("\n");
    for (inter_bro=1;inter_bro<=duzina10;++inter_bro)
    putchar(rec10[inter_bro]); scanf (" %d",&unos10);
    ++brojac_kat;
    if (brojac_kat==kategorija+1)
    goto kraj;
    kraj:

    }

    promene()
    {

    printf ("\nKoji unos zelis da promenis?>>>");
    scanf ("%d",&prom);


    if (prom==1)
    goto prvi;
    if (prom==2)
    goto drugi;
    if (prom==3)
    goto treci;
    if (prom==4)
    goto cetvrti;
    if (prom==5)
    goto peti;
    if (prom==6)
    goto sesti;
    if (prom==7)
    goto sedmi;
    if (prom==8)
    goto osmi;
    if (prom==9)
    goto deveti;
    if (prom==10)
    goto deseti;




    prvi:
    printf ("\nUnos1>");
    scanf ("%d",&unos1);
    goto kraj;

    drugi:
    printf ("\nUnos2>");
    scanf ("%d",&unos2);
    goto kraj;

    treci:
    printf ("\nUnos3>");
    scanf ("%d",&unos3);
    goto kraj;

    cetvrti:
    printf ("\nUnos4>");
    scanf ("%d",&unos4);
    goto kraj;

    peti:
    printf ("\nUnos5>");
    scanf ("%d",&unos5);
    goto kraj;

    sesti:
    printf ("\nUnos6>");
    scanf ("%d",&unos6);
    goto kraj;

    sedmi:
    printf ("\nUnos7>");
    scanf ("%d",&unos7);
    goto kraj;

    osmi:
    printf ("\nUnos8>");
    scanf ("%d",&unos8);
    goto kraj;

    deveti:
    printf ("\nUnos9>");
    scanf ("%d",&unos9);
    goto kraj;

    deseti:
    printf ("\nUnos10>");
    scanf ("%d",&unos10);
    goto kraj;

    kraj:


    }
    uzmi()
    {

    printf ("\nBroj kategorija>");
    scanf ("%d",&kategorija);

    brojac1=1;
    duzina1=1;
    duzina2=1;
    duzina3=1;
    duzina4=1;
    duzina5=1;
    duzina6=1;
    duzina7=1;
    duzina8=1;
    duzina9=1;
    duzina10=1;
    obavljeno=0;
    printf ("\n");

    while (obavljeno<=kategorija)
    {
    unos=getchar();
    if (obavljeno==1)
    {
    rec1[brojac1]=unos;
    ++duzina1;
    ++brojac1;
    }
    if (obavljeno==2)
    {
    rec2[brojac1]=unos;
    ++duzina2;
    ++brojac1;
    }
    if (obavljeno==3)
    {
    rec3[brojac1]=unos;
    ++duzina3;
    ++brojac1;
    }
    if (obavljeno==4)
    {
    rec4[brojac1]=unos;
    ++duzina4;
    ++brojac1;
    }
    if (obavljeno==5)
    {
    rec5[brojac1]=unos;
    ++duzina5;
    ++brojac1;
    }
    if (obavljeno==6)
    {
    rec6[brojac1]=unos;
    ++duzina6;
    ++brojac1;
    }
    if (obavljeno==7)
    {
    rec7[brojac1]=unos;
    ++duzina7;
    ++brojac1;
    }
    if (obavljeno==8)
    {
    rec8[brojac1]=unos;
    ++duzina8;
    ++brojac1;
    }

    if (obavljeno==9)
    {
    rec9[brojac1]=unos;
    ++duzina9;
    ++brojac1;
    }
    if (obavljeno==10)
    {
    rec10[brojac1]=unos;
    ++duzina10;
    ++brojac1;
    }

    if (unos=='\n')
    {
    brojac1=1;
    ++obavljeno;
    if (obavljeno<kategorija+1)
    printf (">>%d<<",obavljeno);
    }
    }


    --duzina1;
    --duzina1;

    --duzina2;
    --duzina2;

    --duzina3;
    --duzina3;

    --duzina4;
    --duzina4;

    --duzina5;
    --duzina5;

    --duzina6;
    --duzina6;

    --duzina7;
    --duzina7;

    --duzina8;
    --duzina8;

    --duzina9;
    --duzina9;

    --duzina10;
    --duzina10;

    }

    dodavanje_kategorija()
    {

    kate_zelja=0;
    kontrola=0;
    printf ("Da li zelis da dodas kategoriju>>>");
    scanf ("%d",&kate_zelja);
    if (kate_zelja==1)
    {
    printf (">>%d<<",obavljeno);
    ++kategorija;
    while (kontrola!=2)
    {
    unos=getchar();
    if (obavljeno==1)
    {
    rec1[brojac1]=unos;
    ++duzina1;
    ++brojac1;
    }
    if (obavljeno==2)
    {
    rec2[brojac1]=unos;
    ++duzina2;
    ++brojac1;
    }
    if (obavljeno==3)
    {
    rec3[brojac1]=unos;
    ++duzina3;
    ++brojac1;
    }
    if (obavljeno==4)
    {
    rec4[brojac1]=unos;
    ++duzina4;
    ++brojac1;
    }
    if (obavljeno==5)
    {
    rec5[brojac1]=unos;
    ++duzina5;
    ++brojac1;
    }
    if (obavljeno==6)
    {
    rec6[brojac1]=unos;
    ++duzina6;
    ++brojac1;
    }
    if (obavljeno==7)
    {
    rec7[brojac1]=unos;
    ++duzina7;
    ++brojac1;
    }
    if (obavljeno==8)
    {
    rec8[brojac1]=unos;
    ++duzina8;
    ++brojac1;
    }

    if (obavljeno==9)
    {
    rec9[brojac1]=unos;
    ++duzina9;
    ++brojac1;
    }
    if (obavljeno==10)
    {
    rec10[brojac1]=unos;
    ++duzina10;
    ++brojac1;
    }

    if (unos=='\n')
    {
    brojac1=1;
    ++kontrola;
    }
    }
    ++obavljeno;
    }
    if (rec1[duzina1]=='\n')
    --duzina1;
    if (rec2[duzina2]=='\n')
    --duzina2;
    if (rec3[duzina3]=='\n')
    --duzina3;
    if (rec4[duzina4]=='\n')
    --duzina4;
    if (rec5[duzina5]=='\n')
    --duzina5;
    if (rec6[duzina6]=='\n')
    --duzina6;
    if (rec7[duzina7]=='\n')
    --duzina7;
    if (rec8[duzina8]=='\n')
    --duzina8;
    if (rec9[duzina9]=='\n')
    --duzina9;
    if (rec10[duzina10]=='\n')
    --duzina10;


    }



  2. #2
    Guest

    Podrazumevano Re: C problem

    Citat Original postavio C BLUE
    ....
    izracunavanje()
    {
    ukupno1=unos1;
    ukupno2=unos1+unos2;
    ukupno3=unos1+unos2+unos3;
    ukupno4=unos1+unos2+unos3+unos4;
    ukupno5=unos1+unos2+unos3+unos4+unos5;
    ukupno6=unos1+unos2+unos3+unos4+unos5+unos6;
    ...
    Pa poenta je bila koristiti nizove umesto da si pravio ovoliko poromenljivih,

    recimo
    long unos[10],ukupno[10];

    Pa bi onda funkcija izracunavanje izlgledala ovako.

    izracunavanje() {
    int i;
    for(i=0;i<10i++){
    if(i==0)
    ukupno[0]=unos[0];
    else
    ukupno[i]=ukukupno[i-1]+unos[i];
    procenti[i]=unos[i]/(snaga/100);
    dnevno[i]=unos[i]/dana;
    }/*for*/
    }/*izracunavanje*/
    ...

    i tako dalje

Slične teme

  1. Problem sa Flash playerom ili moguci Java problem.
    Autor Psyduck u forumu Internet
    Odgovora: 0
    Poslednja poruka: 24.01.2009., 11:52
  2. problem sa boot-ovima - GRUB4DOS problem
    Autor twix u forumu Unix / Linux Operativni sistemi
    Odgovora: 0
    Poslednja poruka: 09.12.2008., 20:53
  3. problem - komp mi radi usporeno - problem
    Autor VisionOfDisorder u forumu Hardver
    Odgovora: 11
    Poslednja poruka: 28.07.2005., 01:15
  4. Html problem je resen. Vb problem jos nije resen!
    Autor E537A6 u forumu Programiranje
    Odgovora: 0
    Poslednja poruka: 08.02.2005., 22:45
  5. Problem bio,problem resen.
    Autor Leka u forumu Softver
    Odgovora: 0
    Poslednja poruka: 11.03.2004., 23:10

Pravila za slanje poruka

  • Ne možete kreirati novu temu
  • Ne možete poslati odgovor
  • Ne možete dodati priloge
  • Ne možete prepraviti svoju poruku
  •