Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
spam1990
5 / 5 / 0
Регистрация: 03.03.2010
Сообщений: 38
1

В файле заданы координаты концов отрезков. Вывести их на экран

09.03.2010, 17:51. Просмотров 1204. Ответов 7
Метки нет (Все метки)

в файле задано координаты концов отрезков. Вівести их на екран. Количество отрезков не известно


помогите осуществить ету задачу, мне нада имено работа з файлами, остальное я зделал
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2010, 17:51
Ответы с готовыми решениями:

На прямой своими концами заданы N отрезков. Найти точку принадлежащую максимальному числу отрезков
Помогите пожалуйста понять, что от меня хотят и какой(как) разработать алгоритм для решения этой...

Считая, что заданы координаты концов отрезков, найти их длины
Дан файл натуральных чисел. Количество чисел в файле кратно четырем, каждые два последовательных...

Заданы N отрезков с координатами концов. Принадлежность точки отрезкам.
Вообщем не пойму саму суть определения... const n=3; var i,x,k:integer; a,b:array of real;...

Два отрезка заданы координатами их концов. Вычислить и сравнить эти длины отрезков
Два отрезка заданы координатами их концов: A1(7,5;8);B1(2,3;5) A2(-1,2;4);B2(4,2;8) ...

Даны координаты концов двух отрезков на прямой
Даны координаты концов двух отрезков на прямой. Определить, что является пересечением этих отрезков...

7
Vorona
Peace 2 all shining faces
673 / 534 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
09.03.2010, 22:52 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
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
 
int main()
{
    clrscr();
 
    char ch, fname[200];
    cout<<"Enter File name and directory: ";
  cin>>fname;
    ifstream in(fname, ios::in | ios::binary);
        if(!in){
            cout<<"Impossible to open file\nPress any key to exit";
            getch();
            return 1;
        }
    while(!in.eof()){
        in.get(ch);
        cout<<ch;
    }
 
  in.close();
 
    getch();
    return 0;
}
0
spam1990
5 / 5 / 0
Регистрация: 03.03.2010
Сообщений: 38
09.03.2010, 23:39  [ТС] 3
спасибо канешно, но мне нада чтоб открывался файл data.txt а ета прога не открывает его


как можна перелелать????
0
Vorona
Peace 2 all shining faces
673 / 534 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
10.03.2010, 00:49 4
ну как же, все открывает
вводишь к примеру C:\test\data.txt и на экран содержимое файла выводит

Вот только с русскими символами неурядица, может на новых компиляторах нормально
1
10.03.2010, 00:49
spam1990
5 / 5 / 0
Регистрация: 03.03.2010
Сообщений: 38
10.03.2010, 19:28  [ТС] 5
а теперь ещё нада с етих координат построить отрезки, количество координат неизвестно!!!!!!

как можна ето сделать????
у меня не получается записать координаты в переменую

C++
1
2
3
4
int x,y;
for (i=0; i<q; i++)
{while ((x=getc(f))!=EOF)
{x="%d", y="%d");}}
0
Vorona
Peace 2 all shining faces
673 / 534 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
10.03.2010, 23:36 6
а координаты записаны просто цифрами или есть какая-то система записи типа: x = 12;
y = 36; ?
например, если встречается символ x, то через 3 знака начинать записывать символы в массив пока они цифры, а дальше есть ф-ция atoi(), которая переводит строку в переменную типа int, atof() - в float и atol() - в long)
0
spam1990
5 / 5 / 0
Регистрация: 03.03.2010
Сообщений: 38
11.03.2010, 17:57  [ТС] 7
система записи такая

Line1 x=1; y=2;
Line2 x=2; y=3;
.....................
..............
...................
...............
0
Vorona
Peace 2 all shining faces
673 / 534 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
12.03.2010, 14:28 8
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
#include <stdlib.h>
#include <graphics.h>
 
int main(){
    clrscr();
 
    int gdriver = DETECT, gmode, errorcode;
    
        initgraph(&gdriver, &gmode, "");
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        cout<<"Graphics error: "<<grapherrormsg(errorcode)<<endl;
        cout<<"Press any key to halt:";
        getch();
        exit(1);
    }
 
    int i = 0, c = 0;
    int linesx[500][10], linesy[500][10];
    char ch, fname[200], ptr[500];;
    cout<<"Enter File name and directory: ";
    cin>>fname;
    ifstream in(fname, ios::in | ios::binary);
    if(!in){
        cout<<"Impossible to open file\nPress any key to exit";
        getch();
        return 1;
    }
    cout<<"File data:\n";
    while(!in.eof()){
        in.get(ch);
        ptr[c] = ch;        //копируем все содержимое файла в массив
        c++;
        cout<<ch;
    }
    in.close();
 
    cout<<"\n\nCoordinates copied from file:\n";
    for(i = 0; i < c; i++)
        cout<<ptr[i];
 
    char linex[1000][10], liney[1000][10];
    char x = 0, x1 = 0, y = 0, y1 = 0;
 
    for(i = 0; i < 1000; i++){   //обнуляем будущие массивы для хранения чисел
        for(c = 0; c < 10; c++){
            linex[i][c] = 0;
                liney[i][c] = 0;
        }
    }
 
    for(i = 0; ptr[i]!=EOF; i++){
        if(ptr[i] == 'x'){
                i+=2;                  //после Х, первый знак - '=', второй - цифра*
                        //если изменить систему записи элементов в файле
                                            //придется изменить кол-во знаков после Х, сейчас их 2           
            while(ptr[i] <= 57 && ptr[i] >= 48)      //48 - 57 ASCII коды 0 - 9
                linex[x][x1++] = ptr[i++];
            x++;
            x1=0;
        }
        if(ptr[i] == 'y'){
                i+=2;
            while(ptr[i] <= 57 && ptr[i] >= 48)
                liney[y][y1++] = ptr[i++];
            y++;
            y1=0;
        }
    }
 
    cout<<"\n\nAtoi X:\n";            //выводим на экран массивы уже чисел Х и У
    for(i = 0; i < x; i++){
        *linesx[i] = atoi(linex[i]);
        cout<<*linesx[i]<<' ';
    }
    cout<<"\nAtoi Y:\n";      
    for(i = 0; i < y; i++){
        *linesy[i] = atoi(liney[i]);
        cout<<*linesy[i]<<' ';
    }
    cout<<"\nPress any key to view lines";
    getch();
    cleardevice();
 
    line(*linesx[0], *linesy[0], *linesx[1], *linesy[1]);
    line(*linesx[2], *linesy[2], *linesx[3], *linesy[3]);
    line(*linesx[4], *linesy[4], *linesx[5], *linesy[5]);
    //и т.д. ...
 
    getch();
    closegraph();
    return 0;
}
ну и содержимое файла C:\data.txt к примеру:
Line1 x=4; y=4;
Line2 x=24; y=100;
Line3 x=8; y=4;
Line4 x=100; y=24;

Добавлено через 2 часа 18 минут
для графики файл EGAVGA.BGI нужен в папке, откуда BCPP запускаешь и в папке с .exe файлом программы, если с .exe запустить захочешь
1
12.03.2010, 14:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2010, 14:28

Заданы координаты концов двух векторов, выходящих из начала координат. Найти длины этих векторов
Заданы координаты концов двух векторов, выходящих из начала координат. Найти длины этих векторов.

даны координаты точек в файле, вывести их на экран и описать вокруг них окружности.графическая интерпретация
даны координаты точек в файле, вывести точки на экран и описать вокруг них окружности.графическая...

Найти длину ломаной, координаты которой заданы в текстовом файле
3.2.Найти длину ломанной, координаты которой заданы в текстовом фале: каждая строка – новая точка с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru