Автор Тема: Рекурсия. Язык С  (Прочитано 4267 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн bifshtex

  • Пользователь
  • **
  • Сообщений: 70
    • Просмотр профиля
Рекурсия. Язык С
« : 02 Мая 2010, 13:11:42 »
извините за название прошлой темы, случайно enter нажал...



задача на самом деле не сложная, алгоритм простой, только вот как ее с рекурсией сделать...


С клавиатуры вводится последовательность положительных чисел. Признак конца ввода - ноль. Определить количество чисел, больших 10.

Оффлайн InfStudent

  • Модератор
  • *****
  • Сообщений: 1356
  • Куба любовь моя))
    • Просмотр профиля
Re: Рекурсия. Язык С
« Ответ #1 : 02 Мая 2010, 13:45:01 »
Решение:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;
  var
  i,j:integer;
 function Rec( j:integer):integer;
 var
 k:integer;
begin
readln(k);
if k=0  then
begin
Rec:=j;
end
else
begin
if k>10 then
begin
Rec:=Rec(j+1);
end
else
begin
Rec:=Rec(j);
end;
   end;
      end;
begin
j:=0;
 i:=Rec(j);
 writeln(i);
 readln;
end.
 
Прежде чем задавать вопрос в раздел по программированию повтори теорию и посмотри FAQ! Просьба не кидайте задания в ЛС и не надо мне писать: "посмотри мою задачу!!!" Я смотрю все задачи в разделе когда на форуме
Учтите что подобные ЛС будут оставлены без внимания!
УКАЗЫВАЙТЕ ЯЗЫК ПРОГРАММИРОВАНИЯ НА КОТОРОМ ДОЛЖНА БЫТЬ РЕШЕНА ЗАДАЧА
Вам в помощь:
∫ ¼ ½ ¾ ⅓ ⅔ ⅛ ⅜ ⅝ ⅞ ² ³ ± ~ ‰ ∞ √ ∑ ∆ ℮ ∩ ≡ ≤ ≥ ≈ ∩

Оффлайн bifshtex

  • Пользователь
  • **
  • Сообщений: 70
    • Просмотр профиля
Re: Рекурсия. Язык С
« Ответ #2 : 02 Мая 2010, 21:11:45 »
хмм, а не подскажете как это будет в си?
или в турбо паскале?

Оффлайн InfStudent

  • Модератор
  • *****
  • Сообщений: 1356
  • Куба любовь моя))
    • Просмотр профиля
Re: Рекурсия. Язык С
« Ответ #3 : 03 Мая 2010, 00:45:09 »
int rec(int j);
{
int k;
scanf("%d",&k);
if (k=0){
return j;
}else{
if k>10 {
return Rec(j+1);
}else{
return Rec(j);
}
}
}
Прежде чем задавать вопрос в раздел по программированию повтори теорию и посмотри FAQ! Просьба не кидайте задания в ЛС и не надо мне писать: "посмотри мою задачу!!!" Я смотрю все задачи в разделе когда на форуме
Учтите что подобные ЛС будут оставлены без внимания!
УКАЗЫВАЙТЕ ЯЗЫК ПРОГРАММИРОВАНИЯ НА КОТОРОМ ДОЛЖНА БЫТЬ РЕШЕНА ЗАДАЧА
Вам в помощь:
∫ ¼ ½ ¾ ⅓ ⅔ ⅛ ⅜ ⅝ ⅞ ² ³ ± ~ ‰ ∞ √ ∑ ∆ ℮ ∩ ≡ ≤ ≥ ≈ ∩

 

Рекурсивная процедура. Почему рекурсия работает неправильно?

Автор Asira

Ответов: 1
Просмотров: 3908
Последний ответ 24 Декабря 2009, 22:22:25
от InfStudent