• ベストアンサー

各言語の音の数

日本語の音の数は a,i,u,e,o ka,ki,ku,ke,ko sa,shi,su,se,so ta,ti,tu,te,to na,ni,nu,ne,no ha,hi,hu,he,ho ya,yu,yo ra,ri,ru,re,ro wa,n ga,gi,gu,ge,go za,zi,zu,ze,zo da,di,de,do pa,pi,pu,pe,po (これは入るのかな?) va,vi,vu,ve,vo qa,qi,qe,qo くらいですが、英語の音の数は1050個あると聞きました。 世界の言語の音の数みたいのが載っているサイトとかありませんか? また、こういうことについて詳しい方。 色々な言語の音の数について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • shangyan
  • ベストアンサー率41% (117/284)
回答No.2

音節数で言えば、日本語は110くらいです。 (学者によって数え方が違いますがhttp://www.asahi-net.or.jp/~va4h-nsn/on50.htm) 実際の「音声」となると、個人差もあるから複雑です。「ざ、じ(ぢ)、ず(づ)、ぜ、ぞ」は実際には語頭と語中で音声が違いますし、「ん」に至っては7つくらい異音がありますが、日本人の意識では一つの音と認識されています。 日本語は音節構造が、「母音」か「子音+母音」しかなく、しかも組み合わせをすべて使いますので、数えるのが簡単ですが、他の言語ではそうはいきません。 比較的簡単なのは、中国語(普通話)です。「母音」「子音+母音」「母音+子音」「子音+母音+子音」の組み合わせで音節数は400くらいです。ですが、中国人はこの一音節内に音の高低をつけて、音の違いと見なします。これを声調またはトーンといい、中国語では4つの声調がありますので、理論上、400×4=1600通りの音を作り出せますが、実際には使われない音がたくさんあるので、正確に数えることはできません。 複雑なのは英語です。springは「子音+子音+子音+母音+子音」で、これで一音節です。「子音+子音+...+母音+子音+子音+...」と子音が一つだけでなくいくつも重ねられるので、無限の組み合わせができます。しかも母音も23個もあります。誰も数えた人はいないという話です。1050ではないはずです。

その他の回答 (1)

  • SortaNerd
  • ベストアンサー率43% (1185/2748)
回答No.1

日本語はもうちょっと多いと思いますが。 kya、fa、wiなどありますし、タ行は ta chi tsu te toです。 あとザ行は dza ji dzu dze dzo ですね。zの発音は日本語にありません。 多いのは自信がないですが多分英語だと思います。音節末の子音が種類豊富なので。 b d f g k l m n p s t v z ng ch th dh shと、それの組み合わさったものも結構な数が。 逆に少ないのはハワイ辺りの言葉が少ないらしいですね。 基本的に母音が5つ、子音6つだけで、全ての音節は母音止め。 次に少ないのが日本語。

関連するQ&A

  • ta su ke te ku da sa i he n ka n de ki na i

    ke si te hu za ke te ru wa ke de ha a ri ma se n hi ra ga na ha nyu u ryo ku de ki ru n de su ga Enter wo o su to nyu u ryo ku de ki na ku na ru n de su ho n da i ha ko ko ka ra su pe - su wo o si ta ra hu ri - zu? su ru n de su ke n sa ku no to ki ya ge - mu no tya tto no to ki to ka de su ge - mu no do u sa no to ki ha da i zyo u bu de su ho n to u ni ko ma tte i ma su ta su ke te ku da sa i

  • 規則性がある配列を、格好良く作成したいのですが……

    こういう配列なのですが、何か良い案はあるでしょうか? foreachとか、forなどを使って、スマートに配列を作成したいです $hoge = array(  "あ" => "aa",  "い" => "ii",  "う" => "uu",  "え" => "ee",  "お" => "oo",  "か" => "ka",  "き" => "ki",  "く" => "ku",  "け" => "ke",  "こ" => "ko",  "さ" => "sa",  "し" => "si",  "す" => "su",  "せ" => "se",  "そ" => "so",  "た" => "ta",  "ち" => "ti",  "つ" => "tu",  "て" => "te",  "と" => "to",  "な" => "na",  "に" => "ni",  "ぬ" => "nu",  "ね" => "ne",  "の" => "no",  "は" => "ha",  "ひ" => "hi",  "ふ" => "hu",  "へ" => "he",  "ほ" => "ho",  "ま" => "ma",  "み" => "mi",  "む" => "mu",  "め" => "me",  "も" => "mo",  "や" => "ya",  "ゆ" => "yi",  "よ" => "yu",  "ら" => "ra",  "り" => "ri",  "る" => "ru",  "れ" => "re",  "ろ" => "ro",  "わ" => "wa",  "を" => "wo", );

    • ベストアンサー
    • PHP
  • エクセルにかなとローマ字のテーブルを作りましたが、

    エクセルにかなとローマ字のテーブルを作りましたが、「ミュ 」に該当する「myu」をセルに打ち込むと、「my」としか表示されません。これは、表示されないことが正しいのでしょうか。 VBAのプログラミングでかな・ローマ字の変換のためのテーブルを作っています。何とかなりませんか。 (テーブル・途中まで) ア あ a イ い i ウ う u エ え e オ お o カ か ka キ き ki ク く ku ケ け ke コ こ ko サ さ sa シ し shi ス す su セ せ se ソ そ so タ た ta チ ち chi ツ つ tsu テ て te ト と to ナ な na ニ に ni ヌ ぬ nu ネ ね ne ノ の no ハ は ha ヒ ひ hi フ ふ fu ヘ へ he ホ ほ ho マ ま ma ミ み mi ム む mu メ め me モ も mo ヤ や ya ユ ゆ yu ヨ よ yo ラ ら ra リ り ri ル る ru レ れ re ロ ろ ro ワ わ wa ン ん n ガ が ga ギ ぎ gi グ ぐ gu ゲ げ ge ゴ ご go ザ ざ za ジ じ ji ズ ず zu ゼ ぜ ze ゾ ぞ zo ダ だ da ヂ ぢ ji ヅ づ zu デ で de ド ど do バ ば ba ビ び bi ブ ぶ bu ベ べ be ボ ぼ bo パ ぱ pa ピ ぴ pi プ ぷ pu ペ ぺ pe ポ ぽ po キャ きゃ kya キュ きゅ kyu キョ きょ kyo シャ しゃ sha シュ しゅ shu ショ しょ sho チャ ちゃ cha チュ ちゅ chu チョ ちょ cho ニャ にゃ nya ニュ にゅ nyu ニョ にょ nyo ヒャ ひゃ hya ヒュ ひゅ hyu ヒョ ひょ hyo ミャ みゃ mya ミュ みゅ my ミョ みょ myo よろしくお願いします。

  • javascriptで例外処理を実行したいです。

    function ToHebon(){var map={"あ":"a","い":"i","う":"u","え":"e","お":"o", "か":"ka","き":"ki","く":"ku","け":"ke","こ":"ko", "さ":"sa","し":"shi","す":"su","せ":"se","そ":"so", "た":"ta","ち":"chi","つ":"tsu","て":"te","と":"to", "な":"na","に":"ni","ぬ":"nu","ね":"ne","の":"no", "は":"ha","ひ":"hi","ふ":"fu","へ":"he","ほ":"ho", "ま":"ma","み":"mi","む":"mu","め":"me","も":"mo", "や":"ya","ゆ":"yu","よ":"yo", "ら":"ra","り":"ri","る":"ru","れ":"re","ろ":"ro", "わ":"wa","ゐ":"i","ゑ":"e","を":"o","ん":"n", "ぁ":"a","ぃ":"i","ぅ":"u","ぇ":"e","ぉ":"o", "が":"ga","ぎ":"gi","ぐ":"gu","げ":"ge","ご":"go", "ざ":"za","じ":"ji","ず":"zu","ぜ":"ze","ぞ":"zo", "だ":"da","ぢ":"ji","づ":"zu","で":"de","ど":"do", "ば":"ba","び":"bi","ぶ":"bu","べ":"be","ぼ":"bo", "ぱ":"pa","ぴ":"pi","ぷ":"pu","ぺ":"pe","ぽ":"po", "きゃ":"kya","きゅ":"kyu","きょ":"kyo", "しゃ":"sha","しゅ":"shu","しょ":"sho", "ちゃ":"cha","ちゅ":"chu","ちょ":"cho","ちぇ":"che", "にゃ":"nya","にゅ":"nyu","にょ":"nyo", "ひゃ":"hya","ひゅ":"hyu","ひょ":"hyo", "みゃ":"mya","みゅ":"myu","みょ":"myo", "りゃ":"rya","りゅ":"ryu","りょ":"ryo", "ぎゃ":"gya","ぎゅ":"gyu","ぎょ":"gyo", "じゃ":"ja","じゅ":"ju","じょ":"jo", "びゃ":"bya","びゅ":"byu","びょ":"byo", "ぴゃ":"pya","ぴゅ":"pyu","ぴょ":"pyo", "ア":"a","イ":"i","ウ":"u","エ":"e","オ":"o", "カ":"ka","キ":"ki","ク":"ku","ケ":"ke","コ":"ko", "サ":"sa","シ":"shi","ス":"su","セ":"se","ソ":"so", "タ":"ta","チ":"chi","ツ":"tsu","テ":"te","ト":"to", "ナ":"na","ニ":"ni","ヌ":"nu","ネ":"ne","ノ":"no", "ハ":"ha","ヒ":"hi","フ":"fu","ヘ":"he","ホ":"ho", "マ":"ma","ミ":"mi","ム":"mu","メ":"me","モ":"mo", "ヤ":"ya","ユ":"yu","ヨ":"yo", "ラ":"ra","リ":"ri","ル":"ru","レ":"re","ロ":"ro", "ワ":"wa","ヰ":"i","ヱ":"e","ヲ":"o","ン":"n", "ァ":"a","ィ":"i","ゥ":"u","ェ":"e","ォ":"o", "ガ":"ga","ギ":"gi","グ":"gu","ゲ":"ge","ゴ":"go", "ザ":"za","ジ":"ji","ズ":"zu","ゼ":"ze","ゾ":"zo", "ダ":"da","ヂ":"ji","ヅ":"zu","デ":"de","ド":"do", "バ":"ba","ビ":"bi","ブ":"bu","ベ":"be","ボ":"bo", "パ":"pa","ピ":"pi","プ":"pu","ペ":"pe","ポ":"po", "キャ":"kya","キュ":"kyu","キョ":"kyo", "シャ":"sha","シュ":"shu","ショ":"sho", "チャ":"cha","チュ":"chu","チョ":"cho", "ニャ":"nya","ニュ":"nyu","ニョ":"nyo", "ヒャ":"hya","ヒュ":"hyu","ヒョ":"hyo", "ミャ":"mya","ミュ":"myu","ミョ":"myo", "リャ":"rya","リュ":"ryu","リョ":"ryo", "ギャ":"gya","ギュ":"gyu","ギョ":"gyo", "ジャ":"ja","ジュ":"ju","ジョ":"jo", "ビャ":"bya","ビュ":"byu","ビョ":"byo", "ピャ":"pya","ピュ":"pyu","ピョ":"pyo", "ジェ":"jie", "チェ":"chie", "ティ":"tei","ディ":"dei","デュ":"deyu", "ファ":"fua","フィ":"fui","フェ":"fue","フォ":"fuo", "ヴァ":"bua","ヴィ":"bui","ヴ":"bu","ヴェ":"bue","ヴォ":"buo","ー":""}; var temp_data="";var temp_data2="";var temp_data3="";var temp_data4="";var temp_data5="";var temp_data6="";var roma_data="";var result_data="";source_data=document.form1.input_text.value;for(i=0;i<source_data.length;i=i+1){temp_data=source_data.substring(i,i+1);temp_data2=source_data.substring(i,i+2);if(map[temp_data2]===undefined){if(map[temp_data]===undefined){roma_data=roma_data+temp_data}else{roma_data=roma_data+map[temp_data]}}else{i=i+1;roma_data=roma_data+map[temp_data2]}} for(i=0;i<roma_data.length;i=i+1){ temp_data=roma_data.substring(i,i+1); temp_data2=roma_data.substring(i,i+2); temp_data3=roma_data.substring(i,i+3); temp_data4=roma_data.substring(i,i+4); temp_data5=roma_data.substring(i,i+5); temp_data6=roma_data.substring(i,i+6); sub_str2=temp_data2.substring(1,2); if(temp_data4=="noue"){i=i+3;temp_data="noue"} else if(temp_data6=="touchi"){i=i+5;temp_data="touchi"} else{if(temp_data2=="uu"||temp_data2=="ee"||temp_data2=="ou"||temp_data2=="oo"){i=i+1} else if(temp_data2=="nb"||temp_data2=="nm"||temp_data2=="np"){temp_data="m"} else if(temp_data=="っ"||temp_data=="ッ"){if(temp_data3=="っch"||temp_data3=="ッch"){temp_data="t"} else if(sub_str2.match(/[a-z]/gi)){temp_data=sub_str2}else{temp_data="tsu"}}}result_data=result_data+temp_data} if(document.form1.uplow[0].checked){result_data=result_data.toUpperCase()}document.form1.result_text.value=result_data} 現在の状況は、既にカタカナで設定してある文字、例えば、ポケモンはすでにポがpo、ケがkeと、サトシであれば、サがsa、トがtoと指定されているため、 新たにこの場合、例えば、ポケモンの時だけ、pkmnだとか、 サトシをstsという風にすることができません。 このような例外処置をする場合、どのようにすればよろしいでしょうか。 尚、else ifからかっことじの部分までは書いていただきたいです。

  • 喋り方や音などが奇麗だと感じる言語は?

    こんばんは。 喋り方やその言葉の音などが奇麗だと感じる言語は何がありますか?? 当然、人に依って好き嫌いがありますから、 質問者さんご自身がそう感じるものでかまいません。 因みに私は、日本以外だとドイツ語、ロシア語、オランダ語、イタリア語が好きです。 ……喋れる訳でも意味が解っている訳でもないのですが;;

  • C言語 10進数→2進数

    キーボードで入力された1以上の正の整数n(1~15)を2進数(4bit)で出力するプログラムを作りたいんですが、 出力例に書かれている内容、 -出力例- 正の整数:12 整数 12 を2進数表記すると下位bitより 0011 となります。 ---- 上記の下位bit、というのはどういう意味でしょうか? また、この下位bitというものをどうやってプログラム上で 表記すればいいのでしょうか? 教えてください。

  • 一プログラマーが使える言語の数が知りたいです。

    プログラマーさんやSEさんに聞きたいのですが、だいたい一人でいくつの言語を使いこなせるのでしょうか?3個も4個も覚えなくてはいけないのですか? それとも一つだけなのでしょうか。 素人なもんで、教えてください。

    • ベストアンサー
    • Java
  • C言語 最も小さい数

    #include <stdio.h> #define NUMBER 5 int min_of(const int vc[ ], int no){ int i; int min=vc[0]; for(i=1;i<no;i++) if(vc[i]<min){ min=vc[i]; return(min); } } int main(void) {int a[NUMBER],i=0; for(;i<NUMBER;i++){ scanf("%d",&a[i]); } printf("%d",min_of(a,NUMBER)); return(0); } 最も小さい数を出すようにしたいのですがうまくいきません。 どこがおかしいのでしょうか? 教えてくださいm(_ _ )m

  • 使われている言語と文字の数

    現在世界で使われている言語と文字はどれくらいあって、地球上のどこでその言語と文字が使われてるのか教えてください。

  • C言語で、2進数を扱うには。

    C言語で、2進数を扱いたいのですが、 よく分かりません。 ためしに、 int a=2,int b=1 で、 int c=a | b printf("answer=%d"),c) とすると、3となります。 a & bだと、0です。 この場合、a,bは2進数変換されて、 計算され、表示は、10進数に 直されて、表示されているようです。 一方、 a=10,b=2とすると、 a | b=10 a & b=2です。 この場合、10は2進数に直されず (そのまま2進数扱い)、 2は2進数に直され、 表示は、a | bはそのまま2進数扱い、 a & bは、10進数に直されています。 (1、0だけだと、勝手に2進数扱い されてしまうのか、とも思うけれど)。 10進数と、2進数の使い分けかたなど、 何か分かりましたら、お願いします。