Discuss Scratch

tuneninemuihito
Scratcher
56 posts

Scratchスクリプトクイズ

出題
リストaの中身を、空のリストbに逆順にコピーするスクリプトを作って下さい。
但し、変数と定義は使用出来ません。
リストa,bの中身は変更,追加,削除しても良いですが、最終的にリストaは元の内容に,リストbはaの逆順の内容のみにして下さい。

Last edited by tuneninemuihito (Sept. 21, 2025 19:46:34)

ef_cudaran
Scratcher
92 posts

Scratchスクリプトクイズ

([a v]の長さ::list) 回繰り返す
([a v]の(([a v]の長さ::list)-([b v]の長さ::list))番目)を[b v]に追加する
end
これでどうですか。
tuneninemuihito
Scratcher
56 posts

Scratchスクリプトクイズ

ef_cudaran wrote:

([a v]の長さ::list) 回繰り返す
([a v]の(([a v]の長さ::list)-([b v]の長さ::list))番目)を[b v]に追加する
end
これでどうですか。
正解!
想定よりもすごくシンプルでしかも早い!(回答が)
ものすごくすごいと思います!!
あなた天才ですか?
tuneninemuihito
Scratcher
56 posts

Scratchスクリプトクイズ

問題。
-240≤x≤240,-180≤y≤180の範囲内にある、スプライトaの座標をスプライトb内にプログラムを組んで求めて下さい。
但し、
([スプライトa v]の[… v])
[スプライトa v]へ行く

()秒で[スプライトa v]へ行く

(スプライトa v)へ向ける
は使用できません。
スプライトaにプログラムを組む事、他のスプライトなどにプログラムを組むことはできません。
スプライトaのコスチュームは空です。
実行終了時にスプライトbの位置がスプライトaに対して距離2未満として下さい。
有限時間内に処理を終わるようにして、できるだけ短いプログラムにして下さい。
めちゃ簡単

Last edited by tuneninemuihito (Sept. 24, 2025 08:30:19)

suer-
Scratcher
1 post

Scratchスクリプトクイズ

定義ブロックを使えば
[ どこか]へ行く
でいけますよ
haruto-smock
Scratcher
67 posts

Scratchスクリプトクイズ

#3586

go to x: (-240) y: (180)
repeat until <(distance to [スプライトa v]) = [0]>
change y by (-1)
if <(y position) = [-180]> then
set y to (180)
change x by (1)
end
end

少し強引な方法かもですが…

Last edited by haruto-smock (Sept. 24, 2025 09:44:03)

yuito2013
Scratcher
100+ posts

Scratchスクリプトクイズ

これってbコスチュームってなんですか?⬅️あんま気にしないで
[... v]を受け取ったとき//スタート
x座標を(-240)、y座標を(180)にする
大きさを(0)にする
(90)回繰り返す
(120)回繰り返す
もし< [スプライトa v]に触れた>なら
[終了する v]を送る
[このスプリクト v]を止める::control cap
end
x座標を(4)ずつ変える
end
x座標を(-240)にする
y座標を(-4)ずつ変える
end
pura314
Scratcher
100+ posts

Scratchスクリプトクイズ

自分なりに解いてみました。(上の上の解法だとなんか強引で面白くなかったような気もしたため。)
数学をバンバン使ったので残念ながら途中過程は省略しましたが、展開・三平方の定理などを使用しました。
https://scratch.mit.edu/projects/1220770676/editor/
tuneninemuihito
Scratcher
56 posts

Scratchスクリプトクイズ

#3588
正解です!
想定解とほぼ同じ内容を短時間で出せるのはすごいなって思います!
#3589
スプライトaのコスチュームが空のため触れたブロックは使用できません。
#3590
正解です!
発想が凄く素晴らしいと思います!
もう少しブロック数を減らせるとより良いかなと思います
e1bfd762321e409cee4a
New Scratcher
28 posts

Scratchスクリプトクイズ

出題します。
角度を-180~180の形式から0~360の形式に変えてください。
例えば、90なら90と返し、-90なら270と返すような感じです。
使用禁止ブロックは真偽値/値ブロック以外の全てです。
想定解は3blockです。
ef_cudaran
Scratcher
92 posts

