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

дано 2 целочисленных файла, получить пересечение - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать структуру с именем Sportsmen и сформировать односвязный список http://www.cyberforum.ru/cpp-beginners/thread517483.html
Ребят,помогите пожалуйста,кто может - написать вот такую программу.... Создать структуру с именем Sportsmen с полями: фамилия, имя, вид спорта, результат. Сформировать односвязный список. Затем...
C++ В одномерном массиве А, состоящем из N вещественных элементов, вычислить В одномерном массиве А, состоящем из N вещественных элементов, вычислить: a) сумму отрицательных элементов массива; b) количество элементов, удовлетворяющих условию -7<{a}_{i} и {a}_{i}<5. http://www.cyberforum.ru/cpp-beginners/thread517479.html
C++ Вопрос по кириллице
Дана задача: Напишите программу, которая считывает с клавиатуры символ (ch) и затем вы-водит одно из следующих сообщений (вместо ch должен выводиться введенный сим-вол, а вместо ... –...
задача на цикл for C++
Составить программу-генератор чисел Пифагора а, b, с, (с^2=a^2+b^2).В основу положить формулы: а=m^2-n^2 ,b=2*m*n, с=m^2+n^2 (m, n-натуральные, 1<m<k, 1<n<k, k - данное число). Результат вывести на...
C++ Назад в прошлое, графика под DOS. [graphics.h] http://www.cyberforum.ru/cpp-beginners/thread517463.html
Сделал двигающийся паравозик, сказали "сделать звездное небо", проблема заключается в том, что не выводится белые пиксели "на небе", а именно не зацикливает чегото, да и вообще при указании...
C++ Движение на стрелочках На wasd могу, на стрелочках не получается задать изменение координат, помогите пожалста подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
9627 / 5575 / 947
Регистрация: 25.07.2009
Сообщений: 10,710
13.03.2012, 09:10
Проверки файловых операций, конечно, не хватает, да и вывод файлов не совсем честно сделан (особенно последнего), но думаю - и так запутано получилось...
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
#include <iostream>
#include <fstream>
#include <map>
 
#define IN_FILE_1 "file1.txt"
#define IN_FILE_2 "file2.txt"
#define OUT_FILE "file3.txt"
 
int main(){
    std::map<int, int> map;
    std::map<int, int>::iterator it;
    int number;
    
    std::ifstream fin(IN_FILE_1);
    if ( ! fin.is_open() ){
        std::cerr << "Can't open " << IN_FILE_1 << " for input!" << std::endl;
        return 1;
    }
    
    std::cout << IN_FILE_1 << ":" << std::endl;
    while ( fin >> number ){
        std::cout << number << " ";
        map[number] = 0;
    }
    std::cout << std::endl;
    fin.close();
    
    fin.open(IN_FILE_2);
    if ( ! fin.is_open() ){
        std::cerr << "Can't open " << IN_FILE_2 << " for input!" << std::endl;
        return 1;
    }
    std::cout << IN_FILE_2 << ":" << std::endl;
    while ( fin >> number ){
        std::cout << number << " ";
        if ( ( it = map.find(number) ) != map.end() )
            it->second = 1;
    }
    std::cout << std::endl;
    fin.close();
    
    std::ofstream fout(OUT_FILE);
    if ( ! fout.is_open() ){
        std::cerr << "Can't open " << OUT_FILE << " for output!" << std::endl;
        return 1;
    }
    std::cout << OUT_FILE << ":" << std::endl;
    for ( it = map.begin(); it != map.end(); ++it ){
        if ( it->second ){
            std::cout << it->first << " ";
            fout << it->first << " ";
        }
    }
    fout.close();
    std::cout << std::endl;
    
    return 0;
}
Код
$ ./intersection 
file1.txt:
22 11 13 43 26 91 88 
file2.txt:
40 33 11 89 13 26 69 57 
file3.txt:
11 13 26
file1.txt и file2.txt нужно создать прежде, чем запускать программу.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru