C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[7]: C#の配列に対する入力について


(過去ログ 130 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■77025 / inTopicNo.1)  C#の配列に対する入力について
  
□投稿者/ EDF (25回)-(2015/09/05(Sat) 00:02:24)

分類:[C#] 

タイトル通りです。
例えば
コマンドプロンプトで
1111
11011
1101
10011
1101
などと打ったとします(入力なのでここは任意)。このときにint型の二次元配列aを
a[,]=
{0,0,0,0,0,0}
{0,1,1,0,1,1}
{0,1,1,0,1,0}
{0,1,0,0,1,1}
{0,1,1,0,1,0}
{0,0,0,0,0,0} となるように定めたいのですが、どうしたらよいでしょうか?
ソースコードを教えていただけると幸いです
引用返信 編集キー/
■77026 / inTopicNo.2)  Re[1]: C#の配列に対する入力について
□投稿者/ EDF (26回)-(2015/09/05(Sat) 00:23:42)
一部訂正
> タイトル通りです。
> 例えば
> コマンドプロンプトで
> 1111
> 11011
> 1101
> 10011
> 1101
> などと打ったとします(入力なのでここは任意)。このときにint型の二次元配列aを
> a[,]=
> {0,0,0,0,0,0}
> {0,1,1,1,1,0}
> {0,1,1,0,1,1}
> {0,1,1,0,1,0}
> {0,1,0,0,1,1}
> {0,1,1,0,1,0}
> {0,0,0,0,0,0} となるように定めたいのですが、どうしたらよいでしょうか?
> ソースコードを教えていただけると幸いです
引用返信 編集キー/
■77027 / inTopicNo.3)  Re[2]: C#の配列に対する入力について
□投稿者/ Azulean (513回)-(2015/09/05(Sat) 00:32:35)
仕様が足りないから、ソースコードに落とせる人はいないと思います。
あるいは、多様な解釈によって発散してしまうか。

・入力にない、一番上と一番下、および一番左の 0 埋めについて言及していない。
・縦横ともに長さに関する話を言及していない。自由度があるのか、ないのかによってコードは変わる。


// 本来的にはプログラムを作るのは自分自身のはずです。
// 課題を示して「ソースコードを教えて欲しい」では、「仕様を示して開発してもらう(仕事してもらう)」と違わないことに留意しましょう。
引用返信 編集キー/
■77028 / inTopicNo.4)  Re[3]: C#の配列に対する入力について
□投稿者/ EDF (27回)-(2015/09/05(Sat) 00:55:12)
No77027 (Azulean さん) に返信
> 仕様が足りないから、ソースコードに落とせる人はいないと思います。
> あるいは、多様な解釈によって発散してしまうか。
>
すいません説明不足でした。
まず7x6のint型配列を規定して、それらのすべての要素0として代入
その後5つの1と0からなる数列で長さは4,5,4,5,4となるものを順番に
入力します(スペースはあけない)そしてaの1行(行列の言葉なので要素の数え方と違うので注意)
は全てそのままにして、入力された値を2行2列→2行3列。。。→6行4列
と代入して完了です。長さは7行(これは固定)で(入力された列の数+2)列の配列
仕様はこんな感じで説明すればいいのでしょうか。
極力厳密に説明したつもりですが不備あったらいってください。
引用返信 編集キー/
■77029 / inTopicNo.5)  Re[4]: C#の配列に対する入力について
□投稿者/ Azulean (514回)-(2015/09/05(Sat) 01:22:35)
それでどの部分がわからないか、どこまではわかるのかは示せませんか?
この仕様中にもいくつかの要素があると思います。
たとえば、コンソールから入力を得る方法、文字列を文字配列に分解する方法、文字配列から int 型配列にする方法といったものです。
わからないポイントをもっと具体的に示した方が助言を得やすいでしょう。

// 「仕様を提示してソースコードを求める」だけなら、「質問」ではなく、「仕事の依頼」なので、請け負う人々・業者に投げるべきです。
引用返信 編集キー/
■77030 / inTopicNo.6)  Re[5]: C#の配列に対する入力について
□投稿者/ EDF (28回)-(2015/09/05(Sat) 09:39:54)
No77029 (Azulean さん) に返信


入力配列を整数型にする方法まではわかりますが、その後で入力された文字列を文字配列に分解するという方法と
その文字配列の一行めと7行目に0のみを要素に含む配列を挿入する方法と1列目に0を挿入する方法がわかりません
引用返信 編集キー/
■77031 / inTopicNo.7)  Re[6]: C#の配列に対する入力について
□投稿者/ Azulean (515回)-(2015/09/05(Sat) 11:02:23)
2015/09/05(Sat) 11:07:55 編集(投稿者)

No77030 (EDF さん) に返信
> その後で入力された文字列を文字配列に分解するという方法と

「string 型を char 型配列に」ということであれば、MSDN を見る癖をつけた方がよさそうですね。
一覧を読み込めば自ずとわかるはず。
https://msdn.microsoft.com/ja-jp/library/system.string

「int 型を int 型配列に」ということであれば、10 の何乗とかで割り算した結果の"あまり"を取り出していくとか。

今回のケースなら、int 型に変換するのは文字ごとに区切ってからの方が楽そうな気がします。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=58012&KLOG=97


> その文字配列の一行めと7行目に0のみを要素に含む配列を挿入する方法
> 1列目に0を挿入する方法がわかりません

個人的には「足す」「挿入する」という考え方の必要性はないと思っています。
7 行 6 列と最終の配列の大きさが決まっていること、2 次元配列は new する段階で大きさを確定させる必要があること、int 型の配列は確保した時点でそれぞれ 0 が入っていることから、配列を確保して、必要な部分を書き換えるという考え方でいけるはずです。

2 行目の 2 列目から書き換える、3 行目の 2 列目から書き換える、…、6 行目の 2 列目から書き換えるとループで繰り返せば済む話でしょう。
引用返信 編集キー/
■77032 / inTopicNo.8)  Re[7]: C#の配列に対する入力について
□投稿者/ EDF (29回)-(2015/09/05(Sat) 12:54:16)
No77031 (Azulean さん) に返信
ありがとうございます。色々教えてくださり助かりました
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -