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

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> рекурсия и файл, Си
сообщение
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Дан текстовый файл. Определить сколько в нем содержится цифр.
Программа должна содержать итеративную и рекурсивную функции, и не должна иметь глобальных переменных.

файл может содержать более одной строки (как это учесть?), где распологаются буквы и цифры через любой разделитель.

какое условие нужно задавать для нахождения цифр?

Сообщение отредактировано: 18192123 -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Не знаю, зачем здесь НЕрекурсивная функция, если вполне можно обойтись одной рекурсией:

#include <stdio.h>
#include <ctype.h>

int get_count(FILE *f) {

if(feof(f)) return 0;
return
(isdigit(getc(f)) ? 1 : 0) + get_count(f);

}
int main() {

FILE *f;
if((f = fopen("test.txt", "rt")) == NULL) {
printf("Cannot open input file.\n");
return 1;
}

printf("%d", get_count(f));
fclose(f);

return 0;

}



Но можешь открыть файл, например, в одной функции, а потом вызвать рекурсию...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Цитата(volvo @ 18.04.2007 16:28) *

Не знаю, зачем здесь НЕрекурсивная функция, если вполне можно обойтись одной рекурсией
Но можешь открыть файл, например, в одной функции, а потом вызвать рекурсию...


Тогда, наверное, имелось ввиду написать две ф-ции, которые будут выполнять задание, только одна рекурсивно, а другая итеративно, и пользователь может выбрать один из этих способов.

isdigit(getc(f) - это наверно ф-я, прототип которой находится в <ctype.h>? А как она работает? Каковы параметры её?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 





- Текстовая версия 5.05.2024 21:43
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name