Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Zlode
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 2
1

Количество взаимно перпендикулярных пар прямых

04.12.2009, 11:35. Просмотров 674. Ответов 2
Метки нет (Все метки)

1.Задано некоторое количество прямых, введенными в
компьютер коэффициентами а и b уравнения у -а*х+b.
Составить программу, определяющую количество взаимно
перпендикулярных пар среди заданных прямых.
ещё желательно чтобы кол-во прямых можно задавать самому...


2.есть ещё такая задачка она более понятна:

В компьютер вводятся координаты х и у некоторого
количества точек на плоскости. Составить программу,
выдающую на экран координаты двух точек, находящихся на
максимальном удалении друг от друга.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2009, 11:35
Ответы с готовыми решениями:

Ветвление. Даны уравнения прямых. Выяснить, какие из этих прямых параллельны
Написать программу: Даны уравнения прямых а1х+b1y=c1, a2x+b2y=c2, a3x+b3y=c3. Выяснить, какие из...

Количество соседних пар
Описать функцию для определения количества пар соседних элементов одномерного массива, имеющих...

Подсчитать количество пар противоположных чисел
Записать в файл последовательного доступа N целых чисел, полученных с помощью генератора случайных...

Школьный бал - найти количество подходящих пар
Школьный бал Финалом выпускного бала состояния выполнения школьного вальса. Для этого нужно...

Подсчитать количество соседних пар элементов с противоположным значением
Даны 30 чисел в интервале от -20 до 20. Подсчитать количество соседних пар элементов с...

2
Puporev
Модератор
55062 / 42329 / 29230
Регистрация: 18.05.2008
Сообщений: 100,026
04.12.2009, 11:57 2
Лучший ответ Сообщение было отмечено как решение

Решение

Примерно так.
Pascal
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
uses crt;
type
Line=record
     a,b:real;
     end;
var
p:array[1..50] of Line;
n,i,k,j,r:integer;
begin
clrscr;
write('Количество прямых n=');
readln(n);
writeln('Введите коэффициенты прямых:');
for i:=1 to n do
 begin
  repeat
  write('a[',i,'] <>0 =');readln(p[i].a);
  {поскольку прямую параллельную оси У нельзя задать коэффициентом,
  то и прямую параллельную оси Х тоже не будем задавать}
  until p[i].a<>0;
  write('b[',i,']=');readln(p[i].b);
 end;
clrscr;
writeln('Коэффициенты уравнений:');
write('№');
for i:=1 to n do
write(i:5);
writeln;
writeln;
write('a');
for i:=1 to n do
write(p[i].a:5:1);
writeln;
write('b');
for i:=1 to n do
write(p[i].b:5:1);
writeln;
writeln;
writeln('Пары перпендикулярных прямых:');
k:=0;
for i:=1 to n-1 do
for j:=i+1 to n do
if p[i].a=-1/p[j].a then
 begin
  k:=k+1;
  write('№',i,' y=');write(p[i].a:0:1,'x');
  if p[i].b>0 then writeln('+',p[i].b:0:1)
  else writeln('+',p[i].b:0:1);
  write('№',j,' y=');write(p[j].a:0:1,'x');
  if p[j].b>0 then writeln('+',p[j].b:0:1)
  else writeln('+',p[j].b:0:1);
 end;
writeln;
write('Количество пар перпендикулярных прямых=',k);
readln
end.
Добавлено через 6 минут
2. В программе рандомный ввод координат. Если нужно с клавиатуры, сделайте как в первой программе.
Pascal
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
uses crt;
type point=record
           x,y:real;
           end;
function Rasst(a,b:point):real;
begin
Rasst:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y));
end;
var a:array[1..100] of point;
    max:real;
    n,i,j,imx,jmx:integer;
begin
clrscr;
randomize;
write('Количество точек (нормально до 13) = ');
readln(n);
for i:=1 to n do
 begin
  a[i].x:=10*random-4;
  a[i].y:=10*random-4;
 end;
write('Нoмер точки ');
for i:=1 to n do write(i:5);
writeln;
write('координата Х');
for i:=1 to n do write(a[i].x:5:1);
writeln;
write('координата Y');
for i:=1 to n do write(a[i].y:5:1);
writeln;
writeln;
max:=0;imx:=1;jmx:=1;
for i:=1 to n-1 do
for j:=i+1 to n do
if Rasst(a[i],a[j])>max then
 begin
  max:=Rasst(a[i],a[j]);
  imx:=i;
  jmx:=j;
 end;
write('Максимальное расстояние между точками ',imx,' и ',jmx,' =',max:0:1);
readln
end.
1
Zlode
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 2
04.12.2009, 12:01 3
Очень большое спасибо!все очень понятно и доступно!
Вы лучший)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2009, 12:01

Количество пар одинаковых соседних элементов в каждой строке матрицы.
Задан двумерный массив (n × m). Найти количество пар одинаковых «Соседних» элементов в каждой...

Определить количество различных рядом стоящих пар цифр в числе
Помогите пожалуйста 1) Дано натуральное число из N цифр. Определить количество различных рядом...

В одномерном массиве подсчитать количество пар соседних одинаковых элементов
Некоторые задачи я сам делаю (многие), но на некоторых зависаю и поэтому пишу сюда, чтобы помогли: ...


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

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

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