配列に代入

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
Cひさしぶり

配列に代入

#1

投稿記事 by Cひさしぶり » 11年前

配列に10305と数が格納されていたら、13500と代入しなおすプログラムを
作成したいです。10005は15000などです。
10305,13050 ,13500と、Ⅰ0を見つける、Ⅱ0以外の数を一つづつ前にずらす
Ⅲ0を配列の末尾に代入。を例では2回繰り返して処理をできると思っています。
ⅠからⅢをくりかえしたいです。
お返事お願いします。

アバター
asd
記事: 319
登録日時: 14年前

Re: 配列に代入

#2

投稿記事 by asd » 11年前

ご自分で書かれている通りの処理をプログラムにするだけだと思いますが、何がわかりませんか?
配列を用意して数値を格納し、IからIIIの処理以外を作ることもできませんか?
今のままでは完全に丸投げですよ。

ヒントを出すとするとバブルソートの改変版といったところでしょうか。
(通常のバブルソートでは左右を比較して大小関係に応じて入れ替えを行いますが、今回は左側が0の時限定で入れ替えればOK)

また過去のトピックを放置されているようなので、今のままでは同じような対応をされるものと警戒されてまともに回答はつかないと思います。

ひらがな
http://dixq.net/forum/viewtopic.php?f=3&t=15465

