Hirdetés

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

  • Jester01
    veterán

    Ü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.

    Pedig elég egyértelmű a hibaüzenet. A % operátor csak egész típusra működik, neked meg float van.

    Korcsii: hajnali kettőkor már elnézzük hogy a xor-t valahogy idekeverted ;)

    Hujikolp: a feladatra egyszerűbb megoldás lenne a négyzetszámokon végigmenni 100-ig. count = 0; for(i = 1; i * i < 100; ++i) count++;

    sokadik mod: ja persze ha konkrétan kétjegyű kell, akkor 4-től nézni.

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