![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 16.12.2011
Сообщений: 2
|
![]()
Здравствуйте. Это задача уже есть на вашем форуме на языке Pascal
http://programmersforum.ru/showthread.php?t=41215 [ CODE ]Заданы уравнения трех кривых на плоскости,одно из которых содержит переменный коэффициент k. Кривые пересекаясь, ограничивают замкнутую область D, размеры которой зависят от значения коэффициента k. На той же плоскости заданы декартовы координаты точек, образующих множество М (координаты задаются произвольно, n не больше 20). Для каждого из заданных значений k сформировать P - подмножество M, содержащее точки, которые находятся внутри замкнутой области D. y=1.4*cos(x+0.25) уравнение 1-ой кривой y^2=k*x уравнение 2-ой кривой, где k от 0.1 до 0.5 и шаг 0.1 y=0.2*x-0.5 уравнение 3-ей кривой Найти все точки попадающие в заданную область. [ / CODE ] Мне необходимо перевести ее в C++. Единственное, что получилось сделать и попозже вид переменных заменю: [ CODE ] # include <stdio.h> # include <iostream.h> # include <conio.h> # include <math.h> program CombTypes; int main(); const n = 20; \\максимальное количество точек \\ type to4ka = record x : Real; y : Real; end; \\ координаты точек \\ vector = array[1 .. n] of to4ka; \\все точки \\ natural = 1 .. n; mn = set of natural; \\\множество областей, их по идее 5 \\ var A : vector; D : mn; i, n1 : Integer; k : Real; k10 : Integer; p1, p2, p3 : Real; First : Boolean; { printf('Введите количество точек: '); getch(n1); for (int n = 1; n<20; n++) { printf('Введите значение абсциссы точки A', i, ': '); getch(A[i].x); printf('Введите значение ординаты точки A', i, ': '); getch(A[i].y); } for (int k10 = 1, k10<5; k++) { k = k10 / 10; D = []; for (int i = 1; i<n1; i++) { p1 = 1.4 * cos(A[i].x + 0.25); p2 = 2 * Sqr(A[i].y); p3 = 0.2 * A[i].x - k; if (A[i].y <= p1 && A[i].x >= p2 && (A[i].y >= p3) { cout (Include(D, i) } printf('При k = 0.', k10, ', D содержит ['); First = True; for (i = 1;i< n1; n++) { if (i in D) { if (not First) { cout('A '); printf('A', i); First = False; } } printf(']'); } getchar; [ / CODE ] Помогите пожалуйста доделать или подсказать, ибо опыт изучения языка невелик, а сдавать скоро. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача. Комбинированные типы. Pascal | Nastёna | Помощь студентам | 11 | 24.03.2009 19:21 |
[Pascal] комбинированные типы(задача) | Рамик | Помощь студентам | 7 | 15.03.2009 17:33 |
[Pascal] Комбинированные типы | Рамик | Помощь студентам | 4 | 09.03.2009 18:00 |
Pascal комбинированные типы | Rus 47 | Помощь студентам | 7 | 22.02.2009 17:48 |
Комбинированные типы | melikyan | Помощь студентам | 5 | 10.02.2009 21:41 |