Вопрос № 81689: Помогите решить задачу. Сколькими способами можно представить число 1 000 000 произведением 3 натуральных целых чисел? Не считать, если множители просто занимают разные положения (перестановка множителей). Объяснить ответ. Пожалуйста, Заранее спасибо...Вопрос № 81753: Помогите пожалст задачку решить))
Дана матрица размерности m на n. Определить строку и столбец матрицы, обладающий следующими свойствами: сумма модулей элементов является максимальной среди всех столбцов и строк....
заранее спасибо... чт...Вопрос № 81794: Умные люди!!Обращается к вам глупый студент военмеха..У меня проблема...не решить задачу!Помогите плииииз!!!Вычислить сумму элементов матрицы М(n*n),лежащих справа от главной диагонали..Заранее спасибо....Вопрос № 81830: Братцы, помогите, умираю)
Ввести массив А из пяти элементов, сформировать массив B(5*5) такой что, b[i,j]= (система) i+j, если i<j
(i-j)/(i+1), j<i
Найти массив С, равный a*b. Упорядочить массив С в порядке возрастания а...Вопрос № 81853: Помогите решить задачу:
В цех вторичной переработки поступают бутылки четырех видов: коричневые стеклянные, зеленые стеклянные, прозрачные стеклянные и пластиковые. Бутылки поступают на переработку партиями в контейнерах, причем в каждом контейн...
Вопрос № 81.689
Помогите решить задачу. Сколькими способами можно представить число 1 000 000 произведением 3 натуральных целых чисел? Не считать, если множители просто занимают разные положения (перестановка множителей). Объяснить ответ. Пожалуйста, Заранее спасибо
Отправлен: 09.04.2007, 10:50
Вопрос задал: DoK-Z (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 4)
Отвечает: Решетник Д
Здравствуйте, DoK-Z!
Раз так все срочно, можно использовать способ "в лоб".
Просто 3 цикла от 1 до 1 000 000 / 2. если произведение подходит, берем. К этому добавляем вариант 1 000 000 * 1 * 1. И создать какой-нить массив с флагами, в который записывать использованные варианты.... Способ будет очень грузный и за него вам хорошего ничего думаю не скажут.
Попробуйте еще такой вариант. Разложите число на простые множители и комбинируйте их в группы из 3 чисел. то есть имея числа: 1, 2, 3, 4, 5, 6, 7, 8, 9.
Комбинируйте их на такие 1*2*3, 4*5*6, 7*8*9 и все оставишиейся перстановки....
--------- Жизнь коротка, чтобы писать на ассемблере
Ответ отправил: Решетник Д (статус: Студент)
Ответ отправлен: 09.04.2007, 11:03
Отвечает: fsl
Здравствуйте, DoK-Z!
Не совсем в лоб, но тоже долго ;)!!!
uses crt;
var a,b,c,p:longint;
i:integer;
begin
for a:=1 to 500000 do
begin
writeln(a,'; ',i,'; ');
for b:=a to 500000 do
begin
c:=1000000 div (a*b);
if a*b*c=1000000 then
if c>b then i:=i+1;
end;
end;
writeln();
write(i);
end.
Удачи!
--------- Ну, Вы спросили!
Ответ отправил: fsl (статус: Студент)
Ответ отправлен: 09.04.2007, 11:10
Вопрос № 81.753
Помогите пожалст задачку решить))
Дана матрица размерности m на n. Определить строку и столбец матрицы, обладающий следующими свойствами: сумма модулей элементов является максимальной среди всех столбцов и строк....
заранее спасибо... что б я-чайник без вас делал?!))
Я так понимаю, строка должна обладать максимальной суммой модулей среди строк, а столбец - среди столбцов. Тогда решение такое:
max:=-1; {хранится текущий максимум сумм(поскольку мы суммируем по модулюЮ тоза начальный максимум можно взять -1)}
imax:= 1; {индекс строки с максимальной суммой }
for i:=1 to m do {цикл по строкам}
begin
s:=0;
for j:=1 to n do {цикл по элементам строки (столбцам), где находится сумма модулей}
s:= s+abs(a[i,j]);
if s>max then begin max:=s; imax:=i; end; {если новая сумма больше, запоминаем текущую строку}
end;
max:=-1;
jmax:= 1; {индекс столбца с максимальной суммой }
for j:=1 to n do {всё выполняется аналогично, только для столбцов}
begin
s:=0;
for i:=1 to m do
s:= s+abs(a[i,j]);
if s>max then begin max:=s; jmax:=j; end;
end;
Результат для столбца - jmax, для строки - imax. Если что не так поняла - пишите.
Удачи)
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: 9-ый класс)
Ответ отправлен: 09.04.2007, 18:46
Вопрос № 81.794
Умные люди!!Обращается к вам глупый студент военмеха..У меня проблема...не решить задачу!Помогите плииииз!!!Вычислить сумму элементов матрицы М(n*n),лежащих справа от главной диагонали..Заранее спасибо.
Отвечает: Gh0stik
Здравствуйте, Трусов Александр Евгеньевич!
В приложении готовый код, если Вам нужно чтобы в сумму входили и элементы самой диагонали, то просто условие if i < j then s:=s+ms[i,j];
замените на if i < = j then s:=s+ms[i,j];
Good Luck!!!
Приложение:
--------- Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессионал) Украина, Славянск Организация: Славянский государственный педагогический университет (Кафедра алгебры) ICQ: 289363162 ---- Ответ отправлен: 09.04.2007, 21:16
Отвечает: Verena
Здравствуйте, Трусов Александр Евгеньевич!
Элементы главной диагонали квадратной матрицы имеют индексы i=j. Соответственно, элементы справа от неё имеют индексы j>i. Самое простое - добавлятьк сумме элементы, чьи индексы удовлетворяют этому условию.
s:=0;
for i:=1 to n do
for j:=1 to n do
if j>i then s:=s+a[i,j];
Можно по-другому, начиная второй цикл сразу с нужного индекса:
s:=0;
for i:=1 to n-1 do
for j:=i+1 to n do
s:=s+a[i,j];
Результат - переменная s.
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: 9-ый класс)
Ответ отправлен: 09.04.2007, 21:17 Оценка за ответ: 5
Отвечает: Vassea
Здравствуйте, Трусов Александр Евгеньевич!
S - сумма
i, j, n : integer;
a - двумерный массив -матрица a: array [1..10,1..10] of real;
s:=0;
for i:=1 to n-1 do
for j:=i+1 to n do
s:=s+a[i,j];
Ответ отправил: Vassea (статус: 1-ый класс)
Ответ отправлен: 09.04.2007, 22:27 Оценка за ответ: 5
Вопрос № 81.830
Братцы, помогите, умираю)
Ввести массив А из пяти элементов, сформировать массив B(5*5) такой что, b[i,j]= (система) i+j, если i<j
(i-j)/(i+1), j<i
Найти массив С, равный a*b. Упорядочить массив С в порядке возрастания абс. значения его элементов.
Отвечает: Сарумян
Здравствуйте, Серов Алексей Евгеньевич!
Program system32;
var
a: array [1..5] of integer;
b: array [1..5,1..5] of integer;
c: array [...] of integer;
i,j: integer;
Begin
Writeln('Vvedite masiv A');
For i:=1 to 5 do readln (a[i]);
For i:=1 to 5 do
For j:=1 to 5 do
If i<j then b[i,j]:= i+j
Else If j<i then b[i,j]:= (i-j)/(i+1); //тут непонятно, а что делать если i и j равны??
// Ай'м сорри не помню как умножать матрицы :(
End;
--------- Пришел, увидел, развернулся и ушел...
Ответ отправил: Сарумян (статус: 3-ий класс)
Ответ отправлен: 10.04.2007, 01:31
Отвечает: Gh0stik
Здравствуйте, Серов Алексей Евгеньевич!
const m=5;
var a,c:array [1..m] of real;
b:array [1..m,1..m] of real;
k,i,j:integer;
begin
randomize;
writeln('***A***'); {заполняем матрицу А произвольными числами из интервала [0,10)}
for i:=1 to m do
begin
a[i]:=random(10);
write(a[i]:5:2);
end;
writeln;
writeln('***B***'); {вычисление матрицы В}
for i:=1 to m do
begin
for j:=1 to m do
begin
b[i,j]:=0;
if i < j then b[i,j]:=i+j;
if i > j then b[i,j]:=(i-j)/(i+1);
write(b[i,j]:5:2);
end;
writeln;
end;
writeln('***A*B***'); {умножение матриц}
for j:=1 to m do
begin
c[j]:=0;
for k:=1 to m do c[j]:=c[j]+a[k]*b[k,j];
write(c[j]:6:2); {сразу выводим результат на экран (матрица С)}
end;
writeln;
end.
Good Luck!!!
--------- Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессионал) Украина, Славянск Организация: Славянский государственный педагогический университет (Кафедра алгебры) ICQ: 289363162 ---- Ответ отправлен: 10.04.2007, 02:01 Оценка за ответ: 5
Вопрос № 81.853
Помогите решить задачу:
В цех вторичной переработки поступают бутылки четырех видов: коричневые стеклянные, зеленые стеклянные, прозрачные стеклянные и пластиковые. Бутылки поступают на переработку партиями в контейнерах, причем в каждом контейнере могут находиться бутылки различных видов. Перед переработкой бутылок рабочие сортируют их по видам таким образом, чтобы все бутылки одного вида попали в один контейнер. В каждом из контейнеров может помещаться неограниченное число бутылок.
Требуется определить, в какие четыре из поступивших контейнеров нужно переложить бутылки так, чтобы в одном из них оказались только коричневые стеклянные бутылки, во втором — только зеленые стеклянные, в третьем — только прозрачные стеклянные, в четвертом — только пластиковые бутылки, и чтобы общее количество перемещений при сортировке было минимальным.
Если есть несколько равноценных вариантов, то выбрать любой из них.
Входные данные. В первой строке задается число контейнеров N (4≤N≤20). В следующих N строках указаны по четыре числа — количество коричневых, зелёных, прозрачных и пластиковых бутылок в соответствующем контейнере.
Выходные данные. Нужно вывести две строки. В первой строке должна быть напечатана последовательность из четырех чисел, которая определяет номера контейнеров, в которые надо поместить коричневые, зелёные, прозрачные и пластиковые бутылки соответственно. Во второй строке должно быть выведено минимальное число перемещений бутылок.
Отправлен: 10.04.2007, 07:36
Вопрос задал: DoK-Z (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Nazar__D
Здравствуйте, DoK-Z!
Мне кажется, главное - понять алгоритм. Мой вариант алгоритма:
сначала нужно определить, в каком ящике наибольше бутылок определенного типа. Например, в вашем случае, коричневых больше всего в четвертом контейнере. Туда надо сложить остальные коричневые. Аналогически с другими цветами бутылок. Так определяются контейнеры, в которых будут бутылки соответствующего типа(первая строчка ответа). Ну а что касается количества перемещений, то это надо считать в цикле.
Помог, чем мог... :)
--------- Я - українець!
Ответ отправил: Nazar__D (статус: 1-ый класс)
Ответ отправлен: 11.04.2007, 01:14