Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
dkii
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
#1

Запись в файл, среднее арифметическое отрицательных элементов - C++

09.12.2013, 19:12. Просмотров 349. Ответов 9
Метки нет (Все метки)

Задача. В любом текстовом редакторе создать текстовый файл, в который внести информацию согласно варианту. Составить программу, которая будет выполнять обработку информации из файла в соответствии с вариантом. Дополнительные параметры вводит пользователь.
Задание
Найти среднее арифметическое отрицательных элементов.
Результат вычислений дописать в тот же файл.
Помогите пожалуйста написал код, компилятор ошибку не выдает, но получается вот такая ошибка,
сам код:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream> 
#include <fstream> 
#include <stdio.h> 
#include <conio.h> 
#include <math.h> 
using namespace std;
 
int main(int argc, char* argv[])  
{ 
int x,min,z,res; 
char a; 
unsigned int i; 
  
 cout<<"Vvedite chislo: z="; 
 cin>>z; 
 ifstream f2("chisla.txt"); 
 i++; 
 f2>>x; 
 min=abs(x-z); 
 res=x; 
 f2>>x; 
 while (! f2.eof()) 
  { 
  i++; 
  if ((abs(x-z))<min) 
   { 
     min=abs(x-z); 
     res=x; 
   } 
  f2>>x; 
  } 
 f2.close(); 
 ofstream f1("chisla.txt",ios::app); 
 f1<<"\n **  REZULTAT  **\nIskomoe chislo: "<<res; 
 f1.close(); 
 cout<<"resultat dopisano v tot ge fajl \n"; 
 getch();
 
 return 0; 
}
0
Миниатюры
Запись в файл, среднее арифметическое отрицательных элементов  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2013, 19:12
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Запись в файл, среднее арифметическое отрицательных элементов (C++):

Среднее арифметическое отрицательных элементов
Здравствуйте. Я решал задачу: Написать программу расчёта среднего...

Среднее арифметическое отрицательных элементов массива
Дано: Со стандартного потока ввода данных считываются значения одномерного...

Среднее арифметическое положительных элементов массива, произведение и количество отрицательных элементов
в массиве X найти среднее арифметическое положительных элементов массива,...

Среди первых n элементов последовательности найти среднее арифметическое отрицательных элементов
#include &lt;iostream&gt; #include &lt;math.h&gt; /* Пусть a=0.01; a=sin(k+a) ,...

Вычислить среднее арифметическое отрицательных элементов массива
Помогите студенту!!!!) ___________________________ Вычислить среднее...

Посчитать среднее арифметическое отрицательных элементов массива
Условие: K (6) - массив действительных чисел. Посчитать среднее...

9
dkii
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
10.12.2013, 19:59  [ТС] #2
ап1

Добавлено через 41 минуту
немножко подправил, осталась 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
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream> 
#include <fstream> 
#include <stdio.h> 
#include <conio.h> 
#include <math.h> 
using namespace std;
 
int main(int argc, char* argv[])  
{ 
int x,min,z,res; 
char a; 
unsigned int i; 
  
 cout<<"Vvedite chislo: z="; 
 cin>>z; 
 ifstream f2("chisla.txt"); 
 for(i=0;i<4;i++) 
 f2>>x; 
 min=abs(x-z); 
 res=x; 
 f2>>x; 
 while (! f2.eof()) 
  { 
  i++; 
  if ((abs(x-z))<min) 
   { 
     min=abs(x-z); 
     res=x; 
   } 
  f2>>x; 
  } 
 f2.close(); 
 ofstream f1("chisla.txt",ios::app); 
 f1<<"\n **  REZULTAT  **\nIskomoe chislo: "<<res; 
 f1.close(); 
 cout<<"resultat dopisano v tot ge fajl \n"; 
system("pause");
}
Добавлено через 44 минуты
ап2

Добавлено через 20 часов 43 минуты
ар1

