Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
#1

Работа с файлом - C++

16.10.2010, 19:06. Просмотров 779. Ответов 12
Метки нет (Все метки)

Добрый вечер форумчане. Прошу помочь мне в написание программы. Речь идет о простой последовательности.
Количество чисел, равных полусумме предыдущего и последующего элементов последовательности.
В решении нельзя использовать одномерные массивы. Программа должна содержать функцию, которая получает в качестве параметрами файла (или указатель на файл) и возвращает требуемое значение. Функция main запрашивает с клавиатуры имя файла, обращается к функции и выводит результат
на экран.
Буду очень признателен! Прогу могу написать, только используя массивы. А работать с файлом, тем более через функцию я не умею. Если не затруднит можно с комментариями. Заранее спс.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2010, 19:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с файлом (C++):

работа с файлом) - C++
Помогите пжлст написать прогу.Задание: Найти среднее количество знаков препинания в абзаце.Текст считывать с файла. Добавлено через...

Работа с файлом - C++
Пожалуйста, помогите решить задачку.. Написать на чистом C (без использования C++) консольную программу, которая: - Считывает с диска...

Работа с файлом - C++
#include <iostream> #include <string> using namespace std; struct STUDENT // структура STUDENT { string name; ...

Работа с файлом в С++ - C++
Всем привет! Я никогда не работал с С++, но возникла необходимость чтения-записи в файл на С++. А если еще точнее Embedded C++. Не...

Работа с файлом - C++
Помогите пожалуйста. Надо подсчитать в файле количество букв "A" и записать это число в конец файла.

If работа с файлом - C++
Часть кода в которой я записываю строки в файл,по параметрам которые совпадают,как записать те строки в которых нет совпадение? как...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
16.10.2010, 22:21 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <stdlib.h>
int func(FILE*f);
int main(void)
{int y;
char m[256];FILE*f=NULL;
scanf("%s",m);
f=fopen(m,"r");
 
y=func(f);
return 0;
}
 
int func(FILE* f)
{int a,n=0,b,c;
if(fscanf(f,"%d",&a)!=1){printf("net 4isel");return 0;}if(fscanf(f,"%d",&b)!=1){printf("malo 4isel");return 0;}
while(fscanf(f,"%d",&c)==1)
{if(b==(a+c)/2)n++;
 
 
a=b;b=c;}
 
 
 
return n;}
вот посари проверь
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
16.10.2010, 22:35  [ТС] #3
Прога компилируется, ну и все дела. Одно только не понятно: Как ее проверить? Вроде, по идее работа должна идти с txt файлом.
genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
16.10.2010, 22:38 #4
ну и после запуска введи название файла например input.txt и enter
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
16.10.2010, 22:46  [ТС] #5
Все ништяк. Спс большое! Кстати а нельзя подсчитать именно количеством?
genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
16.10.2010, 22:51 #6
количесвом чего?не понял.
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
16.10.2010, 22:55  [ТС] #7
Создаю текст файл. Открываю его с помощью компилятора(ввожу туда имя файла). Компилятор называет только количество (мало или нет чисел), а подсчитывать их количество не хочет гад))
genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
16.10.2010, 23:01 #8
а в файле скока чисел?

Добавлено через 1 минуту
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <stdlib.h>
int func(FILE*f);
int main(void)
{
char m[256];FILE*f=NULL;
scanf("%s",m);
f=fopen(m,"r");
 
printf("%d",func(f));
return 0;
}
 
int func(FILE* f)
{int a,n=0,b,c;
if(fscanf(f,"%d",&a)!=1){printf("net 4isel");return 0;}if(fscanf(f,"%d",&b)!=1){printf("malo 4isel");return 0;}
while(fscanf(f,"%d",&c)==1)
{if(b==(a+c)/2)n++;
 
 
a=b;b=c;}
 
 
 
return n;}
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
16.10.2010, 23:01  [ТС] #9
ну ввожу около 20-30. Вписываю их специально прогрессией. Он будет выводит мало чисел пока я не виду их 256? Разве нельзя при 20-30 чисел подсчитать то что нужно?
genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
16.10.2010, 23:01 #10
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <stdlib.h>
int func(FILE*f);
int main(void)
{
char m[256];FILE*f=NULL;
scanf("%s",m);
f=fopen(m,"r");
 
printf("%d",func(f));
return 0;
}
 
int func(FILE* f)
{int a,n=0,b,c;
if(fscanf(f,"%d",&a)!=1){printf("net 4isel");return 0;}if(fscanf(f,"%d",&b)!=1){printf("malo 4isel");return 0;}
while(fscanf(f,"%d",&c)==1)
{if(b==(a+c)/2)n++;
 
 
a=b;b=c;}
 
 
 
return n;}
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
16.10.2010, 23:09  [ТС] #11
неа, просто игнорирует while

Добавлено через 2 минуты
В последнем варианте даже при пустом txt выводит мало чисел.
genius5
114 / 36 / 2
Регистрация: 13.12.2009
Сообщений: 223
16.10.2010, 23:17 #12
странно но у меня эта же прога работает вполне верно.а создаеш txt файл там же компилишь?
zloy-
0 / 0 / 1
Регистрация: 16.10.2010
Сообщений: 33
16.10.2010, 23:19  [ТС] #13
да, работаю на VS2008, создаю с помощью project --> new item --> txt файл.
Ладно ниче страшного. И на этом спс большое!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2010, 23:19
Привет! Вот еще темы с ответами:

Работа с файлом - C++
в общем есть некая решенная задача которая имеет классы и методы(ввода и вывода) для них, нужно ювелирно переделать методы так чтоб они...

Работа с файлом - C++
char *FileName =&quot;123.txt&quot;; int h=fileno(fopen(FileName,&quot;r+&quot;)); FileName=&quot;\0&quot;; Как мне теперь используя только h работать с файлом?...

Работа с файлом - C++
вот смотрите есть файл chisla.txt В нем содержатся цифры ( Например 101 258 164) Как мне изъять из файла ТОЛЬКО 1 число (например 101)???

Работа с файлом - C++
Помогите если не затруднит. Есть текстовый файл(примерно такой): A asdada qweqw A ijiijij nvbjk rtrt A


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.10.2010, 23:19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru