提供: Japanese Scratch-Wiki

1行目: 1行目:
 
{{ひらがなヘッダ}}{{PAGENAME}}の一覧です。
 
{{ひらがなヘッダ}}{{PAGENAME}}の一覧です。
  
他の代用ブロックについては、[[代用ブロック一覧]]からお選びください。
+
他の代用ブロックについては、[[代用ブロック一覧]]から選んでください。
 
{| border="1" style="text-align:center">
 
{| border="1" style="text-align:center">
 
|-
 
|-
194行目: 194行目:
 
|<scratchblocks>
 
|<scratchblocks>
 
もし <. . .::gray> なら
 
もし <. . .::gray> なら
もし <. . .::gray> なら
+
もし <. . .::gray> なら{
 
. . .
 
. . .
 +
}
 
end
 
end
 
end
 
end
417行目: 418行目:
 
[出力 v] を (([sin v] \( (入力) \)) / ([cos v] \( (入力) \))) にする
 
[出力 v] を (([sin v] \( (入力) \)) / ([cos v] \( (入力) \))) にする
 
</scratchblocks>
 
</scratchblocks>
 +
|-
 +
||[[()_に_()_が含まれる_(演算ブロック)|<sb><() に () が含まれる::operators></sb>]]
 +
|[[文字列に指定文字列が含まれているか調べる]]を参照
 
|}
 
|}
  
 
[[Category:代用ブロック]]
 
[[Category:代用ブロック]]

2019年4月13日 (土) 10:57時点における版

このきじは ひらがなのページがありません。ごめんなさい。編集者向け:作成する
演算ブロックの代用ブロックの一覧です。

他の代用ブロックについては、代用ブロック一覧から選んでください。

ブロック 回避策
((a) + (b))
((a) - ((b) * (-1)))

または

((a) - ((0) - (b)))

または

[答え v] を (a) にする
[答え v] を (b) ずつ変える
((a) - (b))
((a) + ((b) * (-1)))

または

((a) + ((b) / (-1)))

または

((a) + ([-] と (b)))

または

((a) + ((0) - (b)))

または

[答え v] を () にする
[答え v] を ((-1) * ()) ずつ変える

3番目の回避策はbの値が正の場合のみ機能します。たとえば、 「--3」はScratchによって0と評価されます。

(() * ())
(すべて v) 番目を [num1 numbers v] から削除する //セットアップ
(すべて v) 番目を [num2 numbers v] から削除する
(すべて v) 番目を [積数字 v] から削除する
[積 v] を [0] にする
[dec pos 1 v] を [0] にする
[dec pos 2 v] を [0] にする
もし <(答え) < [0]> なら
	[カウント v] を [1] にする
	[no 1 negative v] を [y] にする
でなければ
	[カウント v] を [0] にする
	[no 1 negative v] を [n] にする
end
([] の長さ) 回繰り返す
	[カウント v] を (1) ずつ変える
	もし <<((カウント) 番目\( [] \)の文字) = [.]> ではない> なら
		((カウント) 番目\( [] \)の文字) を [num1 numbers v] に追加する
	でなければ
		[dec pos 1 v] を (((答え) - (カウント)) の長さ) にする
	end
end
もし <[] < [0]> なら
	[カウント v] を [1] にする
	[no 2 negative v] を [y] にする
でなければ
	[カウント v] を [0] にする
	[no 2 negative v] を [n] にする
end
([] の長さ) 回繰り返す
	[カウント v] を (1) ずつ変える
	もし <<((カウント) 番目\( [] \)の文字) = [.]> ではない> なら
		((カウント) 番目\( [] \)の文字) を [num2 numbers v] に追加する
	でなければ
		[dec pos 2 v] を (((答え) - (カウント)) の長さ) にする
	end
end
[num1 v] を (num1 numbers) にする
[num2 v] を (num2 numbers) にする
(num1) 回繰り返す //スタート
	[積 v] を (num2) ずつ変える
end
[小数点位置 v] を ((dec pos 1) + (dec pos 2)) にする
[カウント v] を [0] にする
((積) の長さ) 回繰り返す
	[カウント v] を (1) ずつ変える
	((カウント) 番目\( (積) \)の文字) を [積数字 v] に追加する
end
もし <<(小数点位置) = [0]> ではない> なら
	[.] を (([積数字 v] の長さ) - ((小数点位置) - (1))) 番目に挿入する( [積数字 v] )
end
もし <<<(no 1 negative) = [y]> または <(no 2 negative) = [y]>> かつ <<<(no 1 negative) = [y]> かつ <(no 2 negative) = [y]>> ではない>> なら
	[-] を (1 v) 番目に挿入する( [積数字 v] )
end
[積 v] を (積数字) にする

または

((a) / ((1) / (b))) //"a"と"b"の積

または

もし <(a) < [0]> なら
([絶対値 v] \( (a) \) ::operators) 回繰り返す
	[積 v] を ((0) - (b)) ずつ変える
end
でなければ
	[積 v] を [0] にする
	(a) 回繰り返す
		[積 v] を (b) ずつ変える
	end
end
(() / ())
(すべて v) 番目を [被除数数字 v] から削除する
(すべて v) 番目を [商 v] から削除する
[被除数 v] を [] にする
[除数 v] を ([絶対値 v] \( () \) ::operators) にする
[no2 neg v] を <[] < [0] > にする
もし <(被除数) < [0] > なら
	[カウント v] を [1] にする
でなければ
	[カウント v] を [0] にする
end
[no1 neg v] を <(被除数) < [0] > にする
((被除数) の長さ) 回繰り返す
	[カウント v] を (1) ずつ変える
	もし <((カウント) 番目\((被除数)\)の文字) = [.]> なら
		[被除数 dec v] を (((被除数) - (カウント)) の長さ) にする
	でなければ
		((カウント) 番目\((被除数)\)の文字) を [被除数数字 v] に追加する
	end
end
((10) - (被除数 dec)) 回繰り返す
	[0] を [被除数数字 v] に追加する
end
もし <((除数) を四捨五入) = (除数)> なら
	[dec pos v] を [0] にする
でなければ
	[カウント v] を [0] にする
	<((カウント) 番目\((被除数)\)の文字) = [.]> まで繰り返す
		[カウント v] を (1) ずつ変える
	end
	[dec pos v] を (((除数) - (カウント)) の長さ) にする
	[被除数 v] を ((被除数) * ([10 ^ v]\((dec pos)\))) にする
	[除数 v] を (((除数) * ([10 ^ v]\((dec pos)\))) を四捨五入) にする
end
[カウント v] を [0] にする
[現在処理中 v] を [] にする //これはスペースではなく、空です。
([被除数数字 v] の長さ) 回繰り返す
	[カウント v] を (1) ずつ変える
	[現在処理中 v] を ((現在処理中) と ((カウント) 番目( [被除数数字 v] ))) にする
	[回 v] を [9] にする
	<((除数) * (回)) < ((現在処理中) + (1))> まで繰り返す
		[回 v] を (-1) ずつ変える
	(回) を [商 v] に追加する
	[現在処理中 v] を ((現在処理中) - ((除数) * (回))) にする
	end
	[.] を (([商 v] の長さ) - (8)) 番目に挿入する( [商 v] )
	<<<((最後 v) 番目(  [商 v] )) = [.]> または <<<((最後 v) 番目( [商 v] )) = [0]> かつ <((商) を四捨五入) = (商)>> かつ <[商 v] に [.] が含まれる>>> ではない> まで繰り返す
		(最後 v) 番目を [商 v] から削除する
		<<<((1 v) 番目( [商 v] )) = [0]> ではない> または <((2 v) 番目( [商 v] )) = [.]>> まで繰り返す
			(1 v) 番目を [商 v] から削除する
		end
	end
end

または

もし <(b) < [0]> なら
  [商 v] を (((a) * ([e ^ v]\(((-1) * ([ln v]\(((-1) * (b))\)))\))) * (-1)) にする
でなければ
  [商 v] を ((a) * ([e ^ v]\(((-1) * ([ln v]\((b)\)))\))) にする
end
((a) < (b))
<<<(a) > (b)> または <(a) = (b)>> ではない>
((a) = (b))
<<<(a) < (b)> または <(a) > (b)>> ではない>

または

(すべて v) 番目を [リスト v] から削除する //大文字と小文字を区別
(a) を [リスト v] に追加する
もし <[リスト v] に (b) が含まれる> なら
	...
end
((a) > (b))
<<<(a) < (b)> または <(a) = (b)>> ではない>
<<. . .::gray> かつ <. . .::gray>>
もし <. . .::gray> なら
もし <. . .::gray> なら{
. . .
}
end
end

または

<<<<. . .::gray> ではない> または <<. . .::gray> ではない>> ではない>

または

[var v] を [0] にする
<(var) = [1]> まで繰り返す
. . . //ブロックは、c型ブロックの中に入れてください。
もし <> なら
[var v] を [1] にする
end //this works for all current boolean-accepting block

または

もし <. . .::gray> なら
もし <. . .::gray> なら
[return v] を [true] にする
でなければ
[return v] を [false] にする
end
でなければ
[return v] を [false] にする
<<. . .::gray> または <. . .::gray>>
もし <. . .::gray> なら
. . .
でなければ
もし <. . .::grayなら
. . .
end
end

または

<<<<. . .::gray> ではない> かつ <<. . .::gray> ではない>> ではない>

または

もし <. . .::gray> なら
[return v] を [true] にする
でなければ
もし <. . .::gray> なら
[return v] を [true] にする
でなければ
[return v] を [false] にする
<<. . .::gray> ではない>
<(. . .) = [false]>

または

