Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обработка массивов. Программа, которая вычисляет приближенно площадь фигуры, ограниченной частью кривой https://www.cyberforum.ru/ cpp-beginners/ thread851518.html
тема: Обработка массивов. на си++ Тема: Обработка массивов. Составить программу, которая вычисляет приближенно площадь фигуры, ограниченной частью кривой у=у(х)=х+(х^1/2)+(х^2/3)-2,5 лежащей...
C++ Перезапуск программы по таймеру
Всем привет. Необходимо в определенное время перезапустить программу, запущенную на компьютере. Как реализовать?
chained hash table C++
У меня вопросы на счёт chained hash table. - Можем ли мы хранить различные записи (records), чьи ключи генерируют одно и тоже значение хеш (hash value)? - пропорционально ли число записей,...
C++ не работает прога #include <cstdlib> #include <stdio.h> #include <iostream.h> #include <math.h> #include <stdlib.h> #include <conio.h> //#define N 11 https://www.cyberforum.ru/ cpp-beginners/ thread851512.html
C++ Сортировка простым слиянием https://www.cyberforum.ru/ cpp-beginners/ thread851503.html
Нужно считать числа из двух документов, сделать слияние и сортировку и вывести результат в консоли. Искала нечто похожее, не нашла.
C++ Генеалогическое дерево
Помогите придумать как решить. Каким-нибудь способом, потому что я даже не знаю как к ней подойти, при этом ее нужно сделать в консоле. Организовать генеалогическое дерево в виде многосвязного...
Выдать количество поездов, прибывающих на заданную станцию до указанного времени. Не могу понять как добавить сравнение) C++
Дан файл с информацией о движении поездов. Задание: Выдать количество поездов, прибывающих на заданную станцию до указанного времени. Вот кусочек программы (сама функция): void poiskN() {...
C++ vector<vector<double>> => 2 * vector<vector<double>> Здравствуйте. У меня следующий вопрос. Имеется двумерный массив, созданный через класс vector<vector<double>> и пусть последний столбец состоит из 0 и 1. Мне необходимо разделить исходную матрицу на... https://www.cyberforum.ru/ cpp-beginners/ thread851472.html
C++ Небольшое уточнение https://www.cyberforum.ru/ cpp-beginners/ thread851454.html
Дан массив. в нем выполняется поиск элемента последовательным или бинарным методами (в зависимости от заданных параметров). вот код полной программы: #include "stdafx.h" #include <iostream>...
C++ Проблемы с Code::Blocks12.11 Я только учусь программировать на с++, и по этому спрашиваю у опытных или тех кто знает эту проблему. Читаю книгу C++ руководство для начинающих - Шилдт Г. И там была программа с циклом for. Надо... https://www.cyberforum.ru/ cpp-beginners/ thread851448.html
0 / 0 / 0
Регистрация: 05.01.2013
Сообщений: 17
29.04.2013, 17:45  [ТС] 0

Графическое изображение геометрических фигур на координатной плоскости

29.04.2013, 17:45. Просмотров 2585. Ответов 2
Метки (Все метки)

Ответ

lemegeton, спасибо, конечно, большое за оказанный труд ^___^ ну в общем я сама решила проблему))) код такой нечитабельный из-за того, что я не отбросила куски, которые комментила)) вот в общем решённый код, всё работает проблема заключалась в том, что я описывала координаты точек графически, потом к ним обращалась, вот прога и выводила чушь) сделала отдельные массивы именно для описаний координат графически - всё работает с:
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#include "conio.h"
#include "stdlib.h"
#include "math.h"
#include "graphics.h"
#define z 13
#define e -10
#define g 20
#define E 100
 
#define p -9
#define q 20
 
using namespace std;
 
