Basic While Loop Help?

15 ビュー (過去 30 日間)
Ajay
Ajay 2012 年 10 月 8 日
(Ajay deleted the question, so I (MF) am restoring it.)
I have to write a function that will sort a one-dimensional array using looping and conditionals without using the sort or sortrow commands. The function has to be called MySort.m, which takes as an input a 1-dimensional vector and sorts the values in a speci ed order(ascending or descending). If no order is speci ed, the default should be to sort in ascending order.
I know the function declaration is function output = MySort(input, method) but i don't really know where to go from there?
The second input to the MySort, method, should be a string 'ascending' or 'descending'. If the function is called with only one argument, i.e. output MySort(input), then the data in input should be sorted in ascending order.
Our teacher gave us the hint to use the variable nargin inside MySort and consider making use of the min and max functions and for or while when sorting....but i still need help even starting! t
  4 件のコメント
Image Analyst
Image Analyst 2012 年 10 月 8 日
編集済み: Image Analyst 2012 年 10 月 8 日
For future reference, once someone responds to your post, you can't delete it anymore because there are responses from others now in the thread that don't "belong" to you and therefore you can't delete the entire thread (conversation). So you might want to make sure you've really tried to solve it yourself and used resources like the help facility within MATLAB, and searching the MATLAB Central web site, and the Internet before posting here.
Matt Fig
Matt Fig 2012 年 10 月 9 日
Saved from the Google cache:
I have to write a function that will sort a one-dimensional array using looping and conditionals without using the sort or sortrow commands. The function has to be called MySort.m, which takes as an input a 1-dimensional vector and sorts the values in a speci ed order(ascending or descending). If no order is speci ed, the default should be to sort in ascending order.
I know the function declaration is function output = MySort(input, method) but i don't really know where to go from there?
The second input to the MySort, method, should be a string 'ascending' or 'descending'. If the function is called with only one argument, i.e. output MySort(input), then the data in input should be sorted in ascending order.
Our teacher gave us the hint to use the variable nargin inside MySort and consider making use of the min and max functions and for or while when sorting....but i still need help even starting! t

サインインしてコメントする。

回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2012 年 10 月 8 日
Please see answer by Jan Simon
  4 件のコメント
Andrei Bobrov
Andrei Bobrov 2012 年 10 月 8 日
eg
function [out,idx] = YourSort(A,s)
if nargin < 2, s = 'ascend'; end
...
Walter Roberson
Walter Roberson 2012 年 10 月 8 日
You might also want to test nargin == 0 (that is, no arguments provided)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangePlatform and License についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by