Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2010, 15:59   #11
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

А если вот так ))
Код:
#include <iostream>
using namespace std;


int main()
{
	int i,N,a;
	a=2;//Возводимое в степень число
	cin>>N; // Cтепень возведения

	for(i=1;i<=N-1;i++)
		a*=2;
	cout<<a;

return 0;
}
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол

Последний раз редактировалось atenon; 07.10.2010 в 16:01.
atenon вне форума Ответить с цитированием
Старый 07.10.2010, 16:12   #12
Marmelade
Пользователь
 
Аватар для Marmelade
 
Регистрация: 29.09.2010
Сообщений: 25
По умолчанию

Цитата:
Сообщение от atenon Посмотреть сообщение
А если вот так ))
Код:
#include <iostream>
using namespace std;


int main()
{
	int i,N,a;
	a=2;//Возводимое в степень число
	cin>>N; // Cтепень возведения

	for(i=1;i<=N-1;i++)
		a*=2;
	cout<<a;

return 0;
}
Так работает... Все равно не понимаю, почему нельзя использовать в условии функции... =(( Если цикл например состоит из формулы... Или например факториала...
Marmelade вне форума Ответить с цитированием
Старый 08.10.2010, 06:30   #13
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Цитата:
почему нельзя использовать в условии функции...
Что нельзя использовать в условии функции?
Цитата:
Если цикл например состоит из формулы...
Состоит из формулы условие цикла? Тело цикла? или что то другое?
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
atenon вне форума Ответить с цитированием
Старый 08.10.2010, 14:18   #14
Marmelade
Пользователь
 
Аватар для Marmelade
 
Регистрация: 29.09.2010
Сообщений: 25
По умолчанию

Как бы разобрался с циклами, но все равно есть вопросы.....
Вот например цикл возведения числа в нн-ую степень


for(i=1;i<=N-1;i++)
a*=2;


В самом цикле і=1 (начальное значение), i<=N-1 (предельное значение),
i++(шаг цикла).

Почему предельное значение i<=N-1, а не i<N ?????
Marmelade вне форума Ответить с цитированием
Старый 08.10.2010, 14:43   #15
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Цитата:
Почему предельное значение i<=N-1, а не i<N ?????
Абсолютно согласен лучше i<N
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
atenon вне форума Ответить с цитированием
Старый 08.10.2010, 15:39   #16
Marmelade
Пользователь
 
Аватар для Marmelade
 
Регистрация: 29.09.2010
Сообщений: 25
По умолчанию

Объясните пожалуйста, как считается цикл возведения в степень числа 2, если степень равна 3 (а=3)...
for(i=1;i<=N-1;i++)
а*=2 //получается а=а*2 (3=3*2)
как получается 8???

Последний раз редактировалось Marmelade; 08.10.2010 в 18:29.
Marmelade вне форума Ответить с цитированием
Старый 08.10.2010, 20:22   #17
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Цитата:
если степень равна 3 (а=3)...
Вам нужно внимательнее читать коментарии )))
Цитата:
a=2;//Возводимое в степень число
а вот:
Цитата:
cin>>N; // Cтепень возведения
Цитата:
а*=2 //получается а=а*2 (3=3*2)
Можно написать а=а*2
Так лучше воспринимается (по себе знаю)
Цитата:
3=3*2
Люди знающие математику от этого выражения будут дико матерится и плеваться но знаки в с++ отличаются от знаков в математике, советую вернутся к понятию переменной, там четко описывается что знак "=" это не знак равенства, а знак ПРИСВАИВАНИЯ (знак равенства такой "==").
Цитата:
а=а*2
Логика кода: Переменной "а" присваивается значение переменной
"а" умноженной на 2.
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол

Последний раз редактировалось atenon; 08.10.2010 в 20:42.
atenon вне форума Ответить с цитированием
Старый 08.10.2010, 20:31   #18
Marmelade
Пользователь
 
Аватар для Marmelade
 
Регистрация: 29.09.2010
Сообщений: 25
По умолчанию

Цитата:
Сообщение от atenon Посмотреть сообщение
Вам нужно внимательнее читать коментарии )))

а вот:



Можно написать а=а*2
Так лучше воспринимается (по себе знаю)

Математики от этого выражения будут плеваться и ругаться но с++ не математика, советую вернутся к понятию переменной, там четко описывается что знак "=" это не знак равенства, а знак ПРИСВАИВАНИЯ (знак равенства такой "==").

Логика кода: Переменной "а" присваивается значение переменной
"а" умноженной на 2.

Я это все знаю.... Получается так а=2*2. Т.к. степень возведения 3, то цикл будет выполняться 3 раза? Я правильно понял суть цикла?

Последний раз редактировалось Marmelade; 08.10.2010 в 20:43.
Marmelade вне форума Ответить с цитированием
Старый 08.10.2010, 20:52   #19
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Цитата:
Я это все знаю.... Получается так а=2*2. Т.к. степень возведения 3, то цикл будет выполняться 3 раза? Я правильно понял суть цикла?
Здесь можно запутаться потому что а=2*2 (код: переменной "а" присваивается 3 раза 4, если N = 3) и а=а*2 приведут к совершенно разным результатам.
Цитата:
Т.к. степень возведения 3, то цикл будет выполняться 3 раза? Я правильно понял суть цикла?
Да правильно
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
atenon вне форума Ответить с цитированием
Старый 08.10.2010, 20:57   #20
Marmelade
Пользователь
 
Аватар для Marmelade
 
Регистрация: 29.09.2010
Сообщений: 25
По умолчанию

Цитата:
Сообщение от atenon Посмотреть сообщение

Да правильно
Теперь понятненько... Буду решать задачи с циклами, тренероваться. Спасибо за помощь +1 к рейтингу
Marmelade вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# ф-я возведения вещ числа в целую степень без include<math.h> Mitya999 Помощь студентам 5 14.12.2009 16:30
Забыл африфметическую операцию для возведения в N'ую степень pro100-delphi Паскаль, Turbo Pascal, PascalABC.NET 5 21.08.2009 16:18
Степень числа DmitryChuvashin Помощь студентам 2 11.03.2009 17:29
Степень числа Серафимий Долговяз Помощь студентам 3 26.02.2009 07:09