神戸プログラミングアカデミーのブログ

「未経験から」「スキルアップ」「起業を目指す」無料で学べる神戸のプログラミング学校&学習コミュニティ

2020-01-01から1年間の記事一覧

入力された文字列をチェーンケース・スネークケース・アッパーキャメルケース・ローワーキャメルケースに変換する関数を作成せよ

入力された文字列を文字列をチェーンケース・スネークケース・アッパーキャメルケース・ローワーキャメルケースに変換する関数を作成せよ ただし、チェーンケース・スネークケースに関しては、大文字は小文字に変換されるものとする。(Aaa_Bbbとはしない) qi…

小数を切り捨て、切り上げ、四捨五入する関数を作成せよ

コマンドライン引き数で渡された、2つの整数 x , y の x / y の計算結果を小数点以下で①切り捨て②切り上げ③四捨五入するプログラムを作成せよ。 ただしMath.floor等の関数の使用を禁止する。 function floor(num) { } function round(num) { } function cei…

与えられた数値を2進数に変換するメソッドを作成せよ

与えられた数値(Number型)を2進数(String型)に変換する関数 numToBin() を作成せよ ただし、JavaScriptの標準関数(toString()等)の使用を禁止する。Math.floor()はOK function numToBin(num) { return "文字列" } console.log(numToBin(Number(process.argv[…

文字列を比較する関数strcmp()を作成せよ

文字列を比較する関数strcmp(str1,str2)を作成せよ。 str1とstr2が等しいならば0、 str1>str2ならば1、 str1

文字列の長さを返す関数strlen()を作成せよ

文字列の長さを返す関数strlen(str)を作成せよ ただし、文字列のプロパティlengthの使用を禁止し、ループはwhile(true)のみを使用するとする function strlen(str) { } console.log(strlen(process.argv[2])) node main.js aaa 3 node main.js a,b,c 5 解答…

プログラミングを始める前に

プログラミングとは? そもそもプログラミングってなんなのか?今後、ずーっと大事になる概念です。忘れてしまったらもう一度、ここに立ち返り見直してください。 まず、結論から。 プログラミングとは「コンピュータを働かせる命令を作ること」です。 なぜ…

与えられた2次元配列の縦・横・斜めが与えられた値で揃っているかを返す関数を作成せよ

prog-ac.hatenablog.com 上記isFilledArray()を使い、与えられた2次元配列の縦・横・斜めが与えられた値で揃っているかを返す関数isBingo(arr, val)を作成せよ const arr0 = [ [0,0,0], [0,0,0], [0,0,0], ] const arr1 = [ [0,0,0], [1,1,1], [0,0,0], ] co…

与えられた配列の中身が全てその値かどうかを判定する関数を作成せよ

与えられた配列の中身が全てその値かどうかを判定する関数 isFilledArray(arr, val)を作成せよ // この関数を実装 function isFilledArray(arr, val){ } console.log(isFilledArray([1,1,1], 1)) console.log(isFilledArray([1,1,1], 0)) console.log(isFill…

デイリー問題集

Array.filter()関数を自作してみよう 値が指定された範囲内にあるかどうかを判定する関数を作成せよ Array.find()を自作せよ 重複した値を省いて返すメソッド unique(array)を作成せよ 除算演算子/を使わずに整数を返す割り算関数を作成し、またその関数を使…

Excelの列キーを生成する関数を作る

Excelの列はA, B, C...と続き、Z, AA, AB, AC..., AZ, BA, BB, BC..., ZZ, AAA, AABと表現されます。 この文字列を返す以下の仕様の関数 indexToExcelColumnKey() を生成せよ。 const ALPHABET_NUM = 26 // この関数を実装する function indexToExcelColumnK…

Vue.jsの練習

この記事がよくまとまっている qiita.com Vuetifyでやりましょう vuetifyjs.com .vueの基本 <template> <div></div> </template> <script> export default { data: function() { return {}; }, methods: {}, computed: {} }; </script> dataの練習 script 内の dataで宣言した変数をtemplateで表示せよ <template> <div></div> </template> <script> exp…

◯×ゲームを作ろう

プロジェクト作成 yarn create nuxt-app marubatsu 項目 選択肢 Project name そのまま Programming language JavaScript パッケージマネージャー yarn UI Framework Vuetify Nuxt.js modules チェックなし Linting tools なし Testing framework None Rende…

Vue.js / Nuxt.js 入門

Vue.jsとは jp.vuejs.org 現在のバージョンはVue 2 2020年8月頃にVue 3がリリースされるらしい。 github.com いまから勉強する内容は、おそらく1年後古くなっているけど、恨まないでね。(というか、WebのJavaScript界隈のスピード感はそんな感じ) 競合 Reac…

配列とオブジェクトを操る

オブジェクトにオブジェクトを追加する & そのオブジェクトに要素を追加する。 ※一行づつ書く 出力結果 { '兵庫': { '神戸': 'A', '明石': 'B', '西宮': 'C' } } 解答例 const obj = {} obj["兵庫"] = {} // ←これがないとobj["兵庫"]がundefinedになるから…

Userデータを集計する

https://github.com/prog-ac/sortable-table/blob/master/assets/users.json 準備 curl https://raw.githubusercontent.com/prog-ac/sortable-table/master/assets/users.json > users.json jsonの読み込み const users = require("./users.json") 1. スコア…

Array.find()を自作せよ

developer.mozilla.org 配列から条件を満たす最初の要素を返す関数find(array, callback)を作成せよ。条件に当てはまるものがなかったらundefinedを返す。 条件は 20以下 とする node main.js 34 27 94 12 30 14 25 12 解答例 function find(array, callback…

オリジナル1分タイマーを作ろう

指定したタイミングでコールバックを読んでくれる関数startMyTimer(list, callback)を作成せよ 尚、タイマー検知はsetTimeout()を使うこと nodejs.org setTimeout(コールバック, 経過時間, コールバックに渡す引数) Macのスピーチコマンド const { exec } = …

String.trimを自作せよ

developer.mozilla.org ただしあらゆるStringのメソッドを使用禁止 対象空白文字 文字コード タブ "\t" 復帰 "\r" 改行 "\n" 半角スペース " " 全角スペース " " node trim.js " Hello World " Hello World

String.splitを自作せよ

文字列を区切り文字で分割し配列で返す関数split(str, separator)を自作せよ function split(str, sepatator) { } console.log(split(process.argv[2], ",")) node main.js "aaa,bbb,444,555" [ 'aaa', 'bbb', '444', '555' ] 解答例 function split(str, se…

指定されたインデックスが先頭になるようにして返す関数を作成せよ

配列を指定されたインデックスが先頭になるようにして返す関数rotate(arr, index)を作成せよ docs.ruby-lang.org 作成する関数の第1引数は絞り込み前の配列、第2引数は先頭にするインデックスとする コマンドライン引数の1つ目をインデックス、それ以降を…

配列を受け取りコールバックで指定された条件のもの省いて返す関数を作成せよ

配列からコールバックで指定された条件を満たす要素を省いて返す関数 deleteIf(array, callback) を作成せよ 作成する関数の第1引数は絞り込み前の配列、第2引数は評価関数とし、返り値を省いた後の配列とする 使っていいメソッドはArray.pushのみとする …

再起を使って配列を回す

再起を使って配列の全ての要素をコールバックで呼び返す、関数 forEachRecursive() を作成せよ forやwhile文等のループ構文の使用を禁止する コールバック内ではconsole.log(item)を実行し全ての要素を出力する 解答例 // 再起関数 function f(arr, i, callb…

重複した値を省いて返すメソッド unique(array)を作成せよ

配列を受け取り、2つ目以降の重複した値を格納せずに返す関数 unique(array)を作成せよ node main.js a b c b d e a f c 出力結果 ['a', 'b', 'c', 'd', 'e', 'f'] 解答例 function unique(array) { const ret = [] for (let i = 0; i < array.length; i++)…

値が指定された範囲内にあるかどうかを判定する関数を作成せよ

numがmin以上, max以下の場合はtrueをそれ以外の場合はfalseを返す関数 isBetween(num, min, max) を作成せよ 実行例 4が0以上10以下かどうかを判定する node main.js 4 0 10 true 15が3以上7以下かどうかを判定する node main.js 15 3 7 false 解答例 funct…

Array.filter()関数を自作してみよう

配列から条件を満たす要素のみに絞り込んだ配列を返す関数 filter(array, callback) を作成せよ 作成する関数の第1引数は絞り込み前の配列、第2引数は評価関数とし、返り値を絞り込んだ後の配列とする 使っていいメソッドはArray.pushのみとする コールバ…

西暦を和暦に変換する関数を作成せよ

コマンドライン引数、西暦year month dayを入力し、 和暦の文字列を返す関数 toWareki(year, month, day)を作成せよ。 ただし1926年12月25日以前の入力値は入らないものとする 和暦 西暦 令和 2019/5/1〜 平成 1989/1/8〜 昭和 1926/12/25〜 node main.js 20…

覆面算を解くプログラム

以下の条件を満たすa,b,cを求めるプログラムを作成せよ。ただし各変数には1〜9の値が入るものとします a b + c a ----- b b c 出力結果 a:5, b:1, c:6 解答例 for (let a = 1; a <= 9; a++) { for (let b = 1; b <= 9; b++) { for (let c = 1; c <= 9; c++) …

最小値・最大値に丸める関数を作成せよ

与えられた値:numがminより小さい場合にはminの値に、numがmaxより大きい場合にはmaxの値に範囲内であればその間して返す関数 limited(num, min, max)を作成せよ。 関数に渡す値は、最小値は0、最大値は100、numはコマンドライン引数から受け取った値とする …

データを棒グラフで表現せよ

ただし最小値は-25, 最大値は25とする const data = [13, -5, 24, -12, 9, 18] 出力結果 |+++++++++++++ -----| |++++++++++++++++++++++++ ------------| |+++++++++ |++++++++++++++++++ 解答例 const data = [13, -5, 24, -12, 9, 18]; for (let i = 0; i …

数値検査

引数で受け取った文字列の中が、0〜9のみで構成されていた場合はtrueを、0〜9以外の文字が入っていた場合はfalseを返す関数 isNumber() を作成せよ。 ただしJavaScriptで用意されているあらゆるメソッドを使うこととNumber型にキャストすることを禁止する。 …