もし <. . .::gray> なら
//(ここにブロックを入れないでください。)
でなければ
. . .
((. . .) と (. . .)
[カウント v] を [0] にする
[final v] を [] にする
((a) の長さ) 回繰り返す // aは最初の入力です
[カウント v] を (1) ずつ変える
((カウント) 番目\( (a) \)の文字)を[final v]に追加する
end
[カウント v] を (0) にする
((b) の長さ) 回繰り返す // bは2番目の入力です
[カウント v] を (1) ずつ変える
((カウント) 番目\( (b) \)の文字) を [final v] に追加する
end
[final v] を (final)  にする //これが最終的な文字列です

または

//これは両方が整数でbが正の場合にのみ動作します。
[return v] を [] にする
([] の長さ) 回繰り返す
	[return v] を ((return) * (10)) にする
end
[return v] を () ずつ変える
((1) 番目\( [] \)の文字)
//Only works for whole numbers and the letter you're looking for must be 1.
もし <[] > [0]> なら
	[return v] を [] にする
	((() - (1)) の長さ) 回繰り返す
		[return v] を ([切り下げ v] \( ((return) / (10)) \) ::operators) にする
	end
でなければ
	[return v] を [-] にする
end
//
[] の長さ
[return v] を [1] にする
<(((return) + (1)) 番目\( [] \)の文字) = []> まで繰り返す
[return v] を (1) ずつ変える
end
(() を () で割った余り)
もし <(((a) / (b)) を四捨五入) > ((a) / (b))> なら
	[余り v] を ((a) - (((((a) / (b)) - (0.5))を四捨五入) * (b))) にする
でなければ
	[余り v] を ((a) - ((((a) / (b)) を四捨五入) * (b))) にする
end
(() を四捨五入)
[report v] を [] にする
[カウント v] を [1] にする
<<((カウント) 番目\( (num) \)の文字) = [.]> または <(カウント) = ((num) の長さ)>> まで繰り返す
	[report v] を ((report) と ((カウント) 番目\( (num) \)の文字)) にする
	[カウント v] を (1) ずつ変える
end
もし <<((カウント)番目\( (num) \)の文字) = [.]> かつ <(((カウント) + (1)) 番目\( (num) \)の文字) > [4]>> なら
	[report v] を (1) ずつ変える
end

または

[return v] を [0] にする
[b v] を [] にする
<([絶対値 v] \( (b) \) ::operators)<[1]>まで繰り返す{
	もし <[] < [0]> なら
		[return v] を (1) ずつ変える
		[b v] を (-1) ずつ変える
	でなければ
		[return v] を (-1) ずつ変える
		[b v] を (1) ずつ変える
}::control 

または

定義 (#) を四捨五入
[カウント v] を [1] にする
<((カウント) 番目\( (#) \)の文字) = [.] > まで繰り返す
	[カウント v] を[1] ずつ変える
end
[カウント v] を [1] ずつ変える
もし <((カウント) 番目\( (#) \)の文字) = [5]> なら
	[round v] を ([切り上げ v] \( (#) \) ::operators) にする
でなければ
	もし <((カウント) 番目\( (#) \)の文字) > [5]> なら
		[round v] を ([切り上げ v] \( (#) \) ::operators) にする
	でなければ
		もし <((カウント) 番目\( (#) \)の文字) < [5]> なら
			[round v] を ([切り下げ v] \( (#) \) ::operators) にする
		end
	end
end
([10 ^ v] \( () \) )

絶対値:

[出力 v] を (入力) にする
もし<(出力) < [0]> なら
	[出力 v] を ((-1) * (出力)) にする
end

または

[出力 v] を (([平方根 v] \( ((入力) * (入力)) \) ::operators) + (0)) にする

平方根:

[出力 v] を (入力) にする
<(出力) = (入力)> まで繰り返す
	[出力 v] を ((((出力) * (出力)) + (入力)) / ((2) * (出力))) にする
end

または

[出力 v] を ([e ^ v] \( ((0.5) * ([ln v] \( (入力) \))) \)) にする

ln (自然対数):

[出力 v] を (([log v] \( (入力) \)) / ([log v] \( ([e ^ v] \( (1) \)) \))) にする

e ^:

[出力 v] を ([10 ^ v] \( ((入力) * (2.718281828459)) \)) にする

log (base 10):

[出力 v] を (([ln v] \( (入力) \)) / ([ln v] \( (10) \))) にする

10 ^:

[出力 v] を ([e ^ v] \( ((入力) * ([ln v] \( (10) \))) \)) にする

切り下げ:

[出力 v] を (((入力) - (.5)) を四捨五入) にする

ceil:

[出力 v] を (((入力) + (.49999999)) を四捨五入) にする

sin:

[出力 v] を ([cos v]  \( ((90) - (入力)) \)) にする

cos:

[出力 v] を ([sin v]  \( ((90) - (入力)) \)) にする

tan:

[出力 v] を (([sin v] \( (入力) \)) / ([cos v] \( (入力) \))) にする
<() に () が含まれる::operators> 文字列に指定文字列が含まれているか調べるを参照