Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Од стандарден влез се читаат два цели броеви N и M. Потоа се читаат уште N бинарни броеви. На стандарден излез да се испечатат:
- сите броеви (во нивната бинарна и декадна репрезентација) кои што се поголеми од бројот M
- најголемиот број ( во негова бинарна и декадна репрезентација)
- Пример: бројот 1101=1⋅20+0⋅21+1⋅22+1⋅23=1+4+8=13
- Input:
- 5 100
- 1111
- 1101
- 1111011
- 11010001
- 11111100
- Output:
- 1111011 123
- 11010001 209
- 11111100 252
- Max: 11111100 252
- */
- #include <stdio.h>
- #include <math.h>
- int convertBinary(long n) {
- int dekadenBroj = 0, i = 0, ostatok;
- while (n != 0) {
- ostatok = n % 10;
- dekadenBroj += ostatok * pow(2, i);
- n /= 10;
- ++i;
- }
- return dekadenBroj;
- }
- int main() {
- int nn, m;
- int dekBroj = 0, max = 0, maxN = 0;
- scanf("%d%d", &nn, &m);
- int n;
- while (nn != 0) {
- scanf("%d", &n);
- dekBroj = convertBinary(n);
- if (max < dekBroj) {
- max = dekBroj;
- maxN = n;
- }
- if (dekBroj > m) {
- printf("%d %d\n", n, dekBroj);
- }
- nn--;
- }
- printf("Max: %d %d", maxN, max);
- }
Add Comment
Please, Sign In to add comment