Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Дано натуральное число N. Над ним можно произвести следующий набор операций:
- *вычитать единицу;
- *делить на три, если число кратно трем;
- *делить на два, если число четное.
- После выполнения одной из операций к полученному результату также можно применить указанные операции,
- и делается это до тех пор, пока результат не окажется равным 1.*/
- #include <iostream>
- #include "locale.h"
- #include <cmath>
- using namespace std;
- int main()
- {
- setlocale(LC_ALL, "RUS");
- int x, i = 0;
- cout << "Введите число: ";
- cin >> x;
- while(x != 1 && x != 0){
- if(x % 3 == 0)
- x = x / 3;
- else if(x % 2 == 0)
- x = x / 2;
- else
- x = x - 1;
- i++;
- }
- cout << "Наименьшее количество операций, в результате выполнения которых\nбудет получена единица: " << i;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement