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

Написать программу, работающую с файлами - C++

Восстановить пароль Регистрация
 
theocone
0 / 0 / 0
Регистрация: 23.12.2010
Сообщений: 11
24.12.2010, 17:14     Написать программу, работающую с файлами #1
люди, помогите написать программу на файлы. я с++ недавно изучать начал, с файлами еще не разобрался, а задание уже задали..(( завтра уже сдавать(

Цель задания
Определить принадлежность серии точек прямоугольнику со сторонами, параллельными осям координат
Описание
На первой строке входного файла указываются координаты главной диагонали прямоугольника. На второй строке указывается количество точек , и далее следует строк, на каждой из которых через пробел записываются координаты точки.
В выходной файл необходимо вывести все проверяемые точки, для каждой из которых необходимо указать, принадлежит она прямоугольнику, или нет.
Пример
Пример файла input.txt
2 2 4 5
2
0 0
3 3
Пример файла output.txt
0 0 – no
3 3 - yes
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2010, 17:14     Написать программу, работающую с файлами
Посмотрите здесь:

C++ Написать программу в С++ (действия с файлами, матрицами, векторами)
C++ Описать структуру с именем ZNAK и написать программу, работающую с ней.
Нужно написать программу, работающую со структурами C++
Написать программу, работающую с массивом струтур human C++
C++ Написать программу, работающую со структурами Автомобиль
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
24.12.2010, 18:40     Написать программу, работающую с файлами #2
пробуйте
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
#include <stdio.h>
#include <iostream>
#include<conio.h>
#include<fstream>
#include<string>
using namespace std;
 
int main()
{
    char c[4];
    int x[20];
    int yes[20];
    int count=0;
    ifstream ifs("input.txt");
    ofstream ofs("output.txt");
    while(ifs>>c){
        int ato=atoi(c);
        x[count]=ato;
        count++;
    };
    for(int i=0;i<2*x[4];i+=2){
        if(x[i+5]>x[0]&&x[i+5]<x[2]&&x[i+6]>x[1]&&x[i+6]<x[3])
            ofs<<x[i+5]<<' '<<x[i+6]<<' '<<"yes"<<'\n';
        else ofs<<x[i+5]<<' '<<x[i+6]<<' '<<"no"<<'\n';
    }
     ifs.close();
     ofs.close();
  getch();
}
theocone
0 / 0 / 0
Регистрация: 23.12.2010
Сообщений: 11
24.12.2010, 19:08  [ТС]     Написать программу, работающую с файлами #3
я попробовал
программа создает файл otput но в нем ничего не записано
почему? я разместил файл input.txt в той же папке что нах-ся otput, но результат такой же
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
24.12.2010, 19:10     Написать программу, работающую с файлами #4
theocone, Попробуй мой код.
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
#include <iostream>
#include <vector>
#include <fstream>
 
int main()
{
    std::ifstream ifs("input.txt");
 
    if(!ifs.is_open())
    {
        std::cerr << "File not found" << std::endl;
        return 1;
    }
 
    std::vector<int> tmp;
    int _tmp;
    while(!ifs.eof())
    {
        ifs >> _tmp;
        tmp.push_back(_tmp);
    }
 
    std::ofstream ofs("output.txt");
    for(size_t i = 5; i < tmp.size() - 1; i += 2)
    {
        if(tmp[i] >= tmp[0] && tmp[i] <= tmp[2] &&
           tmp[i + 1] >= tmp[1] && tmp[i + 1] <= tmp[3])
        {
            ofs << tmp[i] << ' ' << tmp[i + 1] << " - yes\n";
        }
        else
        {
            ofs << tmp[i] << ' ' << tmp[i + 1] << " - no\n";
        }
    }
 
    return 0;
}
theocone
0 / 0 / 0
Регистрация: 23.12.2010
Сообщений: 11
24.12.2010, 19:13  [ТС]     Написать программу, работающую с файлами #5
igorrr37, нет все правильно, это я ошибся - назвал файл input.txt а надо просто input
Yandex
Объявления
24.12.2010, 19:13     Написать программу, работающую с файлами
Ответ Создать тему
Опции темы

Текущее время: 00:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru