Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 230
от 21.10.2006, 01:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 210, Экспертов: 56
В номере:Вопросов: 2, Ответов: 3


Вопрос № 59013: дан прямугольник, поделенный на n×m окошек, в которых написаны натуральные цифры. Надо найти количество магических квадратов в этом прямоугольнике. Помогите пожалуйта, буду очень длагодарен! п.с. магический квадрат это гогда в строчку в...
Вопрос № 59029: Не могли бы вы помочь с решением программы, заранее спасибо : Организуйте массив, содержащий 15 различных целых чисел. После это- го отдельно первых 5 элементов, вторых 5 элементов и последних 5 элементов сортируются по возрастанию. Сод...

Вопрос № 59.013
дан прямугольник, поделенный на n×m окошек, в которых написаны натуральные цифры. Надо найти количество магических квадратов в этом прямоугольнике. Помогите пожалуйта, буду очень длагодарен!

п.с. магический квадрат это гогда в строчку в столбик и по диогонали сумма чисел равна, пример:

Приложение:

Отправлен: 15.10.2006, 20:24
Вопрос задал: Dr1m (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Dr1m!
Самое просто решение - прямой перебор.
Ответ будет содержаться в переменной magic_total
тривиальные квадраты - размером 1х1 не учитываются.
Типы переменных и соотв. объявление доделаете сами.

Приложение:

---------
Не узнаешь - не попробуешь.

Ответ отправил: Сухомлин Кирилл Владимирович (статус: Практикант)
Ответ отправлен: 16.10.2006, 02:43
Оценка за ответ: 5
Комментарий оценки:
Супер, мне очень помог Сухомлин Кирилл Владимирович


Вопрос № 59.029
Не могли бы вы помочь с решением программы, заранее спасибо :
Организуйте массив, содержащий 15 различных целых чисел. После это-
го отдельно первых 5 элементов, вторых 5 элементов и последних 5
элементов сортируются по возрастанию. Содержимое отсортированного
таким образом массива выводится на экран.
Отправлен: 15.10.2006, 22:15
Вопрос задал: Pal Orlenko PilovichNick (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Устинов Сергей Евгеньевич
Здравствуйте, Pal Orlenko PilovichNick!

В приложении программа, решающая Вашу задачу. В дальнейшем перед тем, как отсылать задание на портал потрудитесь сами его решить. Если не получится - присылайте результаты Вашей работы - покажем где у Вас ошибка, а просто решать за Вас задачи нет никакого смысла. Сейчас решил Вам, т.к. это Ваш первый вопрос.

Удачи!

Приложение:

---------
Ответы на все вопросы - на сайте www.ya.ru

Ответ отправил: Устинов Сергей Евгеньевич (статус: Студент)
Ответ отправлен: 15.10.2006, 22:52

Отвечает: NiGHT
Здравствуйте, Pal Orlenko PilovichNick!

В качесте рационатьности можно в 1 цикл загнать, а не 3 раза функцию вызывать. В более широких массивах это быстрее будет... хоть и писать больше:

const D=5;
var i,j,mina,minb,minc, temp:integer;
m:array[1..15] of integer;
begin
for i:=1 to 15 do m[i]:=random(maxint);
writeln('Do sortirowki');
for i:=1 to 5 do
begin
writeln(m[i],' ', m[i+D], ' ', m[i+2*D]);
end;
{========================================}
for i:=1 to D-1 do
begin
mina:=i;
minb:=i+D;
minc:=i+2*D;

for j:=i+1 to D do
begin
if m[mina]>m[j] then mina:=j;
if m[minb]>m[j+D] then minb:=j+D;
if m[minc]>m[j+2*D] then minc:=j+2*D;
end;
temp:=m[i];
m[i]:=m[mina];
m[mina]:=temp;
temp:=m[i+D];
m[i+D]:=m[minb];
m[minb]:=temp;
temp:=m[i+2*D];
m[i+2*D]:=m[minc];
m[minc]:=temp;
end;
{========================================}

writeln;
writeln('Posle sortitowki');
for i:=1 to 5 do
begin
writeln(m[i],' ', m[i+D], ' ', m[i+2*D]);
end;

readln;
end.
Ответ отправил: NiGHT (статус: Студент)
Ответ отправлен: 16.10.2006, 03:23
Оценка за ответ: 4


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.37 от 04.10.2006
Яндекс Rambler's Top100

В избранное