1.Определить является ли заданная целочисленная квадратная матрица n-го порядка магическим квадратом, т.е. такой, в которой суммы элементов во всех строках и столбцах одинаковы.
2.Дана строка символов S. Подсчитать сколько раз среди данных символов встречается символ + и сколько раз символ *
3.Найти такую точку заданного на плоскости множества, точек, сумма расстояний от которой до остальных минимальна.
Требования, предъявляемые к заданиям:
1. предусмотреть меню:
ввод данных с клавиатуры;
ввод данных из файла;
выход.
3. выполнить с применением подпрограмм пользователя
(К третьей, еще два условия: 4.предусмотреть отображение координатных осей;
5.выделить цветом результат решения поставленной задачи.
Помогите Брятья... будьте любезны!!! (TPascal)
Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill
1. Пройти по первой строке матрицы, найти сумму элементов. Потом в цикле пройти по остальным столбцам и строкам, найти сумму их элементов. Если хоть одна сумма не совпадает с первоначальной - не является.
2. for i:=1 to length(s) do
begin
if s='+' then inc(plus);
if s='*' then inc(star);
end;
3. Обойти все точки, для каждой найти сумму расстояний от остальных точек для нее. Расстояние от точки (х1, у1) до (х2, у2) считается по теореме Пифагора: sqrt(sqr(x2-x1)+sqr(y2-y1))
2. for i:=1 to length(s) do
begin
if s='+' then inc(plus);
if s='*' then inc(star);
end;
3. Обойти все точки, для каждой найти сумму расстояний от остальных точек для нее. Расстояние от точки (х1, у1) до (х2, у2) считается по теореме Пифагора: sqrt(sqr(x2-x1)+sqr(y2-y1))
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
спасибо дружищще!!! удружил ты мне...
только... я III задачу никак решить не могу... просто навыков работы с графикой нету... а задачу дня через два надо сдавать... я уже запарился... это, еще не все задачи (я все перереишил) одна эта осталась... сможешь решеть, буду благодарен... помогите начинающему программеру :-)
только... я III задачу никак решить не могу... просто навыков работы с графикой нету... а задачу дня через два надо сдавать... я уже запарился... это, еще не все задачи (я все перереишил) одна эта осталась... сможешь решеть, буду благодарен... помогите начинающему программеру :-)
Третью можно решить, даже не прикасаясь к графике. А если нужна графика - создать массив записей, каждая запись - координаты точки. Для каждой точки сделать putpixel(x,y,white) Потом найти точку, удовлетворяющую условию, потом для ее координат сделать путпиксель каким-нибудь другим цветом
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
помогитеееееееее!!!!!!!!!!!!!!!!!!!!!!
пожалуйста!!!!!!!!!!!!!
я никак третью задачу решить не могу... я пробовал, честное слово пробовал!!!
пришлите ради бога решение, мне задачу послезавтра сдавать...
дайте мне взглянуть на эту задачу поганую...
p.s. , братья программеры...
серьезно, если сможите... если у вас время для меня бедного (но талантлевого) найдетется... ПРИШЛИТЕ МНЕ РЕШЕНИЕ
П О Ж А Л У Й С Т А
пожалуйста!!!!!!!!!!!!!
я никак третью задачу решить не могу... я пробовал, честное слово пробовал!!!
пришлите ради бога решение, мне задачу послезавтра сдавать...
дайте мне взглянуть на эту задачу поганую...
p.s. , братья программеры...
серьезно, если сможите... если у вас время для меня бедного (но талантлевого) найдетется... ПРИШЛИТЕ МНЕ РЕШЕНИЕ
П О Ж А Л У Й С Т А
Основные куски кода. Начальные значения, инициализацию графики и проч. приготовиловку - сам.
Дальше найти минимум в массиве ranges, это см. раздел алгоритмы.
Код: Выделить всё
type TPoint=record
x,y:integer;
end;
var points:array[1..10] of TPoint; {координаты точек}
ranges: array[1..10] of real; {Сумма расстояний от каждой точки до всех остальных}
function range(a,b:TPoint):real;
begin range:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y)); end;
for i:=1 to 10 do
for j:=1 to 10 do
ranges[i]:=ranges[i]+range(points[i],points[j]);
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Спасибо Друг... если бы не ты...
ходить бы мне на отработки...
спасибо тебе большое!

ходить бы мне на отработки...
спасибо тебе большое!
