Hirdetés

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

  • Korcsii
    őstag

    Üdv!

    Maradék képzéssel nem jutok dűlőre.

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

    int main()
    {
    float c,as=0;
    int n=100,sum=0,nn=1;

    for(c=10,sum=0,nn; c<n; c++)
    {
    as=sqrt(c);
    as=(as%nn);

    sum++;


    }
    return 0;
    }

    C:\Users\Hujikolp\c\Hujikolp\2 jegyu negyzetszamok.c|13|error: invalid operands to binary % (have 'float' and 'int')|

    kicsit kusza a kód még, csak a maradékos dolgot akarnám működésre bírni, de nem engedi sehogysem. Sima c-ben, code::blocks programmal.

    Majd egy olyat kellene megoldani, hogy a kétjegyű számok között hány négyzetszám van. Arra gondoltam, hogy a számból gyököt vonok, majd maradék számítással eggyel elosztom, ha 0, akkor négyzetszám, ha nem, akkor nem.

    A maradékképzés (xor) általában két egész szám között van, és azért warningol, mert az egyik float. Viszont a math.h-ban van egy olyan függvény, hogy fmod(a,b); /* még soha nem használtam */ Mondjuk math.h nélkül is 3 sor.

    Még annyi, hogy az nn-nek mi a szerepe a for-ban?

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