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

Считывание из файла в С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ ODBC, параметры по умолчанию http://www.cyberforum.ru/cpp-beginners/thread330161.html
Доброго утра! Хочу на ПК програмно прописывать источники ODBC. Пример абстрактного, работающего кода. Это некий копи паст - так что не обращайте внимание на стайл. Мне важно понять суть. void main() { if (!SQLConfigDataSource(NULL,ODBC_ADD_SYS_DSN, "SQL Server\0", "DSN=RUM\0" "SERVER=RUM\0"
C++ Конструктор копирования не работает Прошу вас помочь разобраться с конструктором копирования. Проблема в следующем при вызове конструктора копирование вылетает ошибка не пойму в чем проблема. #include <iostream> #include <windows.h> using namespace std; struct Book { char *term; char *definition; }; http://www.cyberforum.ru/cpp-beginners/thread330158.html
Упорядочить строки матрицы по возрастанию значений элементов ее главной диагонали методом обмена. C++
Упорядочить строки матрицы по возрастанию значений элементов ее главной диагонали методом обмена. Может кто-то помочь ?
C++ Затруднение со scanf
Вот моя переписанная программа, затрудняюсь со scanf (как переделать на С++ ?) #include <iostream> #include <stdio.h> #include <math.h> #include <windows.h> using namespace std; int main() { SetConsoleCP(1251); //Òóïêà, øðèôò íå çàáóäü Lucida
C++ Удаление столбца и строки в матрице http://www.cyberforum.ru/cpp-beginners/thread330097.html
Доброго времени суток всем. У меня возникла следующая проблема при программировании на с++, а конкретно с удалением строки и столбца в матрице(нужно удалить строку и столбец где находится максимальный элемент). Я смог найти максимальный элемент и удалить строку, а при удалении столбца другие столбцы идущие после него переносятся под матрицу, помогите исправить пожайлуста. Вот код программы:...
C++ Дано натуральное число N. Выяснить, сколько положительныхэлементов содержит матрица Помогите аписать программу на Си, вот условие:Дано натуральное число N. Выяснить, сколько положительных элементов содержит матрица Аij , где i,j=1,....,n; Аij = sin(i^2-j^2/n) подробнее

Показать сообщение отдельно
insolent
 Аватар для insolent
826 / 347 / 15
Регистрация: 30.01.2009
Сообщений: 1,204
07.07.2011, 01:34     Считывание из файла в С++
Цитата Сообщение от Ihtiandr Посмотреть сообщение
огромное спасибо
Кнопочка внизу!
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
66
#include <iostream>
#include <vector>
#include <fstream>
#include <algorithm>
 
using namespace std;
 
// имя файла
const char* fname = "data.txt";
 
int main(int argc, char* argv[])
{
    // Исходный массив
    int myint[] = { 1, 3, 34, 7, 2, 4, 8, 5, 11 };
    // Копируем массив в вектор
    vector<int> arr(myint, myint+9);
    // Вектор, который будет заполнятся числами из файла
    vector<int> buf;
    int A = 0, D = 0;
 
    // Объявляем потоковый итератор и связываем его с cout
    ostream_iterator<int> cit(cout, " ");
    // Копируем данные из вектора в поток cout(выводим на экран)
    copy(arr.begin(), arr.end(), cit);
    cout << endl;
 
    // Открываем файл fname
    fstream file(fname, ios_base::in);
 
    // Проверяем, чтобы файл открылся корректно
    if (!file)
        return 0;
 
    // Объявляем потоковый итератор и связываем его с файлом fname
    istream_iterator<int> f_it(file);
    // Конец потока
    istream_iterator<int> end_f;
 
    // Резервируем места в векторе, что влезли все числа с файла
    buf.resize(12);
    // Копируем все числа из файла в вектор
    copy(f_it, end_f, buf.begin());
 
    vector<int>::iterator it;
    vector<int>::iterator itp;
    // Проходим циклом по строкам 
    for (it = buf.begin(); it != buf.end(); it += 3)
    {
        // Считать первый элемент первого столбца в переменную A и 
        // первый элемент третьего столбца в переменную D
        A = *it; D = *(it+2);
        // Нахождения совпадений элемента вектора с А
        itp = find(arr.begin(), arr.end(), A);
        // Если совпадение найдено
        if (itp != arr.end())
            // К следующему элементу прибавить D
            *(++itp) += D;
    }
 
    // Копируем данные из вектора в поток cout(выводим на экран)
    copy(arr.begin(), arr.end(), cit);
    cout << endl;
 
    cin.get();
    return 0;
}
 
Текущее время: 23:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru