Задача на текстовый фаил(паскаль) |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задача на текстовый фаил(паскаль) |
nadea |
Сообщение
#1
|
Группа: Пользователи Сообщений: 3 Пол: Женский Репутация: 0 |
ПОжалуйста,напишите полный текст проги:
Дан текстовый фаил натуральных чисел,за которыми следует целое отрицательное число. Используя рекурсивную подпрограмму,вычислиье сумму натуральных чисел файла Заранее спасибо=)) |
nadea |
Сообщение
#2
|
Группа: Пользователи Сообщений: 3 Пол: Женский Репутация: 0 |
ак как рекурсию составить,не подскажете
|
nadea |
Сообщение
#3
|
Группа: Пользователи Сообщений: 3 Пол: Женский Репутация: 0 |
function sum : longint;
var c:integer; sm:longint; begin c := 0; sm := 0; while (not eof(F)) and (c >= 0) do begin readln(f, c); if c >= 0 then sm := sm + c; end; sum := sm; end; // Это с рекурсией function sum_R : longint; var c:integer; sm:longint; begin sm := 0; if not eof(F) then begin readln(f, c); if c >= 0 then sm := c + sum_R; end; sum_R := sm; end; var h:longint; begin assign(f, 'file.txt'); reset(f); h := sum; close(f); writeln('summa=',h); end; // Это с рекурсией assign(f, 'file.txt'); reset(f); h := sum_R; close(f); writeln('summa=',h); end. БЕЗ РЕКУРСИИ программа пашет,а с рекурсией-НЕТ.Подскажите,где может быть ошибка[u] |
volvo |
Сообщение
#4
|
Гость |
Цитата БЕЗ РЕКУРСИИ программа пашет,а с рекурсией-НЕТ Что значит "нет"? Только что проверил, правильный ответ выдается, что еще нужно?Хотя я бы переписал рекурсию вот так: function sum_R : longint;(при условии, что файл не пустой) Сообщение отредактировано: volvo - |
Текстовая версия | 11.01.2025 6:11 |