Informatică, întrebare adresată de Elena1elle, 9 ani în urmă

Sergiu, fiind un elev talentat în ceea ce priveşte informatica, doreşte pe cât posibil să-şi ajute prietenii în rezolvarea problemelor. Prietenii lui au venit la el, fiind foarte confuzi în legătură cu o anumită problemă: Ei au un set de T întrebări de forma: Care este cel mai mic număr strict mai mare decât n, divizibil cu k?
Fiind ocupat cu pregătirea pentru OJI, el vă roagă pe voi să-l ajutaţi!
Cerința
Pentru fiecare din cele T întrebări, să se afle cel mai mic număr strict mai mare decât n care este divizibil cu k.

Date de intrare
Fișierul de intrare multiple.in conține pe prima linie numărul T, iar următoarele T linii conţin câte două numere, n şi k, cu semnificaţia din enunţ.

Date de ieșire
Fișierul de ieșire multiple.out va conține pe T linii, pentru fiecare întrebare, numărul cerut.

Restricții și precizări
1 ≤ T ≤ 10000
se recomandă utilizarea tipurilor de date pe 8 octeţi (64 de biţi)
dacă reuşiţi să-l ajutaţi pe Sergiu, pe lângă cele 100 de puncte, probabil el vă va face cinste şi cu o sticlă de apă minerală

Exemplu
multiple.in

5
1 2
3 7
24 9
13 223
45 9
multiple.out

2
7
27
223
54

Răspunsuri la întrebare

Răspuns de artur99
2
#include <fstream>
using namespace std;
int main(){
  ifstream f("multiple.in");
  ofstream g("multiple.out");
  int i, t, k, n;
  f>>t;
  for(i=0;i<t;i++){
    f>>n>>k;
    while(n++){
      if(n%k==0){
        g<<n<<'\n';
        break;
      }
    }
  }
}

Elena1elle: mercii
artur99: np :D
Răspuns de express
3
Iti trimit si solutia mea de 100p la problema de mai sus. Succes!
#include <bits/stdc++.h>
using namespace std;
unsigned long long n, k;
int t, i;
int main()
{
    ifstream f("multiple.in");
    ofstream g("multiple.out");
    f >> t;
    for(i = 1; i <= t; i ++)
    {
        f >> n >> k;
        g << ((n + k) / k) * k << "\n";
    }
    return 0;
}


Elena1elle: multumesc :)
Alte întrebări interesante