int main(int argc, char *argv[])
{
int osy,osx,xt,yt,mx,my;
int i,n,t1,t2,t3;
float perim;
int x[E],y[E];
char s[50];
printf("\n koordinaty tochek \n-------------------------\n");
initwindow(600,600);
setbkcolor(15);
cleardevice();
setcolor(5);
my=(getmaxy()/20);
mx=(getmaxx()/20);
setlinestyle(0,1,3);
osy=getmaxy();
osx=getmaxx();
line(osx/2+p,0,osx/2+p,osy);//÷åðòèì îñü îðäèíàò
line(0,osy/2+q,osx,osx/2+q);// îñü àáñöèññ
setlinestyle(1,1,1);
for(i=-10;i<11;i++)
{
setcolor(z);
xt=mx*(i+10);
line(xt,0,xt,osy);//âåðòèêàëüíûå ëèíèè
sprintf(s,"%d",i);
setcolor(0);
outtextxy(xt,osy/2+24,s);
}
for(i=-10;i<11;i++)
{
setcolor(z);
yt=my*(i+10);
line(0,yt,osx,yt);//ãîðèçîíòàëüíûå ëèíèè
sprintf(s,"%d",i);
setcolor(0);
outtextxy(osx/2-25,osy-yt,s);
}
n=E;
for(int i=0; i<n; i++)
    {
        x[i]=e+rand()%g;
        y[i]=e+rand()%g;
    }
printf(" \n\tX\tY\n-------------------------\n");
for(int i=0; i<n; i++)
    {
        printf("%2d : (%4d, %4d)\n", i+1,x[i],y[i]);
    }
t1=-1;t2=-1;t3=-1;perim=0;
if (n<3)
{
        printf("nedostatochno tochek dlya postroenia treugol'nika...");
        getch();
        return 0;
}
setcolor(0);
setlinestyle(0,1,3);
int x1[E],y1[E],count=0;
float r1,r2,r3;
for(int i1=0; i1<n-2; i1++)
    for(int i2=i1+1; i2<n-1; i2++)
        for(int i3=i2+1; i3<n; i3++)
            {           
                x1[i1]=(x[i1]+10)*mx;
                x1[i2]=(x[i2]+10)*mx;
                x1[i3]=(x[i3]+10)*mx;
                y1[i1]=getmaxy()-(y[i1]+10)*my;
                y1[i2]=getmaxy()-(y[i2]+10)*my;
                y1[i3]=getmaxy()-(y[i3]+10)*my;
                    
                circle(x1[i1],y1[i1],1);circle(x1[i2],y1[i2],1);circle(x1[i3],y1[i3],1);
                    r1=sqrt((x[i2]-x[i1])*(x[i2]-x[i1])+(y[i2]-y[i1])*(y[i2]-y[i1]));
                    r2=sqrt((x[i2]-x[i3])*(x[i2]-x[i3])+(y[i2]-y[i3])*(y[i2]-y[i3]));
                    r3=sqrt((x[i3]-x[i1])*(x[i3]-x[i1])+(y[i3]-y[i1])*(y[i3]-y[i1]));
                count++;
                if((r1+r2+r3)>perim)
                    {
                            perim=r1+r2+r3;
                                t1=i1; t2=i2; t3=i3;
              }     
}
                x1[t1]=(x[t1]+10)*mx;
                x1[t2]=(x[t2]+10)*mx;
                x1[t3]=(x[t3]+10)*mx;
                y1[t1]=getmaxy()-(y[t1]+10)*my;
                y1[t2]=getmaxy()-(y[t2]+10)*my;
                y1[t3]=getmaxy()-(y[t3]+10)*my;
                 line(x1[t1],y1[t1],x1[t2],y1[t2]);
                 line(x1[t2],y1[t2],x1[t3],y1[t3]);
                 line(x1[t3],y1[t3],x1[t1],y1[t1]);
 
 
printf("\nnaydeno %d treugol'nikov",count);
printf("\n-----------------------------------\n");
printf("\ntreugol'nik c max perimetrom %8.3f obrazyuut tochki %d %d %d\n", perim, t1+1,t2+1,t3+1);
system("PAUSE");
closegraph();
return EXIT_SUCCESS; }


Вернуться к обсуждению:
Графическое изображение геометрических фигур на координатной плоскости
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.04.2013, 17:45

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Классы геометрических фигур
Всем привет! У меня возникли сложности с пониманием и реализацией задания. Имеется задание...

Рисование геометрических фигур
как реализовать эту геометрическую фигуру?

Названия геометрических фигур
Подскажите, пожалуйста, названия следующих геометрических поверхностей. z = x2 + y2 z = x2 - y2...

HELP!!! движение геометрических фигур
Нужна помощь в написании программы движения круга на экране хотя бы чтоб двигался туда сюда по...

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