Rozdelenie vysledku na Eura a centy – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Rozdelenie vysledku na Eura a centy – C / C++ – Fórum – Programujte.comRozdelenie vysledku na Eura a centy – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
evam880
Duch
18. 10. 2015   #1
-
0
-

mám napísať program na prevod šilingu na euro, s tým že, potom výsledok je nutne rozdeliť na eura a centy, to znamená, napr. máme výsledok 8,85 Eur, výstup má biť 8 Eur a 85 Centov. Môj program je nasledovný 

#include <iostream>

using namespace std;

int main()
{
    int Schiling, Prevod, Euro, Cent;
    const double a = 13.7603;
    cout << "Schiling" << endl;
    cin >> Schiling;

    Prevod = Schiling/a;
    cout << "prevod zo Schilingu na Euro: " <<   Prevod  << endl;

    Euro = (Schiling/a)/1;
    cout << "Euro: " << Euro << endl;

    Cent =  (Schiling/a) % 1.0;
    cout << "Cent: " << Cent << endl;


    return 0;
}

stale mi vypisuje chybu error: invalid operands of types double and double to binary operator %. Viem, že je chýba niekde asi pri module, ale neviem ju opraviť, vie mi niekto prosím poradiť :) diky

Nahlásit jako SPAM
IP: 178.191.161.–
Reklama
Reklama
lukas.balaz0
Super člen
18. 10. 2015   #2
-
0
-

#1 evam88
Ak chceš vypísať proste celú časť čísla a potom prvé dve desatinné miesta, tak ide:
 

#include <iostream>
using namespace std;
int main() {
    double s;
    cin >> s;
    double e = 13.7603 / s;
    int euro = e;
    cout << euro << endl;
    int cent = (e-euro)*100;
    cout << cent << endl;
}

(či je správny prevod silingov na eura neviem).
Ak to chceš ale zaokrúhliť (teda 2.789 eur je 2 eura aj 79 centov, nie 78), tak v c++ je funkcia round:
 

#include <iostream>
#include <cmath>
using namespace std;
int main() {
    double s;
    cin >> s;
    double e = 13.7603 / s;
    int euro = e;
    cout << euro <<endl;
    int cent = round((e-euro)*100.0);
    cout << cent << endl;
}

Okrem toho, viem, že nazývať premenné jedným písmenom ako som to robil ja nie je dobré (a v praxi to ani nerobím), ale nazývať premenné s veľkým začiatočným písmenom je oveľa horšie, lebo tak sa označujú classy, strcuty atď. a dosť ma to miatlo keď som chcel pochopiť tvoj kód

Nahlásit jako SPAM
IP: 80.242.41.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 91 hostů

Podobná vlákna

Rozdelenie disku — založil Santas

Rozdelenie mp3 — založil andre

Rozdelenie popisu — založil Vojtkulak Matus

Rozdelenie int na cislice — založil entity

Rozdelenie prispevkok na stranky — založil Nepoznam

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý