Hirdetés

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

  • Jester01
    veterán

    Kesz van jeee, megcsinaltam :D

    1.

    #include <stdio.h>
    #include <stdlib.h>

    main()
    {
    char c[20]; int i=0; int s=0;
    gets(c);

    while ( c[i] != '\0' )
    {
    s += (48-c[i]);
    i++;
    }

    printf("%d ", -1*s);

    fflush(stdin);
    getchar();

    }

    2.

    #include <stdio.h>
    #include <stdlib.h>

    main()
    {
    char c[20]; int i=0; int s=0;
    gets(c);

    while ( c[i] != '\0' )
    {
    s += (48-c[i]);
    i += 2;
    }

    printf("%d ", -1*s);

    fflush(stdin);
    getchar();

    }

    mod: 5 es fel perc, szegyellem magam :))

    Az volt a baj h tok rossz iranyba indultam el tegnap este, bocs studiossrac, lehett volna 5os is :((

    Azért ez nem ötös... A 2. feladat nagyon szépen elszáll ha páratlan számjegyből álló számot adsz be. A gets használata pedig egyébként is veszélyes, mert nincs hossz ellenőrzés, tehát mindkét progi elszáll ha 19-nél több karaktert adsz be (tehát már a specifikáció szerinti 20ra is!), amiről még csak meg sem nézed, hogy számjegyek-e. Annak meg mi értelme, hogy a számjegyeket (48 - c) alakban adod össze és a végén szorzod -1-el?

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