Kezdőoldal » Számítástechnika » Programozás » (c++) Ha bekérek egy egész...

(c++) Ha bekérek egy egész számot, hogyan írassam ki a számot a magyar (kp) fizetési szabályok szerint?

Figyelt kérdés

pl.:

input: 17 (ft)

output: 20 (ft)

Vagyis ,vagy 5-re vagy 0-ra végződik a kerekítés után.



2016. nov. 1. 18:35
 1/7 anonim ***** válasza:

switch (amount % 10) {


case 1:

case 6: amount-=1; break;

case 2:

case 7: amount-=2; break;

case 3:

case 8: amount+=2; break;

case 4:

case 9: amount+=1; break;

}

2016. nov. 1. 18:41
Hasznos számodra ez a válasz?
 2/7 tabaki ***** válasza:
100%

Szerintem az öttel való egészosztás modulusát nézd. Ha nagyobb 2-nél, akkor kerekíts felfelé. Nincs kéznél C++, hogy kipróbáljam, de ilyesmit képzelek:


kerekitett = penz / 5 * 5;

if (penz % 5 > 2) {kerekitett += 5;}

2016. nov. 1. 19:55
Hasznos számodra ez a válasz?
 3/7 SimkoL ***** válasza:

#include <cstdlib>

#include <iostream>

#include <math.h>


using namespace std;


int main(){

for (int i = 0; i < 31; i++) cout << i << " --> " << (int)round(i / 5.0) * 5 << endl;

system("PAUSE");

return 0;

}

2016. nov. 1. 19:56
Hasznos számodra ez a válasz?
 4/7 tabaki ***** válasza:

Az én változatom, modulussal:


#include <iostream>

using namespace std;


int main(){

      for (int i = 1; i < 31; i++) cout << i << " --> " << i / 5 * 5 + (i % 5 > 2) * 5 << "\n";

      cin.get();

      return 0;

}

2016. nov. 1. 23:35
Hasznos számodra ez a válasz?
 5/7 anonim ***** válasza:

Akkor már én is ideköpök egy megoldást


#include <iostream>


int main()

{


int inputValue;

std::cout<<"Blahblah gimmemony! ";

std::cin>>inputValue; //A userek robotok, és mindig korrekt számot adnak be


char inputModulus = inputValue % 5;

int outputValue = inputModulus > 2 ? inputValue + (5-inputModulus) : inputValue - inputModulus;


std::cout<<"Blahblah takeyomonet "<<outputValue;


return 0;

}


Az osztás-visszaszorzás nekem picit olyan bleh.

2016. nov. 2. 12:11
Hasznos számodra ez a válasz?
 6/7 tabaki ***** válasza:

@#5:

Rémes a dumád, de a lényeg tetszik. És igazad is van, az osztás-szorzás tényleg elég nyögvenyelős megoldás.

2016. nov. 2. 23:13
Hasznos számodra ez a válasz?
 7/7 anonim ***** válasza:
Nem akartam túlpörögni a témát, ezért a "rémes duma" :D
2016. nov. 2. 23:49
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!