IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Рекурсия, рекурсиваная процедура....
Миклашевский Денис
сообщение 20.03.2008 9:24
Сообщение #1


Гость






Доброго времени суток! Если кто может помогите с задачкой...:


Написать рекурсивную процедуру, которая считывает вводимые с клавиатуры числа до тех пор, пока не будет обнаружен 0.Затем введенные числа распечатываются в обратном порядке.0 Не печатать.


спасибо заранее!
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 21.03.2008 23:22
Сообщение #2


Гость






PascalABC workaround:
type arrtype = array[1 .. 100] of real;
function mat(const a: arrtype; i, n: integer;
var sum: real): integer;
begin
if (i > n) or (a[i] < 0) then mat := 0
else begin
sum := sum + a[i];
mat := 1 + mat(a, i + 1, n, sum);
end;
end;

var
a: arrtype;
n, i: integer; s: real;
begin
readln(n);
for i := 1 to n do
readln(a[i]);

i := mat(a, 1, n, s);
writeln(s:8:4, ' ', i);
end.


Сообщение отредактировано: volvo - 22.03.2008 3:41
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Миклашевский Денис   Рекурсия   20.03.2008 9:24
spill   Procedure ReadInt; Var X: Integer; Begin Read...   20.03.2008 12:22
Гость   А можно для "тупых" с телом программы :)...   20.03.2008 21:27
klem4   begin ReadInt end.   20.03.2008 21:32
vRs   В люом случае, это ведь не рекурсия...   21.03.2008 12:28
volvo   Ну да, конечно... Только ReadInt сама себя вызывае...   21.03.2008 12:45
Michael_Rybak   Действительно. Это не рекурсия. Это рекурсивная ...   21.03.2008 14:10
sintanial   Не хотел создавать новую тему, так что спрошу тута...   21.03.2008 20:07
volvo   Для начала вынеси собственно решение в отдельную п...   21.03.2008 20:16
sintanial   ну воть Забыл сказать, что нельзя использовать ци...   21.03.2008 20:40
sintanial   Вот написал но оно не пашет =). Пишет ошибку ти...   21.03.2008 21:47
volvo   В принципе, рекурсия и будет заменять цикл... Смо...   21.03.2008 21:58
sintanial   Спасибо огромное, щас буду разбираться что да как ...   21.03.2008 22:01
sintanial   Уже появились вопросы =) const a: array of real в...   21.03.2008 22:22
andriano   И еще volvo наш учитель почему то не разрешает пол...   21.03.2008 22:55
volvo   Да не выбивает оно ничего (если ты используешь TP,...   21.03.2008 23:01
sintanial   Ясно =). Спасибо огромное. А на счет ABC - просто ...   21.03.2008 23:22
volvo   PascalABC workaround: type arrtype = array[1 .. 10...   21.03.2008 23:22


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.06.2025 8:10
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"