Найти наибольшее натуральное число k, при котором 7k < m - C (СИ)
Формулировка задачи:
Помогите пожалуйста.
Пользователь вводит целое положительное число m. Найти наибольшее
натуральное число k, при котором 7k
< m. Вывести на экран таблицу
степеней числа 7 (от нулевой до 10-й). (Стандартную функцию возведения в
степень использовать не следует.)
Решение задачи: «Найти наибольшее натуральное число k, при котором 7k < m»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> //using namespace std; int own_pow(int x,int y);// x^y int main(){ int n=10,x=7,m,k; printf("enter m="); scanf("%d",&m); k=(int)(m/7); printf("\nk=%d\n",k); for(int i=0;i<=n;i++){ printf("%d^%d=%d\n",x,i,own_pow(x,i)); } system("pause"); return 0; } int own_pow(int x,int y){ int res=1; if(x!=0&&y!=0&&x!=1){ for(int i=0;i<y;i++){ res*=x; } } return x!=0?res:0; }
Объяснение кода листинга программы
- В программе имеется два исходных значения: n=10 и x=7.
- Программа запрашивает у пользователя значение переменной m и сохраняет его в переменную m.
- Затем программа вычисляет значение переменной k как целочисленное значение частного от деления m на 7.
- Выводит значение переменной k на экран.
- Затем программа в цикле выводит на экран значения собственных степеней числа x от 0 до n.
- В функции own_pow(x,y) вычисляется собственная степень числа x по y.
- Если x не равно 0, 1 и y не равно 0, то в цикле от 0 до y-1 происходит умножение числа x на полученное значение собственной степени.
- Результат сохраняется в переменной res.
- Если x не равно 0, то возвращается значение res, иначе возвращается 0.
- В конце программы система приостанавливает выполнение программы до нажатия клавиши.
- Программа завершается с возвращением кода завершения 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д