Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Нарушение прав доступа 
:(
    Опции темы
Negent
  Дата 18.7.2014, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 9.12.2011
Где: Симферополь

Репутация: нет
Всего: нет



Доброго времени суток, уважаемые программисты!
Вкратце: шефом была поставлена задача выяснить остатки витой пары на складе... Однако простое суммирование - это не наш метод, поэтому я написал программу, которая считывает длины из файла и потом суммирует эти длины, далее, сортирует в порядке возрастания и в будущем (надо написать часть) записывает массив в файл.
Однако я получил сумму и сбой "Необработанное исключение. Нарушение прав доступа".
Прошу помочь, подсказать, где ошибка в цикле, использующем "while". Компилятор (MS Visual C++ 2010) спотыкается именно там.
Код

#include "stdafx.h"
#include <fstream>
#include <iostream>


using namespace std;

void main ()
{

    ifstream FromFile;
    FromFile.open ("spisok.txt");
    if (!FromFile.is_open())
    {
        cout<<"File not found!";
        exit(EXIT_FAILURE);
    }
    //Инициализация массива и счётчика
        int const size = 100;
        double arr[size];
        int i = 0;
        double sum = 0;
        double TempValue = 0;
    //Считывание элементов массива 
    while (FromFile.good ()) 
    {
        FromFile>>TempValue;
        arr[i] = TempValue;
        cout<<TempValue<<" ";
        sum +=TempValue;
        cout<<"Sum: "<<sum<<endl;
        i++;
    }
        if (FromFile.eof()) cout<<"End of file!"<<endl;
        else if (FromFile.fail ()) cout<<"Type mismatch!"<<endl;
        else if (sum == 0) cout<<"No data!"<<endl;
        else cout<<"Unknown error!"<<endl;
    //Сортировка элементов массива
    for (i=0; i<size-1; i++)
    {
        if (arr[i]>arr[i+1])
        {
            TempValue = arr[i+1];
            arr[i+1] = arr[i];
            arr[i] = TempValue;
        }
    }
    i=0;
    while (i<size-1)
    {
        cout<<"arr["<<i+1<<"] = "<<arr[i]<<"  ";
        i++;
    }
    system ("pause");
}


Файл, простой текстовый со следующими данными:
Цитата
140 108 50 21 20 15 11 32 14 14 9 7 10 4.5 8 6 4 16 6 3 7 5.2 5 4 5 8 6 9.5 7 4.2 4.5 8 5 5 5 7 13 13 7 4 9 5 7 8 4 13 13 6 8 5 5 5 18 9 10 6 8 10 19 13 9 10 13 23 13 14 14 10 27 12 21 9 22 31 10 10 89 7 4 4 4 5 3.9 35 5 8 6 4.2 4 15 5 5 7.5 9 11 4 4 3 14 11 2 11 2.5 13 10 5 5 13 0

PM MAIL WWW ICQ Skype   Вверх
baldina
Дата 18.7.2014, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



джедай... скопипастить в ексель уже не круто?

...
походу файл гуд более чем 100 раз. std::vector<double> поможет

Добавлено через 2 минуты и 29 секунд
зы. для сортировки есть std::sort(), а для обмена значениями std::swap()

Добавлено через 4 минуты и 43 секунды
кстати, в приведенном примере файла 109 значений
PM MAIL   Вверх
baldina
Дата 18.7.2014, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



когда получится, загляни сюда
только не подглядывать!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0977 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.