Добавлено через 1 час 7 минут
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
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream> 
#include <fstream> 
#include <stdio.h> 
#include <conio.h> 
#include <math.h> 
using namespace std;
int main(int argc, char* argv[])
{
    int x, sa , res,sum;
        char a;
    unsigned int i;
    ifstream f2("chisla.txt");
    for(i=0;i<4;i++) 
        f2>>x;
    sum=0;
    sum=sum+x;
    res=x;
    f2>>x;
    while (! f2.eof()) 
        { 
  i++; 
  if (i<0) 
  {
     sum=sum+x;a++;
  }
   { 
     sa=sum/i; 
     res=x; 
   } 
 f2>>x; 
  } 
 f2.close(); 
 ofstream f1("chisla.txt",ios::app); 
 f1<<"\n **  REZULTAT  **\nIskomoe chislo: "<<res; 
 f1.close(); 
 cout<<"resultat dopisano v tot ge fajl \n"; 
system("pause");
}
немножко изменил, может поможете кто может.
0
FAQEnD
43 / 43 / 15
Регистрация: 15.12.2012
Сообщений: 88
10.12.2013, 20:12 #3
какая ошибка то? Ты хоть скажи что не так.
0
dkii
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
10.12.2013, 21:10  [ТС] #4
программа записывает последнее число из файла в результат, а не среднее арифметическое

Добавлено через 49 минут
ап1
0
FAQEnD
43 / 43 / 15
Регистрация: 15.12.2012
Сообщений: 88
10.12.2013, 22:07 #5
Здесь творится что то не ясное:
C++
1
2
    for(i=0;i<4;i++) 
        f2>>x;
зачем считывать 4 раза в переменную " x ", если она не массив?
0
dkii
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
10.12.2013, 23:13  [ТС] #6
можешь написать правильно? как должно быть

Добавлено через 56 минут
па1
0
FAQEnD
43 / 43 / 15
Регистрация: 15.12.2012
Сообщений: 88
11.12.2013, 00:36 #7
что лежит в файле chisla.txt?
0
dkii
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
12.12.2013, 00:08  [ТС] #8
-6
-5
-4

Добавлено через 8 часов 57 минут
ап1

Добавлено через 51 минуту
ап2

Добавлено через 1 час 21 минуту
FG3

Добавлено через 54 минуты
fg4

Добавлено через 3 часа 0 минут
...
0
uhx
60 / 60 / 19
Регистрация: 11.07.2013
Сообщений: 304
12.12.2013, 00:39 #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream> 
#include <fstream> 
using namespace std;
int main(int argc, char* argv[])
{
    setlocale(0,""); // кириллица
    int x[255],n=0,i,sr=0;
    ifstream f2("chisla.txt");
    while(!f2.eof()) f2>>x[n++];
    for(i=0;i<n;i++)sr+=x[i];
    sr/=i;
    i=0;
     cout<<"Результат выведен "<<sr;
    f2.close();
    ofstream f1("chisla.txt");
    while(i<n)f1<<x[i++]<<"\n";
    f1<<"\n*RESULT*\n"<<sr;
system("pause>>void");
}
1
dkii
0 / 0 / 1
Регистрация: 03.11.2013
Сообщений: 101
12.12.2013, 19:10  [ТС] #10
Добавлено через 7 минут
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
26
#include <iostream> 
#include <fstream> 
#include <stdio.h> 
#include <conio.h> 
#include <math.h> 
using namespace std;
int main(int argc, char* argv[])
{
    int number;
    int count = 0;
    int summ = 0;
    ifstream f2("chisla.txt");
    while (! f2.eof()) { 
        f2 >> number;
        if (number < 0) {
            count++
            summ += number;
         }
    }
    f2.close(); 
    ofstream f1("chisla.txt",ios::app); 
    f1<<"\n **  REZULTAT  **\nIskomoe chislo: "<< summ/count; 
    f1.close(); 
    cout<<"resultat dopisano v tot ge fajl \n"; 
    system("pause");
}
помощь уже не требуется.
0
12.12.2013, 19:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2013, 19:10
Привет! Вот еще темы с решениями:

Определить среднее арифметическое отрицательных элементов последовательности
Составить алгоритм решения задачи и разработать программу на языке С++: С...

Вычислить среднее арифметическое отрицательных элементов массива
Создать функцию, параметром которой является одномерный массив и его...

Определить среднее арифметическое отрицательных элементов массива
Дано одномерный массив действительных чисел, состоящий из 10 элементов....

Найти среднее арифметическое отрицательных элементов матрицы
найти среднее арифметическое отрицательных элементов матрицы лежащей ниже...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

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