Se dau două numere naturale nenule n și k. Să se determine multiplul lui k cel mai apropiat de n.
Date de intrare
Programul citește de la tastatură numerele n și k, în această ordine.
Date de ieşire
Programul afișează pe ecran numărul p, reprezentând determine multiplul lui k cel mai apropiat de n.
Restricţii şi precizări
1 ≤ k ≤ n ≤ 1.000.000
dacă există mai mulți multipli ai lui k la fel de apropiați de n, se va afișa cel mai mic
Exemplu
Intrare
18 5
Ieșire
20
Răspunsuri la întrebare
Răspuns de
46
#include <iostream>
using namespace std;
int main(){
int n,k,p,t;
cin>>n>>k;
t = n/k;
if(n-t*k <= -(n-(t+1)*k)){
p=t*k;
}else{
p=(t+1)*k;
}
cout<<p;
}
//Calculam, generam cele 2 posibilitati din
//jurul lui 18 (adica 20 si 15) apoi le comparam
//unul va fi negativ, deci punem - in fata
using namespace std;
int main(){
int n,k,p,t;
cin>>n>>k;
t = n/k;
if(n-t*k <= -(n-(t+1)*k)){
p=t*k;
}else{
p=(t+1)*k;
}
cout<<p;
}
//Calculam, generam cele 2 posibilitati din
//jurul lui 18 (adica 20 si 15) apoi le comparam
//unul va fi negativ, deci punem - in fata
AntiEaglesDavids:
that was clever
Alte întrebări interesante
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
10 ani în urmă
Limba română,
10 ani în urmă