0 / 0 / 0
Регистрация: 28.04.2012
Сообщений: 15
1

нет информации в выходном файле

14.06.2013, 00:51. Показов 416. Ответов 0
Метки нет (Все метки)

Здравствуйте.По заданию (Дан массив размера N. Определить количество его промежутков монотонности (то есть участков, на которых его элементы возрастают или убывают)) написал код.Сначала надо было вводить данные с клавиатуры , а после переделки кода считывать из файла. Но при запуске выдает сообщение ,что введено не число.Выходной файл создается но пустой. Не могу найти ошибку в коде. Складывается впечатление ,что программа не может считать данные с файла , ибо из за ошибке в коде не видит данный файл и поэтому пишет такое сообщение.
Заранее спасибо.
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
#include <fstream>
#include <cstring>
 
int main()
 
{
    setlocale (0, "");
 
    int N ; // размерность массива
    std::ifstream input("input.txt"); // открытие файла для чтения данных
    std::ofstream output("output.txt"); // открытие файла для чтения данных
    input >> N; //чтение из файла размерности массива
    // проверка, можем ли мы проверить данный массив на промежутки монотонности или же он слишком мал
    if (N<=1)
    {
        std::cout<<"маленький массив.промежутки не сосчитать"<<std::endl;
        system ("pause");
    }
    else
    {
        int* array = new int[N];// отводим память под N элементов
        
        // после необходимых проверок, начинаем ввод массива с заданными параметра-ми с клавиатуры
           for (int i=0;i<N;++i)
           {
               input >> array[i];
               if (input.fail()) // проверяем, число ли содержится в файле
               {
                   std::cout<<"введено не число"<<std::endl;
                   system ("pause");
                   
               }
           }
           input.close(); // закрытие файла
           int intervals=1;  // переменная в которой будет храниться количество промежутков монотонности
           int rise=(array[1]>array[0])?1:0; // функция определяющая количество промежутков возрастания
           for (int i=1;i<N-1;++i)
               if (rise)
               {
                   if (array[i+1]<array[i])
                   {
                       rise=rise^1;
                       intervals++;
                   }
               }
               else
               {
                   if (array[i+1]>array[1])
                   {
                       rise=rise^1;
                       intervals++;
                   }
               }
               output<<"промежутков:"<<intervals<<std::endl; // выводим количество промежутков монотонности
               // и выводим заполненный массив.
               output<<"вот ваш массив:";
               for (int i=0;i<N;++i)
               {
                   output<<array[i]<<";";
               }
   output.close();
               return 0;
    }
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.06.2013, 00:51
Ответы с готовыми решениями:

Ошибка кодировки в выходном файле
Есть программа реализации алгоритма Хаффмана #include &lt;iostream&gt; #include &lt;vector&gt; #include...

В выходном файле заменить все маленькие буквы на большие
Добрый вечер всем. Ребят помоги с программой очень прошу, нужно создать программу в выходном...

Реализовать скремблер: в выходном файле пишется только первый байт
Доброго. Не получается реализовать скремлер. В выходном файле только первый байт...

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

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2013, 00:51
Помогаю со студенческими работами здесь

Ошибка в выходном файле
Подскажите пожалуйста в чём может быть ошибка. В выходном файле выходит только файл с цифрой &quot;0&quot; ...

Неверная кодировка в выходном файле
Написал консольное приложение на C#. После обработки текстового документа (*.txt) он обратно ...

Почему в выходном файле выводятся нули?
Здраствуйте форумчане, подскажите пожалуйста почему в выходном файле выводиться нули, хотя оно...

Sqlplus убрать грязь в выходном файле
a.bat sqlplus -s user/pass@127.0.0.1/imeidb @b.sql &gt; C:\c.txt b.sql SELECT IMEI FROM IMEI_IC;...

Почему в выходном файле выводиться ноль?
Добрый вечер! помогите найти ошибку, почему в выходном файле выводиться ноль? {Даны n...

Помогите снизить качество изображения на выходном файле
Написал такой код) генерирует изображения tif. procedure TForm1.Button1Click(Sender: TObject);...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru