|
0 / 0 / 2
Регистрация: 15.11.2012
Сообщений: 25
|
||||||
Возведение в степень15.11.2012, 23:49. Показов 2272. Ответов 11
Метки нет (Все метки)
Совсем недавно начал изучать C++. Учу по книге. Было задание:
Вводишь число Вводишь степень в которую надо возвести это число Программа выдаёт ответ Сам не смог разобраться с написанием функции по которой бы повторялось перемножение N"ое колличество раз, посмотрел в ответах.
*Поясните что за переменная "n", за что она отвечает и как работает? *В что происходит в строке "return (n * funkcija(n, stepen-1))" и по какой причине стоит "-1"? Инфо Книга: Джесс Либерти: Освой самостоятельно C++ за 21 день Программа: Microsoft Visual C++ 2010 ОС: Windows 7 x64 P.S. Я не русский, за орфографию сразу извиняюсь.
0
|
||||||
| 15.11.2012, 23:49 | |
|
Ответы с готовыми решениями:
11
Вычислить сумму чисел от 1 до N, возведенных в степень M. Возведение в степень оформить как многократное умножение Возведение в степень Возведение в степень! |
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
|
| 15.11.2012, 23:56 | |
|
0
|
|
|
1321 / 983 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
|
|
| 15.11.2012, 23:56 | |
|
n это и есть то число которе, ты вводишь в переменную chislo. Данная функция это пример рекурсивной функции, которая вызывает сама себя. Почитай про рекурсию.
0
|
|
|
|
|
| 16.11.2012, 00:00 | |
|
функция вычисляет по формуле
С формулой то, надеюсь, согласен?
0
|
|
|
0 / 0 / 2
Регистрация: 15.11.2012
Сообщений: 25
|
||
| 16.11.2012, 00:17 [ТС] | ||
|
Огромное спасибо. Понял.
Добавлено через 14 минут return (cislo * funkcija(cislo, stepen-1)); берётся что (cislo, stepen) это cislo в степени stepen? Я не по формуле там ведь должен был бы быть записан знак какой нибудь, или если делаешь функцию то по умолчанию в C++ первая переменная идёт в степени второй переменной?
0
|
||
|
Антикодер
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
|
|
| 16.11.2012, 00:22 | |
|
если уж изучаете C++ не пишите прогу на транслите, он меня в ступор ввел, лучше короткие англ. слова(хоть и нужно поддерживать русский язык, но не таким способом)
рекомендую перейти на Дейтела и gcc. Пока рекурсию отложите, мне она вообще ни разу в работе не пригодилась. название книги указывает на то, что автор хотел как можно больше продать книг, а не научить вас программировать
0
|
|
|
0 / 0 / 2
Регистрация: 15.11.2012
Сообщений: 25
|
|
| 16.11.2012, 00:49 [ТС] | |
|
Это первая книга и первые шаги в С++, выбрал постольку, поскольку написана достаточно понятным языком и расказано о механики самого программирование.
Но я всё равно не понимаю как и от куда из этого: return (n * funkcija(n, stepen-1)); берётся вот это:
0
|
|
|
|
|
| 16.11.2012, 01:20 | |
|
2 в степени 4=
=funkcija(2, 4)= =2*funkcija(n=2, stepen=3)= =2*{ (n=2)*funkcija(n=2, stepen=2) }= =2*{ 2* {(n=2)*funkcija(n=2, stepen=1) }= =2*{ 2* {2 *{ if (stepen==1) return n} }= =2*{ 2* {2 *{ n=2} } Добавлено через 4 минуты Или лучше попробуй пойти в обратном порядке Нам нужен 2 в третьей степени. = funkcija(2, 3); шаг 1) вход в funkcija(n=2, stepen=3) если stepen!=1 вернуть 2*funkcija(2, 2); шаг 2) вход в funkcija(n=2, stepen=2) если stepen!=1 вернуть 2*funkcija(2, 1); шаг 3) вход в funkcija(n=2, stepen=1) если stepen==1 вернуть 2 шаг 4) возврат числа 2 в выражение на шаге 2. вернуть 2*2=4 шаг 5) возврат числа 4 в выражение на шаге 1 вернуть 2*4=8 Ответ 8
1
|
|
| 16.11.2012, 01:24 | |
|
Не по теме: Kuzia domovenok в пол второго ночи, человеку объяснять рекурсию, молодчик.
0
|
|
|
9 / 9 / 3
Регистрация: 23.10.2012
Сообщений: 215
|
|
| 16.11.2012, 01:30 | |
|
0
|
|
|
33 / 33 / 5
Регистрация: 16.11.2012
Сообщений: 59
|
||||||
| 16.11.2012, 03:04 | ||||||
0
|
||||||
|
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
|
||||||
| 16.11.2012, 04:49 | ||||||
0
|
||||||
| 16.11.2012, 04:49 | |
|
Помогаю со студенческими работами здесь
12
Возведение в степень Возведение в степень Возведение в степень возведение в степень Возведение в степень Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|