qsortの利用
http://dixq.net/forum/viewtopic.php?f=3&t=15426
Advanced Supporting Developer
無理やりこじつけ(ぉ

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: 配列に代入

#3

投稿記事 by みけCAT » 11年前

Cひさしぶり さんが書きました:配列に10305と数が格納されていたら、13500と代入しなおすプログラムを
作成したいです。10005は15000などです。
10305,13050 ,13500と、Ⅰ0を見つける、Ⅱ0以外の数を一つづつ前にずらす
Ⅲ0を配列の末尾に代入。を例では2回繰り返して処理をできると思っています。
ⅠからⅢをくりかえしたいです。
これは質問ではなく、日記に見えます。
この掲示板は日記ではありません。
このサイトにユーザー登録をしていただくと、日記を書いて投稿することができるようになります。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

much

Re: 配列に代入

#4

投稿記事 by much » 11年前

Cひさしぶり さんが書きました:配列に10305と数が格納されていたら、13500と代入しなおすプログラムを
作成したいです。10005は15000などです。
10305,13050 ,13500と、Ⅰ0を見つける、Ⅱ0以外の数を一つづつ前にずらす
Ⅲ0を配列の末尾に代入。を例では2回繰り返して処理をできると思っています。
ⅠからⅢをくりかえしたいです。
お返事お願いします。
配列とはどういうことでしょうか?
例えば
int a[10] ={ 10305, 10005, ...}
ともとれるし
int a[5] = {1,0,3,0,5}
という風にも取れます

(どちらにせよ解決しますが、この違いでどのようなアルゴリズムになるかが大きく変化します)

一般的に考えて前者なので,そちらを考えます

とりあえず日本語がわかりづらいのならプログラムライクな日本語に書き直してみてはどうでしょうか
Ⅰ0を見つける
→数値の頭が0か調べる
→もし数値の頭を調べ、その数が0なら、{ホニャララ} (そうでなければ次へ)

Ⅱ0以外の数を一つづつ前にずらす
→Ⅰの数が0でⅠの次の数が0でなければ{数を一つ前にずらす}

Ⅲ0を配列の末尾に代入。
適切な量(自分で考える)だけ0を挿入

それで10005の例からわかるように
0の数はいくつ連続するかわからないので
0以外の数が出たところから一気に戻していく

つまり調べる位置としては

10005
  ↓
10005
  ↓
10005
   ↓
10005
  ↓
10050
  ↓
10500

15000

という風に奥まで調べて行って戻ってくる再帰関数をつかうということです

とりあえずヒントはここまで一度考えてみてください
(とはいったもののもっと簡単なアルゴリズムはたくさんあると思いますよ
再考するのも一つの手だとおもいます)
何か質問があれば続けます

Cひさしぶり

Re: 配列に代入

#5

投稿記事 by Cひさしぶり » 11年前

バブルソートを変えたらなんとかできました。ありがとうございます。

アバター
asd
記事: 319
登録日時: 14年前

Re: 配列に代入

#6

投稿記事 by asd » 11年前

Cひさしぶり さんが書きました:バブルソートを変えたらなんとかできました。ありがとうございます。
意味が分かりません。
このトピック内でバブルソートという単語は私が初めて出した単語ですが、
質問を投稿した段階でバブルソートまで処理はかけていたのでしょうか?
であれば、質問時に自分が作成したコードを提示すべきでしょう。

終始コードが出てこないので、あなたは解決してよかったかもしれませんが、
あなた以外の回答者、閲覧者は「何が問題で、何をどう変えたら解決したのか」が全く分かりません。

解決前のコードと、実行時の問題点、解決後のコードをそれぞれ提示してから解決としてください。
結局ルールを守らないままなので、今後もまともな回答はつかないと思ってください。
オフトピック
日本語が母国語ではない国の方のようにも思えるので、
そうであれば母国語が使える掲示板を利用されたほうがよいかと思います。
このトピックでの流れを見ると意志疎通がまるでできていませんので。
Advanced Supporting Developer
無理やりこじつけ(ぉ

ろ。

Re: 配列に代入

#7

投稿記事 by ろ。 » 11年前

質問者が過去の質問を放置していたりマナーがなっていない、というのは分かります。
しかし、
「このサイトにユーザー登録をしていただくと、日記を書いて投稿することができるようになります。」
「日本語が母国語ではない国の方のようにも思えるので、
そうであれば母国語が使える掲示板を利用されたほうがよいかと思います。」
この発言は、あまりに嫌味がすぎるのではないでしょうか。
相手がマナーを守らなければ悪口を言ってもいいのですか?
これほどに露骨な発言は、さすがに回答者側のマナーの悪さを感じます。

much

Re: 配列に代入

#8

投稿記事 by much » 11年前

asd さんが書きました: 終始コードが出てこないので、あなたは解決してよかったかもしれませんが、
あなた以外の回答者、閲覧者は「何が問題で、何をどう変えたら解決したのか」が全く分かりません。
これを読んだ初心者さんは
10053 と入力すると, 13500になるんですね,わかります。
オフトピック
asd さんが書きました: 質問を投稿した段階でバブルソートまで処理はかけていたのでしょうか?
別の解法を薦めたのは私だから、バブルソートに関しては質問前にわからなかったにしてもいいはず。
どのように解決したかは提示すべきだけど

アバター
asd
記事: 319
登録日時: 14年前

Re: 配列に代入

#9

投稿記事 by asd » 11年前

オフトピック
ろ。 さんが書きました:質問者が過去の質問を放置していたりマナーがなっていない、というのは分かります。
言葉尻にだけ反応されて誤読されているようです。
私は明確に「意志疎通ができていないようです」と書いています。
ろ。 さんが書きました: 「日本語が母国語ではない国の方のようにも思えるので、
そうであれば母国語が使える掲示板を利用されたほうがよいかと思います。」
この発言は、あまりに嫌味がすぎるのではないでしょうか。
少なくとも上記の私の記述は嫌味ではなくアドバイスです。変に勘ぐりすぎではないでしょうか?
あまりに意志疎通ができていなかったのと、独特な語調での書き込みでしたので、
「日本語が得意でないのであれば」と前置きしたうえでアドバイスを書き込んだまでです。

本題であるプログラミング以外の点で苦労を強いるのは質問者さんに悪いのではと思いアドバイスさせていただいた次第です。
それとも仮に質問者さんが日本語が得意ではなかったとしても、あなたは質問者さんに苦手な日本語の使用を強制されるのでしょうか?
ろ。 さんが書きました: 相手がマナーを守らなければ悪口を言ってもいいのですか?
これほどに露骨な発言は、さすがに回答者側のマナーの悪さを感じます。
いろいろと誤読した上で他人の投稿を糾弾されているようです。
母国語云々については上記の通り純粋なアドバイスですよ。
それを悪口だと断じられてしまっては困ってしまいます。
much さんが書きました:
asd さんが書きました: 終始コードが出てこないので、あなたは解決してよかったかもしれませんが、
あなた以外の回答者、閲覧者は「何が問題で、何をどう変えたら解決したのか」が全く分かりません。
これを読んだ初心者さんは
10053 と入力すると, 13500になるんですね,わかります。
すみませんが、私の上記の投稿を読むとそのようなコードを書かせてしまう危険性があるというご指摘でしょうか?
そうであればそれは本意ではありませんので、具体的に何が悪いのかをご指摘いただければと思います。
#それとも私の「バブルソートの改変版」が悪いとおっしゃっていますか?

(訂正)
ごめんなさい思い切り誤読していたかもです。
上記の私の投稿に関連して「具体的な解決方法が不明なままなので、このトピックを読んだ初心者は間違ったコードを書く可能性がある」という
解釈もできますが、その認識で正しいでしょうか(私の投稿自体に対する指摘ではないという認識)
そうであれば取り消し線部分は取り下げます。
much さんが書きました:
asd さんが書きました: 質問を投稿した段階でバブルソートまで処理はかけていたのでしょうか?
別の解法を薦めたのは私だから、バブルソートに関しては質問前にわからなかったにしてもいいはず。
どのように解決したかは提示すべきだけど
最初の質問の時点では一切本題の処理ができないような記述がなされていたため、現在は全くプログラムが作成できていないと仮定して、
1.どこまでなら記述が可能なのか
2.処理のヒントとしてはバブルソートを参考にするとよいかも
との投稿をしました。

それに対する返答が「バブルソートを変えたらなんとかできました」だったので、
回答を読むことなく自己解決したと思ったわけです。
好意的な解釈をすれば「質問当初は知らなかったものの回答を読んでキーワードをみつけ、自己解決した。ただし回答者への個別返答はしなかった。」とも取れますね。

muchさんが別の解決法を提示していることと、質問時にバブルソートを知らなかったことは因果関係はないと思われますが…。
Advanced Supporting Developer
無理やりこじつけ(ぉ

KH

Re: 配列に代入

#10

投稿記事 by KH » 11年前

オフトピック
>asdさん
外部から口を挟んで申し訳ありませんが、私もやや不快に感じるところがあります。
(心持ちとして不快に感じるという意味です。具体的に何処が?と屁理屈は言わないで下さい)
確かに質問者さんはマナーがなっていないし、きちんとした意思疎通も取ろうとしていない――あるいは推測されたように、言語的な問題で取れないのかもしれません。
ですが、そこでそう高飛車な態度を取る必要性がありますでしょうか?
私だって今回のような質問者さんには思うところもありますし、間違いなく諫めます。
しかし、必要以上に過敏に反応したり、屁理屈で返すのは賢くない(正しくないとは言っていません)と思います。
この掲示板にはasdさんを始めとして技術的に素晴らしい方々が沢山いらっしゃいます。
私のような初心者も皆さん方にだいぶ助けられましたし、大変感謝しています。
ただ今回の件に関しては少々疑問に感じてしまいます。
一意見として申し上げさせていただきますが、遺憾に思われるようでしたらすみません。

much

Re: 配列に代入

#11

投稿記事 by much » 11年前

asd さんが書きました: (訂正)
ごめんなさい思い切り誤読していたかもです。
上記の私の投稿に関連して「具体的な解決方法が不明なままなので、このトピックを読んだ初心者は間違ったコードを書く可能性がある」という
解釈もできますが、その認識で正しいでしょうか(私の投稿自体に対する指摘ではないという認識)
そうであれば取り消し線部分は取り下げます。
そういうことです.
指摘ではなく,追記というか補足というかなんというか... まぁそんなのです
言いたかったことを具体的に示せば,
そのままバブルソートを適用しちゃったら数字まで入れ変わっちゃいますよー
しかも,質問者様のサンプル(10305,10005)だけ突っ込んでも通っちゃいますよー

ということです
(おそらく誰かやらかす... 昔の俺とか,今の俺とか,未来の俺とか)

とりあえず取り消し線部は,このスレを参照している方のために
経緯がわかるように,取っておいてくださるとありがたいです
誤読されるかもと少し怖れて何度か練り直したのですが,
やはり不適切な方に落ち着いてしまいました...
申し訳なかったです
asd さんが書きました: muchさんが別の解決法を提示していることと、質問時にバブルソートを知らなかったことは因果関係はないと思われますが…。
バブルソートに関しては質問者様が知っていたかどうかは
現状では知るすべはありませんが
少なくとも提示されたアルゴリズムをそのままプログラムライクに書いた私の文だと
限りなくめんどくさく,他のアルゴリズムを考え,適用しようと考えたのは確かなはず...
(はっきり言って書いた私もやりたくない,うん.)

そこで,asdさんのバブルソートに目が行って,
それをうまく改良できたかはわからないけど,とりあえず完成したと.
その流れだと別にバブルソートはヒントとして得たのであって
バブルソートの処理が書けてるか否かは関係ないと思います

もちろん,どのように解決したかをもっと具体的に説明すべきではあります
オフトピック
「バブルソートを変えたらなんとかできました。ありがとうございます。」

と、ありますが
私は

「asdさんのヒントの「バブルソート」を改良することにより解決しました.
ヒントを下さったasdさん,及びその他の回答者の皆さんありがとうございます.」


という風にとりました.

質問(わからないところ)に関しては

提示したアルゴリズムをプログラムに直すとどのようになりますか?
ヒントなどよろしくお願いします


というふうに取りました.

やはり聞き取る人によって差が生じているのではないでしょうか?
(OR, AM I A NOT NATIVE JAPANESE SPEAKER TOO?)

アバター
asd
記事: 319
登録日時: 14年前

Re: 配列に代入

#12

投稿記事 by asd » 11年前

much さんが書きました:
asd さんが書きました: (訂正)
ごめんなさい思い切り誤読していたかもです。
上記の私の投稿に関連して「具体的な解決方法が不明なままなので、このトピックを読んだ初心者は間違ったコードを書く可能性がある」という
解釈もできますが、その認識で正しいでしょうか(私の投稿自体に対する指摘ではないという認識)
そうであれば取り消し線部分は取り下げます。
そういうことです.
指摘ではなく,追記というか補足というかなんというか... まぁそんなのです
言いたかったことを具体的に示せば,
そのままバブルソートを適用しちゃったら数字まで入れ変わっちゃいますよー
しかも,質問者様のサンプル(10305,10005)だけ突っ込んでも通っちゃいますよー

ということです
(おそらく誰かやらかす... 昔の俺とか,今の俺とか,未来の俺とか)
当初の書き込みのあと、上記の訂正を書き加えましたがその通りでよかったです。
確かに私の重要な条件である「左側が0の場合入れ替える」をすっ飛ばしてバブルソートを適用したら
提示いただいたような非常に残念な結果になってしまいますもんね(汗)
#私も検証コードを書いた際やりかけました
much さんが書きました: とりあえず取り消し線部は,このスレを参照している方のために
経緯がわかるように,取っておいてくださるとありがたいです
誤読されるかもと少し怖れて何度か練り直したのですが,
やはり不適切な方に落ち着いてしまいました...
申し訳なかったです
ご指摘ありがとうございます。「取り消し線部を取り下げる」と書いたのは
記述を削除するという意味ではなく、最初は取り消し線部のように思っていたけど、
今はそんな風に思っていないですよーという意味合いです。

前言撤回しますに近い意味合いであって、記述自体をなかったことにはしませんのでご安心を。
流れがわからなくなるような編集をしてしまうとほかの方の書き込みの価値まで下げてしまいますので。

こちらこそ盛大に誤読してしまったようですみませんでした。
much さんが書きました:
asd さんが書きました: muchさんが別の解決法を提示していることと、質問時にバブルソートを知らなかったことは因果関係はないと思われますが…。
(中略)

そこで,asdさんのバブルソートに目が行って,
それをうまく改良できたかはわからないけど,とりあえず完成したと.
その流れだと別にバブルソートはヒントとして得たのであって
バブルソートの処理が書けてるか否かは関係ないと思います
質問者さんの解決コメントを読んだ当初はどこまで処理がかけているのかの質問にも回答していただけず、
また具体的な解決方法も記述されていなかったなどコミュニケーションを取っていただけなかったため、
「実はバブルソートまで処理は書けていて、動作が思うようにいかなかっただけでは?」ととらえていました。
(前述のmuchさんの通り数字が入れ替わってしまっていたとか)
much さんが書きました:
オフトピック
「バブルソートを変えたらなんとかできました。ありがとうございます。」

と、ありますが
私は

「asdさんのヒントの「バブルソート」を改良することにより解決しました.
ヒントを下さったasdさん,及びその他の回答者の皆さんありがとうございます.」


という風にとりました.
最初の私の書き込みにある質問に応答がなく、解決コメントだけを書かれてしまったため、
残念ながら上記のような好意的な解釈は阻害されていました。
一方的に情報を与えるだけのサポートセンターではないと思っていますので、
コミュニケーションを全く取らず自分さえよければいいやという考えの方にいい印象を持っていません。

経験上、過剰なまでの好意的な解釈は相手を甘やかすだけだと骨身にしみているため、
ある程度の好意的な解釈は避ける傾向にありました。
ただ今回はその度が過ぎていたのかなと思います。
much さんが書きました:
オフトピック
やはり聞き取る人によって差が生じているのではないでしょうか?
(OR, AM I A NOT NATIVE JAPANESE SPEAKER TOO?)
その通りだと思います。
その差を埋めるのがコミュニケーションだと思っています。

なお、質問者さん以外の閲覧者さんにも意図せず不快な思いをさせてしまったようで申し訳ありませんでした。
前述の通り、意図的な嫌味ではなかった旨ご理解いただければ幸いです。[/offtopic]
Advanced Supporting Developer
無理やりこじつけ(ぉ

閉鎖

“C言語何でも質問掲示板” へ戻る