0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 10
1

Найти максимальный и минимальный элементы среди неповторяющихся чисел

28.10.2014, 13:08. Показов 6980. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
дан целочисленный массив X=(x1,x2,...xn), в котором могут быть
одинаковые числа. Найти максимальный и минимальный элементы среди
неповторяющихся чисел и обменять их местами. Учесть частный случай, когда в массиве нет неповторяющихся чисел.
Вод код, но матлаб ругается, что не так? поправте пожалуйста, а то я не шарящий! ! !И опишите пожалуйста

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function f=part2(x,m,n)
format short
x[1][1]=min;
x[1][1]=max;
for i=1:m
for j=1:n
if (x[i][j]<min)
x[i][j]=mn;
mini=1;
minj=j;
end;
end;
end;
for i=1:m
for j=1:n
if (x[i][j]>max)
x[i][j]=max;
maxi=i;
maxj=1;
end;
end;
end;
k=max;
x[mimi][minj]:=x[maxi][maxj]
x[mini][minj]:k;
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.10.2014, 13:08
Ответы с готовыми решениями:

В последовательности С среди неповторяющихся элементов найти минимальный и максимальный
Дана матрица. Сформировать из элементов главной диагонали линейный массив В, а из элементов...

Процедура. Найти максимальный и минимальный элементы среди всех массивов
Даны три одномерных массива x,y,z. Найти максимальный и минимальный элементы среди всех массивов, а...

Циклы. Найти минимальный (максимальный) элемент среди положительных (отрицательных) чисел
Хеллп,ребята. Дана последовательность целых чисел, за которой следует 0. Определить минимальный...

В матрице найти минимальный и максимальный элементы и их координаты, поменять местами минимальный и максимальный элементы
В матрице размером n на m (1&lt;n, m&lt;10) (ввод n, m и матрицы с клавиатуры) найти минимальный и...

6
5217 / 3548 / 372
Регистрация: 02.04.2012
Сообщений: 6,457
Записей в блоге: 17
28.10.2014, 14:25 2
Синтакисис на С похож вот матлаб и не понимает
чуток причесал:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function x=part2(x)
[m n] = size(x);
 
x(1,1) = xmin;
x(1,1) = xmax;
for i=1:m
    for j=1:n
        if x(i,j)< xmin
            x(i,j) = xmin;
            mini=i;
            minj=j;
        end
    end
end
for i=1:m
    for j=1:n
        if x(i,j)>xmax
            x(i,j) = xmax;
            maxi=i;
            maxj=j;
        end
    end
end
k = xmax;
x(mimi,minj) = x(maxi,maxj);
x(mini,minj) = k;
1
0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 10
28.10.2014, 14:45  [ТС] 3
извини я вообще его не знаю, но он ругается
function x:=part2(x);
|
Error: Function definitions are not permitted in this context.
0
5217 / 3548 / 372
Регистрация: 02.04.2012
Сообщений: 6,457
Записей в блоге: 17
28.10.2014, 14:54 4
tikitaki, а куда ты пытаешься это впихнуть?
*в матлабе присваивание без двоеточия: function x=part2(x);
Цитата Сообщение от tikitaki Посмотреть сообщение
извини я вообще его не знаю
значит изучай
Начало работы в MATLAB


Как создать функцию
0
0 / 0 / 0
Регистрация: 20.06.2014
Сообщений: 10
28.10.2014, 15:00  [ТС] 5
проблема не в двоеточие
0
5217 / 3548 / 372
Регистрация: 02.04.2012
Сообщений: 6,457
Записей в блоге: 17
28.10.2014, 17:50 6
Лучший ответ Сообщение было отмечено tikitaki как решение

Решение

tikitaki, ответ на твою проблему во втором видео ты пытаешься воткнуть тело функции в скрипт или даже командную строку, где ей совсем не место.

Добавлено через 2 часа 48 минут
еще по исправлял ошибки теперь работает:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
clear, clc % очищаем память и экран
 
x = randint(5,4,[1 99]) % матрица случайных чисел
[m n] = size(x); % размеры матрицы
 
% начальные значения максимума и минимума
xmin = x(1,1); 
xmax = x(1,1);
% ищем минимум и его индексы
for i=1:m
    for j=1:n
        if x(i,j)< xmin
            xmin = x(i,j);
            mini=i;
            minj=j;
        end
    end
end
% ищем максимум и его индексы
for i=1:m
    for j=1:n
        if x(i,j)>xmax
            xmax = x(i,j);
            maxi=i;
            maxj=j;
        end
    end
end
% меняем местами:
k = xmin;
x(mini,minj) = x(maxi,maxj);
x(maxi,maxj) = k;
x
и можно оформить в виде функции (поиски можно объединить в один цикл):
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function x = part2(x)
[m n] = size(x); % размеры матрицы
 
% начальные значения максимума и минимума
xmin = x(1,1); 
xmax = x(1,1);
 
for i=1:m
    for j=1:n
     % ищем минимум и его индексы:
        if x(i,j)< xmin
            xmin = x(i,j);
            mini=i;
            minj=j;
        end
        % ищем максимум и его индексы:
        if x(i,j)>xmax
            xmax = x(i,j);
            maxi=i;
            maxj=j;
        end
    end
end
 
% меняем местами:
k = xmin;
x(mini,minj) = x(maxi,maxj);
x(maxi,maxj) = k;
1
0 / 0 / 0
Регистрация: 03.01.2015
Сообщений: 62
17.12.2017, 21:44 7
Зосима, А можете этот код перевести в С++?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.12.2017, 21:44
Помогаю со студенческими работами здесь

В двумерном массиве найти в каждой строке максимальный элемент, затем среди этих чисел выбрать минимальный
Напечатать те слова, которые встречаются в каждом из двух заданных предложений. Задачу выполнить...

В двумерном массиве найти в каждой строке максимальный элемент, затем среди этих чисел выбрать минимальный
1.в двумерном массиве найти в каждой строке максимальный элемент, затем среди этих чисел выбрать...

В матрице вещественных чисел X(n*n) найти максимальный и минимальный элементы
В матрице вещественных чисел X(n*n) найти максимальный и минимальный элементы. Поменять ...

В матрице вещественных чисел X(n*n) найти максимальный и минимальный элементы
Помогите нужно написать программу, сам не успеваю помогите кто может. В матрице вещественных ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru