Вопрос № 159307: Дана действительная матрица, сформировать одномерный массив, умножить элементы на максимальный, сортировать по возрастанию. ...
Вопрос № 159309: Дан массив из n элементов, сортировать массив обменом четных элементов стоящих на четных позициях, вывести на экран количество перестановок....Вопрос № 159325: Госопда эксперты <img src="http://rusfaq.ru/images/Forum/10.gif" border="0">
!! Очень нужна ваша помощь <img src="http://rusfaq.ru/images/Forum/10.gif" border="0"> <img src="http://rusfaq.ru/images/Forum/10.gif" border="0"> <img src="http://rusf...
Вопрос № 159.307
Дана действительная матрица, сформировать одномерный массив, умножить элементы на максимальный, сортировать по возрастанию.
Отвечает: Micren
Здравствуйте, Иванов Виктор Олегович! Программа с комментариями. Поскольку в условии не сказано направление сортировки, сортировал по возрастанию.
Программа:
Код:
program Pascal_159309; { Размер массива } const N=16; var Arr:array[1..N]of integer; i,j,j1,j2,tmp,cnt:integer; begin Randomize; {
Создаем массив и выводим его на зкран } WriteLn('Array:'); for i := 1 to N do begin Arr[i]:=Random(51)-25; Write(Arr[i]:4,' '); end; WriteLn; { Сортируем } cnt:=0; { Счетчик перестановок } { Идем только по четным индексам } i:=0; while i<N do begin i:=i+2; j:=i; while j<N do begin j:=j+2; { Если оба элемента четные и неупоряд
оченные } if (not Odd(Arr[i])) and (not Odd(Arr[j])) and (Arr[i]>Arr[j]) then begin tmp:=Arr[i]; Arr[i]:=Arr[j]; Arr[j]:=tmp; Inc(cnt); { Увеличим счетчик } end; end; end; { Выводим результат } WriteLn('Result Array:'); for i := 1 to N do Write(Arr[i]:4,' '); WriteLn; { Выводим количество перестановок } WriteLn('Rearrangements=',cnt); ReadLn; end.
Ответ отправил: Micren (статус: Студент)
Ответ отправлен: 01.02.2009, 13:02
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 242670 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценка за ответ: 5 Комментарий оценки: Огромное спасибо!!! Все работает!!! Вы очень меня выручили =)
Вопрос № 159.325
Госопда эксперты !! Очень нужна ваша помощь Дан двухмерный массив. Составить программу, которая меняет местами ∙ две любые строки; ∙ два любых столбца. Дан двухмерный массив размерностью n*n. Составить программу, которая меняет местами все элементы, ∙ симметричные
относительно главной диагонали ∙ симметричные относительно побочной диагонали. Дан двумерный массив. Удалить из него строку с номером к. Дан двумерный массив. Удалить из него столбец с номером s. Удалить все строки, содержащие максимальный элемент массива Вставить строку из единиц после строки с указанным номером. Дан двумерный массив из четного числа строк и столбцов а) строки верхней половины поменять местами со строками нижней пол
овины б) столбцы левой половины поменять местами со столбцами правой. Дан двумерный массив из четного числа строк. Поменять местами его строки следующим образом: первую строку с последней, вторую – с предпоследней и так далее. В двумерном массиве хранятся результаты (время в минутах), показанные каждым из 12 автогонщиков на каждом из 10 этапов соревнований «Формула-1». После 10 этапа участник с порядковым номером 4 выбыл из соревнований. Изменить массив так, чтобы в нем не было результатов бывшего
гонщика. Дан двумерный массив. Удалить из него все строки с n по m.
Отправлен: 01.02.2009, 13:41
Вопрос задал: Oblige (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Тепляков Константин Владимирович
Здравствуйте, Oblige! Большое, конечно, задание, но вот что я напрограммировал. По логике работать программа должна, но я не проверял (не на чем).
И еще ... Я построил свою программу моследовательно, т.е. массив заполняется программой произвольно и все последующие действия производятся над уже измененном массивом. Изначально созданный массив не сохраняется.
второе дополнение: При вводе значений с клавиатуры предполагается, что вы правильно вводите числа.
Закончить не успел,
но все решаемо и достаточно не сложно.
Приложение:
--------- Человек - это существо, которое постоянно придумывает себе трудности [переработка доклада Ортега-и-Гассет "О технике"]
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.