Discuss Scratch

Caffeine3860
Scratcher
69 posts

Scratchスクリプトクイズ

#2599
「数字だけ変えて」です。わかりにくければすみません。
#2600
スクリプトは想定解です。理由も添えていただければ幸いです。

Last edited by Caffeine3860 (April 4, 2023 08:04:16)

Caffeine3860
Scratcher
69 posts

Scratchスクリプトクイズ

#2601
正解です。理由もその通りです。
abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2598
[3 v] を [1] にする
は意図的ですか。
xiangyeng
Scratcher
100+ posts

Scratchスクリプトクイズ

inoking wrote:

#2580:

xiangyeng wrote:


簡単とは私は思えません。

この正答は

が実行された時点で

が先にすべて実行されてから「繰り返す」の次に移ることを前提としており
実際そのように動作しますが
この動作は保証されていないと思います。


#2585
よくよく考えるとそうですね…。でも説明用にプロジェクトを作りました。これなら正しく動くと思います…。
https://scratch.mit.edu/projects/830726959
Caffeine3860
Scratcher
69 posts

Scratchスクリプトクイズ

#2604
すみません。
[3 v] を (1) ずつ変える
でした。
abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2606
いえいえ。先日私もやってしまったので。
abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2598では、緑の旗を押すと変数1, 2, 3, 4の値が等確率で1ずつ増えるようにすることが目的でしたが、変数ではなく、リストの1番目から4番目の値が等確率で1ずつ増えるようなプログラムを作ってください。
ただし、開始時点で既にリストの4つの要素は0で初期化されていることとします。使うブロックの種類の制限はありませんが、できる限り少ないブロック数で実現することとします。

Last edited by abee (April 4, 2023 09:03:53)

Caffeine3860
Scratcher
69 posts

Scratchスクリプトクイズ

#2608
⚑ がクリックされたとき
もし <((1) から (4) までの乱数) =[1]>なら
[list v]の(1) 番目を (((1 v) 番目( [list v] ) :: list)+ [1]) で置き換える::list


でなければ
もし <((1) から (3) までの乱数) =[1]> なら
[list v]の(2) 番目を (((2 v) 番目( [list v] ) :: list)+ [1]) で置き換える::list


でなければ
もし <((1) から (2) までの乱数) =[1]> なら
[list v]の(3) 番目を (((3 v) 番目( [list v] ) :: list)+ [1]) で置き換える::list


でなければ
[list v]の(4) 番目を (((4 v) 番目( [list v] ) :: list)+ [1]) で置き換える::list
end
end
end
これでどうですか。
追記:自分の問題に引っ張られました。

Last edited by Caffeine3860 (April 4, 2023 09:14:32)

Catapult-
Scratcher
100+ posts

Scratchスクリプトクイズ

[var v] を ((1) から (4) までの乱数) にする
(var) 番目( [list v] )を (((var) 番目( [list v] ) :: list) + (1)) で置き換える
7ブロックです。
inoking
Scratcher
1000+ posts

Scratchスクリプトクイズ

xiangyeng wrote:

よくよく考えるとそうですね…。でも説明用にプロジェクトを作りました。これなら正しく動くと思います…。
https://scratch.mit.edu/projects/830726959
<(クローンされた回数) = (クローンする回数)>まで待つ
なら確かに簡単なのですが。。
そこを聞くのが ねらい のクイズだったのですね。
xiangyeng
Scratcher
100+ posts

Scratchスクリプトクイズ

inoking wrote:

xiangyeng wrote:

よくよく考えるとそうですね…。でも説明用にプロジェクトを作りました。これなら正しく動くと思います…。
https://scratch.mit.edu/projects/830726959
なら確かに簡単なのですが。。
そこを聞くのが ねらい のクイズだったのですね。
ねらってませんが…?
abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2612
たぶんこれが最小だと思います。私も同じでした。

#2611
クイズではなく、実際の作品作りなら、#2612のように書くのが自然でしょうね。
inoking
Scratcher
1000+ posts

Scratchスクリプトクイズ

xiangyeng wrote:

inoking wrote:

なら確かに簡単なのですが。。
そこを聞くのが ねらい のクイズだったのですね。
ねらってませんが…?
では、何がねらい(クイズの観点/ポイント/ミソ)だったのですか?

Last edited by inoking (April 4, 2023 11:41:05)

pupon
Scratcher
100+ posts

Scratchスクリプトクイズ

数値が入った変数
(min)
(max)
(n)
があります。
この時、
変数「n」を「min」から「max」までの範囲に入るように修正するプログラムを作ってください。

(例)
minが1 maxが10 nが20の時は、nが1~10までの範囲からはみ出ないように調整するので、nが10になります。
minが5 maxが8 nが3の時は、nが5になります。

難易度が二段階あります。

<Easy>
何のブロックでも使っていいです。

<Hard>
演算ブロック、変数ブロックしか使えません。

正解者が二人以上になったら想定解を出そうと思います

Last edited by pupon (April 4, 2023 11:27:42)

xiangyeng
Scratcher
100+ posts

Scratchスクリプトクイズ

inoking wrote:

xiangyeng wrote:

inoking wrote:



では、何がねらい(クイズの観点/ポイント/ミソ)だったのですか?
特に何もねらっていません
inoking
Scratcher
1000+ posts

Scratchスクリプトクイズ

xiangyeng wrote:

特に何もねらっていません
それはおかしいです。
学校のテストでもそうですが
設問には、どういうことについて考えてもらいたいかなど、何らかの思いがあります。

どうも会話になっていないようなので、もうかまいません。。
hirayuu1414
Scratcher
500+ posts

Scratchスクリプトクイズ

((θ)の[sin v]::operators)
を、このブロックを使わずに再現してください。
ただし、再現の方法は
定義 sin(θ)
...
[sinθ v]を[]にする//変数sinθに答えが入るように
で統一するものとします。
実行前と後でステージの状況が変化しても構わないです。

注意…
(()の[ v]::operators)
自体は使用可能です。

追記:yukkuさんの指摘を受け、誤差0.0000001未満で算出できれば正解とします。
また、入力は指数表記やinfinity、NaNではないものとし、絶対値は10^10以下とします。

Last edited by hirayuu1414 (April 5, 2023 10:50:08)

sousi02
Scratcher
100+ posts

Scratchスクリプトクイズ

#2618
定義 sin (θ)
[sinθ v] を ([cos v] \( ((θ) - (90)) \)) にする
でどうですか?
hirayuu1414
Scratcher
500+ posts

Scratchスクリプトクイズ

正解です。想定解の一つもそれです。
abee
Scratcher
1000+ posts

Scratchスクリプトクイズ

#2618
Scratchっぽい書き方だとこんな感じでしょうか。
定義 sin(θ)
x座標を (0) 、y座標を (0) にする
(θ) 度に向ける
(100) 歩動かす
[sinθ v] を ((x座標) / (100)) にする

Last edited by abee (April 5, 2023 10:56:03)

Powered by DjangoBB