プログラミング学習用お題サンプル

2020年5月17日

テクノロジー プログラミング

Podcastラジオ収録がだいぶ定着化してきた、ナンチャッテ・ポッドキャスターの、ユゲタです。 http://9-chat.mynt.work/ ラジオのコーナーので、最近ではjavascript言語を少しずつ、解説しているんですが、プログラミングを自分でも書いてもらうことを目的にして、「お題」を出すように企画しています。 そのコーナーと連動できるように、このブログで、プログラミングお題サンプルをためていきたいと思います。 ちなみに、お題のレベルは、「初心者」が対象になります。・・・しばらくは・・・ レベルの高いお題は、別の回で出題したいと思います。

本日のIT謎掛け

「ポッドキャスト」と、かけまして・・・ 「食中毒の元になる細菌」と、ときます。 そのココロは・・・ 伝播(電波)を止めて、熱湯(NET)で効き(聞き)ます

お題 #1

1~100までの数字で、3の倍数と3がつく数字でアホになるプログラム
好きな言語でプログラミングしてもらってかまいませんが、答えはjavascriptで書いています。 ブラウザのコンソール画面を使ってやると手軽で便利に実行できますよ。 ヒント ・for文とif文だけでできる。 ・1~100までのループを行う ・今回は、3の倍数と、3がつく数字という条件なので、if文が2つ必要になります。(else ifを使ってください) ・3の倍数は、数字を3で割った余剰が"0"になるものです。 ・3のつく数字は、数字を文字列で見た時に、3という文字列が含まれているかどうかで判定します。 - 数字をString(i)とすると、文字列にしてくれるので、それに加えて、文字列内の文字検索は"indexOf()"という命令を使います。 - indexOf()は、返り値に、その文字列内の何番目にヒットするかが返るのですが(先頭文字は0番目)、文字列がヒットしない場合は、-1が返ります。 なので、3という文字を検索して、"-1"ではない数字が3がつく値になるという判定です。

お題 #2

ポータルサイトで、外部リンクのドメインとそのリンク数を抜き出すプログラム。
ポータルサイトのサンプルURL https://matome.naver.jp/odai/2158863315033116401 スクレイピングシステムを作るときなどに役立つはずのプログラムです。 ヒント ・リンクを抽出して、それぞれドメインを抜き出して、一覧を作る。 ・一覧作成の時に、すでに登録済みのドメインは新たに加えないようにする。 ・ドメインの出現回数をカウントアップする。 ・今開いているページのドメインは一覧から除外する。(外部リンクのみにするため)

答え #1

答え for(var i=1; i<=100; i++){ if(i % 3 == 0){ console.log("アホ("+ i +")は、3の倍数"); } else if(String(i).indexOf("3") != -1){ console.log("アホ("+ i +")は、3の付く数字"); } else{ console.log(i); } } 1 2 アホ(3)は、3の倍数 4 5 アホ(6)は、3の倍数 7 8 アホ(9)は、3の倍数 10 11 アホ(12)は、3の倍数 アホ(13)は、3の付く数字 14 アホ(15)は、3の倍数 16 17 アホ(18)は、3の倍数 19 20 アホ(21)は、3の倍数 22 アホ(23)は、3の付く数字 アホ(24)は、3の倍数 25 26 アホ(27)は、3の倍数 28 29 アホ(30)は、3の倍数 アホ(31)は、3の付く数字 アホ(32)は、3の付く数字 アホ(33)は、3の倍数 アホ(34)は、3の付く数字 アホ(35)は、3の付く数字 アホ(36)は、3の倍数 アホ(37)は、3の付く数字 アホ(38)は、3の付く数字 アホ(39)は、3の倍数 40 41 アホ(42)は、3の倍数 アホ(43)は、3の付く数字 44 アホ(45)は、3の倍数 46 47 アホ(48)は、3の倍数 49 50 アホ(51)は、3の倍数 52 アホ(53)は、3の付く数字 アホ(54)は、3の倍数 55 56 アホ(57)は、3の倍数 58 59 アホ(60)は、3の倍数 61 62 アホ(63)は、3の倍数 64 65 アホ(66)は、3の倍数 67 68 アホ(69)は、3の倍数 70 71 アホ(72)は、3の倍数 アホ(73)は、3の付く数字 74 アホ(75)は、3の倍数 76 77 アホ(78)は、3の倍数 79 80 アホ(81)は、3の倍数 82 アホ(83)は、3の付く数字 アホ(84)は、3の倍数 85 86 アホ(87)は、3の倍数 88 89 アホ(90)は、3の倍数 91 92 アホ(93)は、3の倍数 94 95 アホ(96)は、3の倍数 97 98 アホ(99)は、3の倍数 100

答え #2

var myHrefDatas = location.href.split("/"); var myDomain = myHrefDatas[2]; var datas = {}; for(var i=0; i<document.links.length; i++){ var href = document.links[i].href; if(!href){continue;} var splits = href.split("/"); if(myHrefDatas[2] === splits[2]){continue;} if(typeof datas[splits[2]] === "undefined"){ datas[splits[2]] = 1; } else{ datas[splits[2]]++; } } console.log(datas); account.matome.naver.jp: 1 amanaimages.com: 5 direct.sanwa.co.jp: 1 feedback.promotionalads.yahoo.co.jp: 2 fumablog.com: 2 hatarakupuro.com: 4 help.naver.jp: 3 mono-reco.jp: 2 navermatome-official.blog.jp: 2 rd.ane.yahoo.co.jp: 5 t.co: 17 twitter.com: 58 undefined: 1 www.amazon.co.jp: 20 www.servcorp.co.jp: 1

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。