Diskuze: Zakladni operace - jsem de*il nebo je chyba v zadani
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Tvůrce
Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
tak minimálně by sis to měl přetypovat
quotient1 = (float)(myInt1 / myInt2);
remainder1 = (float)(myInt1 % myInt2);
To je cvičení imho na to, aby ti ukazali, že se dělení a modulo chová podle operandu... A pak následně jako upozornění na to, že muže % nedojde ke ztrátě přesností.
Dole ty remainder2 a quotient2 vůbec nepoužíváš, možná bych koukal i tímhle směrem
Kurňa, postnul jsem špatný kód.
Tady je správný.
//Task 1
int myInt1 = 15, myInt2 = 10;
float myFloat = 12.6;
//Task 1.1
float quotient1, remainder1;
quotient1 = (myInt1 / myInt2);
remainder1 = (myInt1 % myInt2);
printf("Quotient is: %f", quotient1);
printf("\n");
printf("Remainder is: %f", remainder1);
printf("\n");
//Task 1.2
int quotient2, remainder2;
quotient2 = (myFloat / myInt2);
remainder2 = (myFloat % myInt2);
printf("Quotient is: %i", quotient2);
printf("\n");
printf("Remainder is: %i", remainder2);
cin.get();
Používám je, tady je chyba:
invalid operands of types 'float' and 'int' to binary 'operator%'
remainder2 = (myFloat % myInt2);
PS: Můžete mi prosím někdo poradit jak to má být, protože už jsem zmatený
Tak druhý pokus bude snad úspěšnější
ale asi tě moc nepotěším - operátor % jde použít jen s integrálními typy (int,short,long)
v čem to píšeš? Visual Studio tě na to upozorní hned jak to napíšeš
Ono to právě píše, takže je chyba v zadání?
PS: Našel jsem funkci fmod(), ta bere i float.
no to je právě ta funkce fmod()
float num1=3.25;
float num2=2.3;
float result = fmod(num1, num2);
Zobrazeno 9 zpráv z 9.