沼田的瀬戸際メモ(仮)

プログラミング超絶素人がプログラマの方達の宇宙語を理解するための備忘録的なメモ。

繰り返し処理の問題でfor文を使って解いてみた。それとイーサリアム(ETH)の価格について

イーサリアム(ETH)が値を下げています。ほんの2、3日前までは 1ETH = 4万円台だったのですが、今は
1 ETH = 3万6000円あたりをウロウロしています。
最近は、6月の値動きをもって仮想通貨バブルは終焉しました。なんて言う人もいますが、ライトコイン(LTC)などはしっかり値上がりしてますし、瀬戸際の沼田はまだまだこれからと考えています。
今は絶好の買い場と考えます。ボーナス全額イーサリアムに逝きたいですね!今の価格をメモするため現在の価格をcoincheckからスクショ↓
f:id:aed2797:20170622193536p:plain

前置きが長くなりました、瀬戸際の沼田です。

昨日に引き続き、繰り返し処理の問題を解いておりました。普通のプログラマであれば1問20分もあれば十分な課題とのこと。

繰り返し処理問題1

問題:配列の要素を検索する関数 indexOf を実装せよ。配列と値valueを引数に与えると、valueと等しい要素を検索して、その要素のインデックスを返す。また、等しい要素が見つからない場合には -1 を返すものとする。
(ただし、Array.prototype.indexOfを使ってはならない)

与えられる配列の例
let array = [5,1,2,6,4,0]

で、for文を使って書いてみたのがコチラ↓

let array = [1, 4, 8, 10, 6]
function indexof (array, inputValue) {
  for (let i = 0; i < array.length; i++) {
    let value = array[i]
    if (value === inputValue) {
      return i
    }
  }
  return -1
}
console.log(indexof(array, 1))

繰り返し処理問題2

問題:キー name で要素を検索する関数 indexOfName を実装せよ。 見つかれば要素のインデックスを返し、見つからなければ -1 を返す。

与えられるオブジェクト配列の例
let persons = [
  {
    name: 'fuji',
    age: 18
  },
  {
    name: 'sato',
    age: 60
  },
  {
    name: 'numata',
    age: 30
  }
]

で、for文を使って書いてみたのがコチラ↓

let persons = [{
  name: 'yamada',
  age: 18
},
  {
    name: 'sato',
    age: 60
  },
  {
    name: 'numata',
    age: 30
  },
  {
    name: 'aaa',
    age: 1
  }
]

function indexOfName (persons, searchName) {
  let objarray = Object.keys(persons)
  for (let i = 0; i < objarray.length; i++) {
    let obj = persons[i]
    if (searchName === obj.name) {
      return i
    }
  }
  return -1
}
console.log(indexOfName(persons, 'aaa'))

オブジェクト配列の扱いに少し手間取りましたが何とかクリアしました...。
処理の手順をちゃんと紙に書いてからやらないとこんがらがってしまいます。

今日より明日は改善するよう頑張っていきます(><)