Scratchスクリプトクイズ

((角度) を (360) で割った余り)
どうですか。
e1bfd762321e409cee4a
New Scratcher
28 posts

Scratchスクリプトクイズ

正解です。想定解はこれでした。
回答されるの早すぎて泣きそう
tuneninemuihito
Scratcher
56 posts

Scratchスクリプトクイズ

問題です
累乗を計算してください。
底と指数はそれぞれ変数aと変数xで渡されます。
結果は演算の形にしてください。
指数の範囲は任意の整数です。
スクリプトを組んでも構いません。(一度変数に入れてそれを結果として使う等)

使用ブロックに制限はありません。
オーバーフロー,アンダーフロー,浮動小数店による誤差などは考慮しなくて構いません。


追記:
#20にほぼ同じのが…

Last edited by tuneninemuihito (Oct. 19, 2025 09:49:31)

nposss
Scratcher
100+ posts

Scratchスクリプトクイズ

#3595
(( ((a) の [ln v]::operators) * (x) ) の [e^ v]::operators)
でどうでしょう

Last edited by nposss (Oct. 19, 2025 09:29:55)

tuneninemuihito
Scratcher
56 posts

Scratchスクリプトクイズ

#3596
正解です
早すぎだって…
ie_523
Scratcher
100+ posts

Scratchスクリプトクイズ

回転方法を[左右のみ v]にする
をした状態での
()度に向ける
を回転方法が「自由に回転」の状態で代用してください。
想定は6ブロックです。
ルール
・一行で表してください。
・向きに180以上の値を入れられた時でも、負の値を入れられても正常に動作するようにしてください。
・当たり前ですがデフォルトで「左右のみ」になっているのはだめです。
以上です!

すぐに回答されないことを願う

#3603より修正します。
正確には90度と-90度を入れ替えるということです。

Last edited by ie_523 (Oct. 24, 2025 08:59:33)

Poteto143
Scratcher
1000+ posts

Scratchスクリプトクイズ

↑に回答します。https://scratch.mit.edu/projects/1230820492/
たまたまちょうどトピックを開いてただけなんですッ!!
nposss
Scratcher
100+ posts

Scratchスクリプトクイズ

#3598
((90) * ((向き)/((向き)の[絶対値 v])::operators))度に向ける::motion
でどうでしょう

P.S.
不備があったため追記
このプログラムは少なくともどこかへ指定の角度分向かせると内部処理によって座標が-180 ~ 180に変換されていることを前提に書いているため
直接向きを入れると少なくとも -180 ~ 180の範囲外では正常に動作しません

Last edited by nposss (Oct. 19, 2025 11:32:01)

aalaalscratcher
Scratcher
100+ posts

Scratchスクリプトクイズ

#3598
((<((向き)を(360)で割った余り)>(180)>*(180))+(90))度に向ける
すごく「正規法じゃない感」がある回答
6ブロックだが想定ではなさそう
なお、左向きのねこが逆さまになります
スクリプトクイズデビューです

Last edited by aalaalscratcher (Oct. 19, 2025 11:34:48)

ie_523
Scratcher
100+ posts

Scratchスクリプトクイズ

一応回答します。

Poteto143 wrote:

↑に回答します。https://scratch.mit.edu/projects/1230820492/
たまたまちょうどトピックを開いてただけなんですッ!!
できれば、コスチュームはあまりしないでほしいです。猫がさかさまに向いてもいいので。(ちなみに正確に言うと90度と-90度に向けるという感じです。)

nposss wrote:

#3598
((90) * ((向き)/((向き)の[絶対値 v])::operators))度に向ける::motion
でどうでしょう
はい。270とかは無理なので不正解です。

aalaalscratcher wrote:

#3598
((<((向き)を(360)で割った余り)>(180)>*(180))+(90))度に向ける
すごく「正規法じゃない感」がある回答
6ブロックだが想定ではなさそう
なお、左向きのねこが逆さまになります
スクリプトクイズデビューです
想定ではないですが正解です。

Powered by DjangoBB