人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPで書かれた以下の処理、
「配列array_hogeのデータをeach文でループして、配列hogeを作るプログラム」
をRuby、Python、Perlで書いてください。
※配列(array_hoge)の大きさはn個とします。

例:)
$array_hoge[0] = 'hogehoge0'
$array_hoge[1] = 'hogehoge1'
.
.
$array_hoge[99] = 'hogehoge99'
.

<?php

foreach( $array_hoge as $key => $value ){
$hoge[$key] = $value;
}

var_dump($hoge);

?>


●質問者: is0me
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:as hoge Key Perl PHP
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● nuna
●15ポイント

Rubyの場合だけ。

n = 100

ary = (0..n).map{|i|"hogehoge#{i}"}

p ary

◎質問者からの返答

ありがとうございます。


2 ● いわどん
●45ポイント ベストアンサー

質問の「配列」がRubyでいうところのArray(配列)かHash(連想配列)か決めかねましたので、両者の組み合わせをひと通り書きました。

# array_hogeもhogeもArrayの場合
n = 100 
array_hoge = (0 ... n).map { |i| "hogehoge#{i}" }

hoge = []
array_hoge.each { |v| hoge << v }
p hoge
# array_hogeもhogeもHashの場合
n = 100
array_hoge = {}
n.times { |i| array_hoge[i] = "hogehoge#{i}" }

hoge = {}
array_hoge.each { |k, v| hoge[k] = v }
p hoge
# array_hogeはArray、hogeはHashの場合
n = 100
array_hoge = (0 ... n).map { |i| "hogehoge#{i}" }

hoge = {}
array_hoge.each_with_index { |v, i| hoge[i] = v }
p hoge
# array_hogeはHash、hogeはArrayの場合
n = 100
array_hoge = {}
n.times {|i| array_hoge[i] = "hogehoge#{i}"}

hoge = []
array_hoge.keys.sort.each {|k| hoge << array_hoge[k]}
p hoge
◎質問者からの返答

Rubyについては満足の回答です。

ありがとうございます。


3 ● Lhankor_Mhy
●15ポイント

配列から配列でいいのですよね?

Pythonの場合

#n=100
#array_hoge = ['hogehoge%s' % x for x in range(n)]

hoge =[x for x in array_hoge]
#print hoge
◎質問者からの返答

ありがとうございます。


4 ● watarum
●15ポイント
#!perl
push @hoge, $_ foreach @array_hoge ;
◎質問者からの返答

ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