Uždarbis.lt: Apvalinimo funkcija floor - Uždarbis.lt

Peršokti prie turinio



IT paslaugų skelbimams skirta skiltis Dizaino ir programavimo paslaugos
Puslapis 1 iš 1
  • Jūs negalite kurti naujos temos
  • Jūs negalite atsakyti į šią temą

Narys yra atsijungęs Danieliuss 

  • Naujas veidas forume
  • Akis
  • Grupė: Nariai
  • Atsiliepimai: +0 -0
  • Pranešimai: 11
  • Kartu nuo: 2016-05-21

2017-11-14 22:37 (#1)

Apvalinimo funkcija floor


Sveiki, sprendžiu tokį uždavinį:
m kg saldainių sumokėta s Lt. Kiek kainuoja 100g saldainių? Kainą suapvalinkite centų tikslumu. Programoje panaudokite apvalinimo funkciją floor iš bibliotekos cmath.



 #include <iostream>
#include <cmath>

using namespace std;

int main()
{   double m, s, litai;
    int centai, simtgrk;
    cout << "saldainiu kiekis kilogramais: " << endl;
    cin >> m;
    cout << "saldainiu kaina: " << endl;
    cin >> s;
    simtgrk= s *100/ m,
    litai= simtgrk/100,
    centai= simtgrk % 100;

     cout << "kaina " << litai << " lt " << centai << " ct" << endl;
     return 0;
}


Viskas beveik gerai, bet turėčiau įrašęs m=2.4 , o s= 36.50 , kainą gauti 15Lt 21ct, bet vietoj 21 gaunu 20. Nesuprantu, kur ir kaip tą floor panaudoti. Gal kas gali padėti?

0


Narys yra atsijungęs wi_lius 

  • Užkietėjęs dalyvis
  • AkisAkisAkisAkis
  • Grupė: Patvirtinti nariai
  • Atsiliepimai: +6 -0
  • Pranešimai: 1677
  • Kartu nuo: 2007-08-31
  • Miestas:Kaunas

2017-11-14 23:39 (#2)

Gal aiškiau pasidarys, jei nenaudosi int, tik double.

Settings Watch – įvaldyk Android nustatymus!
easyMath – išmokyk Ugninę Laputę naujų simbolių!
0


Narys yra atsijungęs Danieliuss 

  • Naujas veidas forume
  • Akis
  • Grupė: Nariai
  • Atsiliepimai: +0 -0
  • Pranešimai: 11
  • Kartu nuo: 2016-05-21

2017-11-15 00:03 (#3)

Nežinau, kodėl double man neveikia su "centai= simtgrk % 100;" , tada rašo : error: invalid operands of types "double" ant "int" to binary "operator %".

0


Narys yra atsijungęs Arik 

  • Pradedantis dalyvis
  • AkisAkis
  • Grupė: Nariai
  • Atsiliepimai: +0 -0
  • Pranešimai: 132
  • Kartu nuo: 2015-01-17

2017-11-15 11:33 (#4)

Galimas sprendimas:

#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    double m, s, simtgrk;
    int centai, litai;
    cout << "saldainiu kiekis kilogramais: " << endl;
    cin >> m;
    cout << "saldainiu kaina: " << endl;
    cin >> s;

    simtgrk = s/(m*10);
    litai = floor (simtgrk);
    centai = floor ((simtgrk - litai)*100);
    cout << "kaina " << litai << " lt " << centai << " ct" << endl;
    
    return 0;
}


Tarp kitko, jeigu 2.4 kg kainoja 36.50 Lt, tada 1 kg kainoja apie 15 Lt, o ne 100 gr.
0


Narys yra atsijungęs Danieliuss 

  • Naujas veidas forume
  • Akis
  • Grupė: Nariai
  • Atsiliepimai: +0 -0
  • Pranešimai: 11
  • Kartu nuo: 2016-05-21

2017-11-15 16:14 (#5)

Ačiū :D
Oj, tikrai, knygoj ne taip parašyta, nepagalvojau net.
0


Pasidalinti šia tema:


Puslapis 1 iš 1
  • Jūs negalite kurti naujos temos
  • Jūs negalite atsakyti į šią temą

1 nariai(-ų) skaito šią temą
0 nariai(-ių), 1 svečiai(-ių) ir 0 slapti(-ų) nariai(-ių)


Užklausų vykdymo statistika

  • Dabar yra: 2017-11-19 03:16

Tas nuostabus prisijungimo momentas


Prisijungimo nustatymai