Форум программистов, компьютерный форум, киберфорум
Наши страницы

Matlab

Войти
Регистрация
Восстановить пароль
 
tem16ch
0 / 0 / 0
Регистрация: 05.06.2013
Сообщений: 5
#1

Преобразовать массив, расположив вначале его отрицательные, а затем неотрицательные элементы... - Matlab

05.06.2013, 16:58. Просмотров 706. Ответов 4
Метки нет (Все метки)

Ребята помогите решить пожалуйста,очень нужно

Преобразовать массив X, расположив вначале его отрицательные, а затем неотрицательные элементы, сохранив при этом в группе отрицательных элементов их исходный относительный порядок, а в группе неотрицательных элементов изменив его на обратный. Определить, как при этом изменилось положение минимального по модулю элемента массива X. Буферный массив не использовать.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2013, 16:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразовать массив, расположив вначале его отрицательные, а затем неотрицательные элементы... (Matlab):

В одномерном массиве заменить нулём все отрицательные элементы, предшествующие его максимальному элементу. - Matlab
В одномерном массиве заменить нулём все отрицательные элементы, предшествующие его максимальному элементу. Задать в сценарии все...

В одномерном массиве заменить нулём все отрицательные элементы, предшествующие его максимальному элементу. (с нюансами) - Matlab
В общем указания к этой задаче: Задать в сценарии все исходные данные и вывести их в командное окно и в файл. Задачу следует разбить...

Массив: Найти сумму S положительных элементов массива, все отрицательные элементы удвоить. - Matlab
Здравствуйте, помогите пожалуйста написать программу для 13 варианта, буду очень признателен, и если можно объяснить какая строка за что...

Преобразовать массив, расположив сначала отрицательные, затем положительные, а затем нулевые элементы - Assembler
Помогите сделать программу где нужно : Преобразовать массив, расположив сначала отрицательные, затем положительные, а затем нулевые...

Список: расположить вначале неотрицательные элементы, затем отрицательные - Lisp
Преобразовать исходный список, расположив вначале неотриц. элементы, затем отрицат. Порядок неотриц. элементов изменить на обратный, а...

Дан массив. Вывести на экран сначала его неотрицательные элементы, затем отрицательные - Turbo Pascal
1)Дан массив. Вывести на экран сначала его неотрицательные элементы, затем отрицательные. Помогите плиззз

4
kav0221
96 / 96 / 24
Регистрация: 29.03.2012
Сообщений: 207
05.06.2013, 20:29 #2
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
clear all;
clc;
X=randi([-5 5],1,10)%задаем некий массив X и выводим его в командную строку
j=length(X);
k1=0;
for i=1:j
    if X(i)<0
        X=[X X(i)];
        k1=k1+1;
    end
end
k2=k1+j;
for i=1:j
    if X(i)>=0
        X=[X X(i)];
        k2=k2+1;
    end
end
X=[X(j+1:k1+j) X(k2:-1:k1+j+1)] %выводим в командную строку результат преобразования
Результат правильный, и буферный массив я не использую, но я не уверен что это решение удовлетворит вашего преподавателя.
2
tem16ch
0 / 0 / 0
Регистрация: 05.06.2013
Сообщений: 5
05.06.2013, 20:57  [ТС] #3
огромное спасибо!)))
0
Sledge5
518 / 508 / 33
Регистрация: 13.03.2011
Сообщений: 708
05.06.2013, 21:24 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
По-Матлабовски:
Matlab M
1
2
3
4
5
X=randi([-5 5],1,10)
maxValue_index_before = find(abs(X) == min(abs(X)))
indexes = X >= 0
X = [X(~indexes) fliplr(X(indexes))]
maxValue_index_after = find(abs(X) == min(abs(X)))
3
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
05.06.2013, 21:33 #5
Что есть буферный массив???Вот более матлабовский вариант без циклов:
Matlab M
1
2
3
4
5
6
7
8
9
clear all
A=randi([-5 5],[1,10]);
Minimum=find(A==min(abs(A(:))));
Negativ=A(A<0);
Positive=A(A>=0);
Positive=Positive(end:-1:1);
New_massiv=cat(2,Negativ,Positive);
Minimum_new=find(New_massiv==min(abs(New_massiv(:))));
disp(New_massiv);
Добавлено через 4 минуты

Не по теме:

ууупсс Sledge5 уже всё элегантно написал

2
05.06.2013, 21:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2013, 21:33
Привет! Вот еще темы с ответами:

Дан массив. Вывести на экран сначала его неотрицательные элементы, затем отрицательные - Turbo Pascal
Дан массив. Вывести на экран сначала его неотрицательные элементы, затем отрицательные.

Преобразовать целочисленный массив Х, расположив в начале его четные, а затем нечетные элементы - C (СИ)
Преобразовать целочисленный массив Х, расположив в начале его четные, а затем нечетные элементы, сохранив в каждой из двух групп...

Преобразовать целочисленный массив Х, расположив в начале его четные, а затем нечетные элементы - C (СИ)
Преобразовать целочисленный массив Х, расположив в начале его четные, а затем нечетные элементы, сохранив в каждой из двух групп...

Упорядочить заданный массив, расположив в его начале все положительные элементы, затем все отрицательные - C++
22. В одномерном массиве А(10) выполнить преобразования таким образом, чтобы в начале располагались все положительные элементы, затем все...


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

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

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