Close
Faqja 2 prej 2 FillimFillim 12
Duke shfaqur rezultatin 11 deri 14 prej 14
  1. #11
    Analog Brain Maska e josif
    Anėtarėsuar
    26-02-2004
    Vendndodhja
    madagaskar
    Postime
    245
    Citim Postuar mė parė nga qoska
    e para tregohu i sinqerte thuaj qe nuk eshte e shkruar nga ty
    Pastaj kaq budallenj i di njerezit qe se kuptojne kur ndryshon stili i te shkruarit nga nje program ne tjetrin
    Per ty me vjen shume keq, por nuk te ndihmoj dot se qenke pa shprese ...

    P.S : E shpjegova me lart ne menyre te qarte:

    Citim Postuar mė parė nga josif
    ----------------------
    Per efekt te te qenurit perfekt, zgjidhja qe kam rreth ketij problemi eshte nje zgjidhje e nje eksperti te nivelit shume shume te larte, ish mesuesit tim te "C programming":


    Dr. Gokturk U.
    MET University. Ankara, Turkey
    (ex-chairman of the International Olimpiad in Informatics)
    -----------------------
    Ndryshuar pėr herė tė fundit nga josif : 18-03-2005 mė 13:24
    He walks among us, but He is not one of us ...

  2. #12
    Analog Brain Maska e josif
    Anėtarėsuar
    26-02-2004
    Vendndodhja
    madagaskar
    Postime
    245
    Citim Postuar mė parė nga edspace
    Kodi tėnd apo i profesorit ėshtė ai mė lart?

    Nėse ėshtė kodi i profesorit, tė paskam kritikuar kot se fajin e paska profesori. Thuaji tė vejė prapė nė shkollė se ėshtė turp tė shkruaj kod si ai mė lart. Mbase punon shkėlqyer por ėshtė kod i papranueshėm pėr mėsimdhėnie.

    Tani po me tregon TI se kush eshte kod i pranueshem apo jo.

    1) Kur flitet per nivel programuesash me intelekt nuk ka nevoje te shkruash njeqind komente sikur po u tregon analfabeteve si te lexojne.

    2) Te shkruarit koinciz nuk eshte aftesi e shumices ...

    3) Personi ka qene per shume vjet anetar dhe nje vjet chairman i "Olipiades Boterore te Informatikes". Shume pyetje te tijat jane pranuar dhe u jane pyetur
    studenteve me te zgjuar ne bote. Z. Gokturk ka qene per vite me rradhe trajnues i ekipit kombetar te Turqise dhe profesor ne universitetin e Londres. Ka marre pjese ne nje mori projektesh ku dallohet per projektin "Darwin" (genetic programing) dhe ka ndertuar pothuajse vete nje kompiler per LISP ne gjuhen C.

    Pra, duhet te mesohesh me njerez te afte Edspace, mos kujto se ato qe di ti dhe nje pjese e mire e ketij forumi jane ligjet e Informakikes.

    P.S : Njerez si ti vrane Galileo Galilei-n .
    He walks among us, but He is not one of us ...

  3. #13
    Programues Softueresh Maska e edspace
    Anėtarėsuar
    04-04-2002
    Vendndodhja
    Filadelfia, SHBA
    Postime
    2,565
    Tė thashė qė kodi mė lart ėshtė i papranueshėm pėr mėsimdhėnie. Nqs ai do ta shkruante programin pėr qejf, punė e tij, por kodi nuk u jepet studentėve nė atė gjėndje.

    Vura re se ky profesori yt i ka qejf ciklet for, aq shumė sa i pėrdor edhe nė vend tė while. A nuk ėshtė mė e llogjikshme tė pėrdorėsh while nė vėnd tė
    for (; *s; s++) ?

    Kodin qė hedh nė forum e komentoj mė shumė seē duhet sepse ka fillestarė qė e lexojnė dhe kanė pyetje. Kritikat pėr profesorin tėnd nuk i kisha tek komentet por tek mėnyra si e ka shkruar kodin. Shiko kodin e ndonjė programi profesional pėr tė parė ndryshimin, ose shko tek MSDN e shiko shembujt.

    Shikoje ndryshimin qė bėn vetėm formatimi uniform i kodit. Ti si nxėnės kė do zgjidhje?

    P.S - Ato komentet e tepėrta kam mėsuar t'i shmang se nuk i pėrmbahen temės dhe i shkruan nga vrulli. Pėrmbaje gėzimin kur hyn nė forum.

    Kodi PHP:
    #include<stdio.h>
    #include<stdlib.h>
    #include<ctype.h>

    #define BUCKET_SIZE 100

    #define NOT_USED(c)         (Characters[c] = -1)
    #define PUT_VALUE(c, x)     (Characters[c] = (x))
    #define GET_VALUE(c)        (Characters[c])
    #define IS_NOT_USED(c)      (Characters[c] == -1)

    char The_Formula;
    int Characters[128];

    calculate(operatorleft_valueright_value)
    {
        switch (
    operator)
        {
        case 
    '&' :
            return(
    left_value && right_value);
            break;
        case 
    '|' :
            return(
    left_value || right_value);
            break;
        case 
    '>' :
            return(!
    left_value || right_value);
            break;
        case 
    '=' :
            return(
    left_value == right_value);
            break;
        }
    }

    int parse(char s)     /* consumes the WFPLF, leaves now at the unconsumed character */
    {
        
    register int current_char;
        
    int left_value;
        
    int right_value;
        
    int operator;

        static 
    char now;

        if (
    !=  NULL)
            
    now s;  /* else now remains as it is  => presumably it is a recursive call */

        
    current_char = *now;
        
    now++;   /* immediatelly consume this char:may be further recursive parse() will occur*/
        
        
    if (islower(current_char))
            return 
    GET_VALUE(current_char);
        else
        {
            switch (
    current_char)
            {
             case 
    '-' :
                    return (!
    parse(NULL));
                    break;
             case 
    '(' :
                    
    left_value parse(NULL);
                    
    operator = *now++;     /* consume the operator */
                    
    right_value parse(NULL);
                    
    now++;                    /* consume the ')' */
                    
    return (calculate(operatorleft_valueright_value));
                    break;
            }
        }
    }

    char read_in_WFPLF(void)
    {
        
    int c;
        
    int counter 0;
        
    long int mem_size_now 0;
        
    char formula NULL;
        
    char position;

        while((
    getchar()) != EOF)
        {
            if (!
    isspace(c))
            {
                if (!
    counter)
                {
                    
    mem_size_now +=  BUCKET_SIZE;     /* the following statement may change */
                    
    formula = (char *) realloc(formulamem_size_now); /* content of formula*/
                    
    position formula + (mem_size_now BUCKET_SIZE);
                    
    counter BUCKET_SIZE-1;
                }
                
                *
    position c;
                
    position++;
                
    counter--;
            }
        }
        
        *
    position 0;
        return 
    formula;
    }

    int preprocess_WFPLF(char s)   /* finds the used letters in WFPLF stores them with 0, returns */
    {                               /* count of letters */
        
    int i;
        
    int letter_count 0;

        for (
    'a'<= 'z'i++)
            
    NOT_USED(i);
            
        for (; *
    ss++)
        {
            if (
    islower(*s) && IS_NOT_USED(*s))
            {
                
    PUT_VALUE(*s0);
                
    letter_count++;
            }
        }
        
        return 
    letter_count;
    }

    void set_instance(long int nint letter_count)
    {
          
    int i 'z';

          for(; 
    letter_countletter_count--, >> = 1)    /* >> can be subst. by (/2) */
        
    {
            for (; 
    IS_NOT_USED(i); i--);     /* Find next used character */
               
    PUT_VALUE (in&1);                 //  printf("[%c:%d]", i, n&1);
               
    i--;
        }                                   
    /* we have used this character */
    }

    void print_heading()
    {
        
    int i;
        
        for (
    'a'<= 'z'i++)
        {
            if (!
    IS_NOT_USED(i))
                
    printf("%c "i);
        }
                
        
    printf("R\n");
    }

    void print_truth_value(int i)
    {
        
    printf("%c "'T' 'F');
    }

    void print_instance()
    {
        
    int i;
        for (
    'a'<= 'z'i++)
        {
            if (!
    IS_NOT_USED(i))
                
    print_truth_value(GET_VALUE(i));
        }
    }

    main(void)
    {
        
    int letter_count;
        
    long int instance;

        
    The_Formula read_in_WFPLF();
        
    letter_count preprocess_WFPLF(The_Formula);

        
    // For debug: printf("%s  << contains %d vars\n", The_Formula, letter_count);

        
    print_heading();
        
        for (
    instance = (1<<letter_count) - 1;  instance >= 0;  instance--) /* << can be subst. by (2*) */
        
    {
            
    set_instance(instanceletter_count);
             
    // For debug: printf("%ld.", instance);

            
    print_instance();
            
    print_truth_value(parse(The_Formula));
            
    printf("\n");
        }
        
        return (
    0);

    Ndryshuar pėr herė tė fundit nga edspace : 18-03-2005 mė 17:51
    Edi

  4. #14
    mos e luaj; I DEBUAR! Maska e qoska
    Anėtarėsuar
    17-05-2004
    Vendndodhja
    tirane
    Postime
    837
    EDSPACE me ce shoh dhe nga eksperienca ime ne C nuk eshte per ti vene faj profesorit pasi eshte kod i shkruar te pakten para nja 5-10 vjeteve dhe arsyeja e perdorimit te for me teper se while ka pas te beje me kompilerat e vjeter qe gjeneronin kod me te shpejte per for dhe per while.

    GJITHSESI JAM DAKORT ME TY qe do ishte me mire te publikohej kodi me komente sidomos kur do shikohet nga shume veta qe marrin vesh apo jo

Faqja 2 prej 2 FillimFillim 12

Regullat e Postimit

  • Ju nuk mund tė hapni tema tė reja.
  • Ju nuk mund tė postoni nė tema.
  • Ju nuk mund tė bashkėngjitni skedarė.
  • Ju nuk mund tė ndryshoni postimet tuaja.
  •