Haskellでデータ型を使用するのは初めてのことです。 問題が発生し、コードを改善する方法がわかりません。ここでHaskell - データの宣言/使用
は問題です:
Declear一部の文字(文字列)を含め、「子音」と呼ばれるデータ型、およびその単語のすべての文字が子音であるか、ない場合についての情報を得ましたtextstring(文字列)、その後、「チーク」(チアークにいくつかの文字)と「アウトデータ」(データタイプ「子音」)を持つ関数「チーク」を書いてください。ここで
が私のコードです:
module Consonant where
import Char
type Name = String
type ConOrNot = String
data Consonant = Cons Name ConOrNot
deriving (Show,Eq)
isVowel = "AEIOU"
cheak :: String -> Consonant
cheak [] = ""
cheak (char:chars) =
if elem (toUpper char) isVowel == false
then cheak chars
else cheak = Cons (char:chars) "Not Consonant"
-- here I want to use "break", but I don't know how to use it in Haskell...
cheak = Cons (char:chars) "Is Consonant"
これは、コードを変更する方法...動作しませんか? Plsヘルプ!ありがとうございました!
更新:
module Consonant where
import Char
type Word = String
type ConOrNot = String
data Consonant = Cons Word ConOrNot
deriving (Show,Eq)
isConsonant = "BCDFGHJKLMNPQRSTVWXYZ"
cheak :: String -> Consonant
cheak [] = Cons "" ""
cheak (char:chars)
|elem (toUpper char) isCosonant = cheak chars --if all the letters are cosonant, I want it return (Cons (char:chars) "is Consonant").. still working on it
|otherwise = Cons (char:chars) "Not Consonant"
文字列は母音と子音や母音のみの両方を得た場合には、それはまた、子音だけで動作するように、コードを改善する方法を、動作するようになりましたか?
これはまさに私が欲しいものです。ご協力ありがとうございました。 – Ferry