2010-11-01 4 views
0

У меня есть следующий:Как мы можем назначать буквы на номер

d = [1 2 3 4 5 6 7]

Я хочу Matlab, чтобы присвоить имя дня для каждого числа, делая петлю или

любой подходящий способ следующим образом:

1 =

вторник

2 = среда

.

.

.

7 = понедельник

результаты я стремлюсь получить после запуска программы является:

окно Matlab просит пользователя ввести число от 1 до 7

п = (» введите число от 1 до 7')

затем,

, если ввести, например, 4, это означает, что напечатанный результат: пятница

или

если мы вошли, например, 7, это означает, что напечатанный результат: понедельник

и так далее

Есть ли способ сделать это

приветов

+2

Да, есть несколько способов сделать это. Что вы пробовали и где у вас проблемы? – aschepler

+0

Вы посмотрели http://en.wikipedia.org/wiki/Computer_programming – Marm0t

ответ

1

Использование карты может быть одним из подходов:

weekDays = containers.Map({1, 2, 3, 4, 5, 6, 7} , ... 
{'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday'}); 

number = input('enter a number from 1 to 7'); 
disp(sprintf('You did choose %s\n', weekDays(number))); 


EDIT: Используя решение Билла Cheatham вы в конечном итоге с

weekdays = {'Mon', 'Tues', 'Weds', 'Thurs', 'Fri', 'Sat', 'Sun'}; 
number = input('enter a number from 1 to 7'); 
disp(sprintf('You did choose %s\n', weekdays{number})); 
+0

спасибо. но что это за функция: container.Map. Я использую MATLAB. Я думаю, что это не определено там.regards –

+0

В этом случае достаточно простого массива ... –

+0

@g_kfupm: Какую версию MATLAB вы используете. – zellus

5

Вы можете использовать cell array, который позволяет хранить массив текстовых строк. Фигурная скобка ключ:

>> weekdays = {'Mon', 'Tues', 'Weds', 'Thurs', 'Fri', 'Sat', 'Sun'}; 
>> weekdays{4} 

ans = 

Thurs 

Edit: Вы можете получить соответствующий номер от пользователя с помощью input функции MATLAB в:

n = input('Enter your number:'); 
disp(weekdays{n}) 
+1

Хороший подход, если вы не хотите изменять (добавлять, удалять) элементы. Это будет редкий случай для будних дней. – zellus

Смежные вопросы