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

Считать данные из файла в динамический массив соответствующего типа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Погрешность интерполяции на C++ http://www.cyberforum.ru/cpp-beginners/thread305474.html
написал код для интерполяционного полинома Ньютоно, он работает правильно, но вот никак не могу разобратса как обчислить его погреность погреность находитса за данной формулой http://s2.itrash.ru/idb/f7664d3b17e3356d6a15d474a63960d7/odefault.gif где http://saveimg.ru/pictures/26-05-11/a2dfadbab7ea25838abc34d76f533340.gif как я понимаю тут f n+1 (x) это производная n+1 куда ми подставляем...
C++ Шаблонный класс: динамический числовой массив увеличиваемого размера привет помогите реализовать программу на шаблоны пожалйста: Реализовать динамический числовой массив увеличиваемого размера как класс шаблон. Класс должен иметь перегруженный оператор индексирования. Также в классе должен быть метод добавления элемента с конца массива. Продемонстрировать конкретизацию шаблона и его использование. http://www.cyberforum.ru/cpp-beginners/thread305449.html
C++ Двудольный граф??
Проверка является ли граф двудольным))
C++ Корректный ввод структуры и ее обработка
Добрый день. Есть вопрос, как мне правильно ввести структуру, что бы потом корректно с ней работать. Задание:Нужно составить структуру данных и организовать соответствующую обработку данных. На автозаправочных станциях (АЗС) продается бензин с маркировкой 92, 95 и 98. В городе был проведен мониторинг цены бензина на различных АЗС. Напишите программу, которая будет определять для каждого...
C++ Последовательность http://www.cyberforum.ru/cpp-beginners/thread305433.html
Даны натуральные числа n, а1 ..., an. Получить произведение членов последовательности а1, ..., an, удовлетворяющих условию 2^n<an<n! Только не через массив, а цикл for Помогите, пожалуйста, написать код. Спасибо
C++ Получить новую матрицу путем умножения всех элементов данной матрицы на ее наименьший по модулю элемент Получить новую матрицу путем умножения всех элементов данной матрицы на ее наименьший по модулю элемент подробнее

Показать сообщение отдельно
asics
Freelance
Эксперт С++
2846 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
26.05.2011, 16:53     Считать данные из файла в динамический массив соответствующего типа
Цитата Сообщение от IIIa66uMEM6eP Посмотреть сообщение
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
39
40
41
42
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#include <functional>
#include <iterator>
 
size_t cnt_neg(std::vector<int> &a){
  return std::count_if(a.begin(), a.end(), std::bind2nd(std::less<int>(), 0));
}
 
int main(){
  std::fstream fs("1.txt", std::ios::in);
  if(!fs){
    std::cerr << "File not found" << std::endl;
    return 1;
  }
  std::vector<std::vector<int> > m;
  while(!fs.eof()){
    std::vector<int> t;
    int t_;
    while(fs >> t_){
      if(!t_)
        break;
      t.push_back(t_);
    }
    m.push_back(t);
  }
  fs.close();
  fs.open("1.txt", std::ios::out);
  for(int i = 0; i < m.size(); ++i){
    if(cnt_neg(m[i]) < 2)
      continue;
    std::vector<int>::iterator it_1 = std::find_if(m[i].begin(), m[i].end(), std::bind2nd(std::less<int>(), 0)),
    it_2 = std::find_if(it_1 + 1, m[i].end(), std::bind2nd(std::less<int>(), 0));
    m[i].erase(it_1 + 1, it_2);
    for(int j = 0; j < m[i].size(); ++j)
      fs << m[i][j] << ' ';
    fs << '0';
  }
  return 0;
}
Содержимое файла примерно такое:
Код
6 3 -3 7 2 1 -8 0 7 3 1 7 6 -5 3 7 0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru