Доступ к определенным элементам кортежей - PullRequest
0 голосов
/ 07 ноября 2018

Я должен решить проблему для обучения в университете. Итак, что я хочу в основном, так это то, что я хочу получить доступ к определенным элементам двумя 2-кортежами. Я уже определил функцию:

taxiDistance :: (Integer, Integer) -> (Integer, Integer) -> Integer

Как вы можете видеть, функция берет два 2-кортежа, содержащих целые числа, и возвращает целое число. И теперь я должен добавить первые элементы обоих кортежей и второй из обоих. И я не знаю, как получить доступ к этим значениям, которые были введены пользователем ранее.

Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Вы можете использовать функции fst + snd следующим образом:

taxiDistance :: (Integer, Integer) -> (Integer, Integer) -> Integer
taxiDistance x y = fst x + fst y

или вы можете деконструировать кортежи в объявлении, например:

taxiDistance :: (Integer, Integer) -> (Integer, Integer) -> Integer
taxiDistance (a,b) (c,d) = a + b + c + d
0 голосов
/ 07 ноября 2018

Так как это университетское образование, я не буду сразу давать полный ответ, но укажу вам прочитать сопоставление с шаблоном и конструктор кортежей .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...