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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2011, 18:09   #1
sanya94
Пользователь
 
Регистрация: 24.11.2010
Сообщений: 20
По умолчанию ошибка в коде

Вот прямая рекурсивная функция она должна вызывать саму себя .
где ошибка у меня?
мой код. :
Код:
#include<iostream>
int p(int k,int a)
{
	if(k<=a)
		return k+a;
     else
     return ((a+k)*(a+k));}
	
void main()
	{
	int a;
   int k;
  
		cin>> a;
		cin>> k;
	  cout<< p(k,a);
		}

Последний раз редактировалось Stilet; 12.01.2011 в 19:31.
sanya94 вне форума Ответить с цитированием
Старый 12.01.2011, 18:24   #2
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Ну во первых ничего рекурсивного в вашей функции я не вижу! А по поводу ошибки
cout<< p(k); не хватает ещё одного параметра
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 12.01.2011, 18:25   #3
sanya94
Пользователь
 
Регистрация: 24.11.2010
Сообщений: 20
По умолчанию

всё нашол.. а как из этой проги сделать рукурсивную функцию
sanya94 вне форума Ответить с цитированием
Старый 12.01.2011, 18:26   #4
like-nix
Форумчанин
 
Регистрация: 09.11.2009
Сообщений: 104
По умолчанию

еще ошибка в том что это не рекурсивная функция =)

Код:
int p(int k,int a)
{
if(k<=a)
return k+a;
else
return ((a+k)*(a+k));}
like-nix вне форума Ответить с цитированием
Старый 12.01.2011, 18:27   #5
like-nix
Форумчанин
 
Регистрация: 09.11.2009
Сообщений: 104
По умолчанию

какова параметра:?

функция p принимает 2 параметра, а ты указываешь 1
like-nix вне форума Ответить с цитированием
Старый 12.01.2011, 18:27   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
int p(int k,int a)
{
if(k<=a)
return k+a;
else
return ((a+k)*(a+k));}
и где тут она себя вызывает?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.01.2011, 18:27   #7
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
какова параметра:?
int p(int k,int a)

второго! скорее всего int a; int k;
это а
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 12.01.2011, 18:28   #8
like-nix
Форумчанин
 
Регистрация: 09.11.2009
Сообщений: 104
По умолчанию

Или напиши как ругает компилятор =)
like-nix вне форума Ответить с цитированием
Старый 12.01.2011, 18:33   #9
sanya94
Пользователь
 
Регистрация: 24.11.2010
Сообщений: 20
По умолчанию

она уже неругается) норм роботает только как из неё сделать рекурсивную функцию
sanya94 вне форума Ответить с цитированием
Старый 12.01.2011, 18:43   #10
like-nix
Форумчанин
 
Регистрация: 09.11.2009
Сообщений: 104
По умолчанию

Вот пример рекурсивной функции, которая вычисляет фрактал числа
Код:
int fract(int count)
{
	if(count == 1)
		return 1;

	return count + fract(count - 1);
}
like-nix вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка в коде c# Roegis Помощь студентам 6 14.01.2011 13:00
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Ошибка в коде . vedro-compota Общие вопросы Delphi 3 08.06.2010 11:10
ошибка в коде? Darkdog Microsoft Office Excel 12 27.02.2010 06:47
Ошибка в коде. fanyl Паскаль, Turbo Pascal, PascalABC.NET 10 21.09.2009 12:09