Discuss Scratch

abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

あと、#2878への回答の#2884への返信もお願いします。
taNup0n
Scratcher
500+ posts

Scratchスクリプトクイズ

#2884
よく見たら結構違いました
https://scratch.mit.edu/projects/1002920074/
これです。

#2884
はい、意味合いとしては合っています。それを「半径」を小さくして、nを十分大きくすれば正解です。
sakura_neko
Scratcher
90 posts

Scratchスクリプトクイズ

出題します。

リスト A があり、被りのない1以上200000以下の整数がたくさん入っています。Aを昇順にソート(前の要素より後ろの要素が大きくなるように並べ替えること)してください。
ただし、Scratchの標準のブロックパレットにあるブロックのみを使用可能とします。

リストの初期化に使うブロック(〜のすべてを削除する)をカウントし、実行開始ブロック(旗が押された など)をカウントしない場合、想定解答は13ブロックです。
Catapult-
Scratcher
100+ posts

Scratchスクリプトクイズ

#2904
12ブロックです。

Last edited by Catapult- (April 23, 2024 17:44:09)

luchs_II
Scratcher
9 posts

Scratchスクリプトクイズ

11ブロック?

[i v] を [1] にする
(200000) 回繰り返す
もし <[A v] に (i) が含まれる> なら
[A v] の ([A v] 中の (i) の場所 :: list) 番目を削除する ::list
(i) を [A v] に追加する
end
[i v] を (1) ずつ変える
end
abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2903
その回答は、taNup0nさん自身が決めた「移動スピードは固定です(回転角のみ変更可能)」を満たしていません。
(1) 歩動かす
#2884も同様です。
sakura_neko
Scratcher
90 posts

Scratchスクリプトクイズ

#2905 なるほど、ループ3回なのにブロック数が12で済むんですね… 正解です!
#2906 その発想はなかったです。先に削除があるのでリストの上限にも触れずにソートできますね。正解です!

想定解答はこちらでした。
h_team_x
Scratcher
100+ posts

Scratchスクリプトクイズ

問題
四捨五入ブロックを使わずに、ある数を、四捨五入できるプログラムを作ってください!
機能は同じにしてください!
想定:53b

Last edited by h_team_x (April 24, 2024 18:23:42)

kouryou118103
Scratcher
1000+ posts

Scratchスクリプトクイズ

3ブロックです。
(入力)
(出力)//実行前は0


(入力) 回繰り返す
[出力 v] を (1) ずつ変える
end
jjhs3213
Scratcher
29 posts

Scratchスクリプトクイズ

#2910は
[出力 v] を [0] にする
が必要なので4ブロックです。
(((入力) + (0.5)) の [切り下げ v] ::operators)
これは3ブロックです。
inoking
Scratcher
1000+ posts

Scratchスクリプトクイズ

jjhs3213 wrote:

(((入力) + (0.5)) の [切り下げ v] ::operators)
これは3ブロックです。
も結果の代入が必要なので4ブロックになると思います。
h_team_x
Scratcher
100+ posts

Scratchスクリプトクイズ

h_team_x wrote:

問題
四捨五入ブロックを使わずに、ある数を、四捨五入できるプログラムを作ってください!
機能は同じにしてください!
想定:53b
その手があったか
答えはこれでした
変数が入力、ansが出力です。

Last edited by h_team_x (April 25, 2024 03:24:19)

abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2909には引数と返り値にあたる変数の指定がなく、「四捨五入ブロックを使わずに、ある数を、四捨五入できるプログラム」が、
(() を四捨五入)
とまったく同じように置き換えて使えるという意味であれば、レポーターブロック(関数)でなければならず、そうだとすると、ここまでの正解は#2911のみだと思います。#2911の「入力」をコメントと考えて2ブロックと言ってもよいかもしれません。

Last edited by abee (April 25, 2024 01:25:25)

inoking
Scratcher
1000+ posts

Scratchスクリプトクイズ

つまり、問題があいまいです。
#2911は#2910に対する指摘だったので、それなら同条件で考えるべきという意味です。
投稿番号でも投稿ブロックされるようになったのか

Last edited by inoking (April 25, 2024 03:11:41)

pupon
Scratcher
100+ posts

Scratchスクリプトクイズ

問題です。

リストカテゴリのブロック、
定義ブロック、
もし<>なら
end

のみを使って、
(()+())
を再現してください。

【注意】
定義 (a) + (b)
という定義ブロックを呼び出すと計算できるようにしてください。
 計算結果は「出力」というリストの末尾に追加するようにしてください。
※aとbは、0以上であり、その和は200000以下です。

想定解は、37ブロックです。

Last edited by pupon (April 25, 2024 07:41:21)

sakura_neko
Scratcher
90 posts

Scratchスクリプトクイズ

#2916
26ブロックで出来ました。

Last edited by sakura_neko (April 25, 2024 09:44:47)

pupon
Scratcher
100+ posts

Scratchスクリプトクイズ

#2917
正解です。確かにそうすればブロック数を減らせますね…

僕の想定解はこれです。

追記
この問題からさらにブロックの種類を絞って、Brainf**kのインタプリタを作ってみました。

Last edited by pupon (April 25, 2024 12:12:55)

jjhs3213
Scratcher
29 posts

Scratchスクリプトクイズ

#2916
25ブロックもできました
luchs_II
Scratcher
9 posts

Scratchスクリプトクイズ


新たな問題として出題

#2916 にさらに制限を付けて、使えるリストは一つのみでお願いします。

※aとbは、0以上は難しそうだったので、0より大きい整数という条件でお願いします。
※簡単にするため、aとbの和は10000以下という条件でお願いします。

想定ブロック数は30ブロック以内です。超えても大丈夫です

追記)
使用できるのは出力用のリスト1つのみです。
計算結果は、出力用リストの末尾に入っていればOKです。(ほかの要素に何が入っていてもOK)
出力用リストは、1計算ごとにリセットしてもらって構いません。

Last edited by luchs_II (April 26, 2024 04:28:42)

sakura_neko
Scratcher
90 posts

Scratchスクリプトクイズ

#2920
27ブロックです。ただし、条件の「使えるリストは一つのみ」について、「出力用のリストは最後に計算結果を追加することだけが可能で、それ以外にリストを一つのみ使える」と解釈しました。
(出力用のリストしか使えない場合、そのリストに最初から上限ギリギリまで要素が入っていたとき(長さ199999など)にほぼ何も出来なくなってしまうため)

Powered by DjangoBB