Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
177 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97154
次のページ(過去)
返信[10]
親投稿
おちゃめ ochame_nako
扱うのが整数値で3桁ごとに「,」を入れたいというのであればその数値の下位3桁を取り出す→取り出した後の値が0ならば取り出した数字を文字列化して先頭に加えて終了、そうでないならば数値を1000で割り整数化し、取り出した3桁の数値を3桁で文字列化して「,」を頭にけるという処理を繰り返すのが2つの問題点を同時に解決できる手段であり分かりやすさも兼ねそろえた解決方法だと私は思います。 これならば9007199254740992までの数値は正しく表示可能です。(それを超えても表示が可能になるけど正確さは保証されない) 迷ったときは最もシンプルな方法を採る(LOGで誤差が出るならばLOGを使わない)のが間違いが起きにくいです。 負数の場合はあらかじめ正数にしておいて後からマイナスの符号を付けてください。 ちなみに数値を3桁で文字列化するにはFORMAT$("%03D",A)で可能です。
1そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
このPSTR$のリストを見てもらえば分かるのですが、桁数を求めるのにLOGを使わず文字列操作のみで行っています。 簡単に説明するとこれは小数点がある場所を基準にしてそこから桁数を導くという方法です。 PSTR$のような実数型でも正しく表示するのが目的ならばこれがベストですが、これはみむさんが求めているものに対してはベストとは言い難いです。
1そうだね
プレイ済み
返信[8]
親投稿
おちゃめ ochame_nako
STR$の丸め処理に関しては整数型変数もしくは整数の定数においては整数型の上限までは丸め処理を行わずに全桁表示されます。 しかし、実数型変数(デフォルトの変数)や小数点が付いている定数、整数型の範囲を超えた定数に関しては自動的に6桁に丸められます。 これを回避するにはFORMAT$を使えばいいのですが、FORMAT$にも問題点がありプチコン3号の内部の数値から誤差ゼロで文字列化する方法として用意したのがPSTR$関数です。 https://miiverse.nintendo.net/posts/AYIHAAAEAABEVRTp-ZVMIg PSTR$(LOG(1000,10))とすれば表示で丸められる前の値がどのような値になっているかが分かります。
0そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
といっても、PR関数の原理そのものは単純でMIKIさんが書かれている「欲しい精度で丸める」を実行しているだけです。 プチコン3号では絶対値1E8未満の値の時は小数第9位を四捨五入された値になっているのでPR関数ではそうなるように丸めています したがって、使う回数が1回だけならばわざわざ関数化しなくても変数Aに演算結果が入っている場合はROUND(A*1E8)/1E8とするだけで表示された数値通りの処理を行うことができます。 最適解というのはやっている処理や求めるものによって変わります。 MIKIさんが書かれている方法も私が書いている方法も解決方法の1つにすぎません。
1そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
誤差が発生するのは仕様であるため仕方がないのですが、これは誤動作が起きないように対策をすれば良いので難しくありません。 この対策には様々な方法があり、みむさんが書いておられるLOG(V+0.1,10)というのもVが整数限定ならば問題ないと思います。 ただし、プチコン3号の場合は数値を表示する際にはご丁寧に丸めてくれるためその問題に気づかないことの方も多いでしょう。 その問題の解決方法の1つとして「丸められた表示通りに処理をしてしまえば丸く収まる」ということで以前PR関数を作りました。 https://miiverse.nintendo.net/posts/AYIHAAAEAADaVHh0IAWNUQ
1そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
プチコン3号は内部ではすべて2進数で処理されている関係上実数型による計算は常に誤差が発生する可能性があります。 例えば0.1が2進数では循環小数になる関係で「0.1を100回足す」という単純な動作でさえ10ちょうどにはならないのです 詳しくはこちらのトピックスに書いていますが、より詳しく知りたいならば「プチコン3号 実数型 誤差」などでネット検索してください。 https://miiverse.nintendo.net/posts/AYIHAAAEAAASVZKdAWi67g
1そうだね
プレイ済み
返信[22]
親投稿
おちゃめ ochame_nako
それでいいと思いますよ タッチしている場所に点を打つことができるようになったら次は点ではなく線にするとか、表示する色を変えられるようにするとか様々な発展方法があるので自分がやりたい順番に頑張ってください。 ある程度作れるようになったらSMILE TOOLのお絵かき機能や他の方が作っているお絵かきソフトにはない自分だけのお絵かきソフトを作るというのにチャレンジすると楽しいですよ。 他の方が作ったプログラムでどのような処理をしているのかを見てそれを元に考えるのも良い勉強になります。
2そうだね
プレイ済み
返信[14]
親投稿
おちゃめ ochame_nako
何を持って「お絵かきソフト」と呼べるかというものが明確なものがないため面白いんです。 お最小レベルだとループとタッチ命令とGPSETのみで作れるから初心者でも気軽に作れるし徐々に様々な機能を追加したりしてステップアップしていけば中級者以上でも頭を悩ますレベルのものになります。 点を打つだけだったのが線が引けるようにする 任意の太さの線が引けるようにする 半透明ブラシ、レイヤー、アンドゥなどを追加する といった目標が個人の知識や技量に応じて選択できるし、完成した作品は実用ツールとして使うこともできます。 「作ったけどあまり役に立たない」よりも「作ったものが実際に役立つ」という方が作る意欲も沸くでしょう。
3そうだね
プレイ済み
返信[24]
親投稿
おちゃめ ochame_nako
Lさんへ 私のソフトを使った大会を開催されるのであれば優勝商品は用意します。 この大会と同じく「私がプチコン3号で描いたキャラ絵」を差し上げます。 好きなキャラ(女性キャラ1名限定)、好きなシチュエーションがあればできるだけそれに沿うように描きます。 ただし、Miiverseの規約違反になる絵は描けません。
0そうだね
プレイ済み
返信[20]
親投稿
おちゃめ ochame_nako
本大会の締め切りを1月3日にしたのは大喜利の締め切りと被ってしまいあまり良くなかったかもしれないですね。 ただし、「書き初め」の文字を1回書くだけならば1分もかからないので10回書き直しても10分でできます。 大喜利用の作品を作っている合間にでも参加してもらえたらいいかなという感じでこの締め切りを設定しました。 Lさんは日本語が堪能な方なので下手な英語よりも日本語の方がニュアンスが伝わりやすいと考えたため日本語で書かせていただきました。
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
QSPで完成度を高めようとすると作った後で仕様変更を行うことができない(一からプログラムを作り直す必要がある)ため事前に明確な仕様を決めておく必要がありますが、制限のない普通のプログラムならばある程度は柔軟に対応できます。 初心者が陥りやすいのは「最初に考えた仕様書通り作って完成させなければならない」と考えてしまうことです。 最初に考えた仕様書の段階で間違っているというのは良くある話です。 「仕様書通り作ったのにちゃんと動作しない」という場合はその仕様書を疑う必要があるでしょう。 それだけではなくお絵かきソフトなどのツールを作る場合は作った後で機能の追加をしたくなることも多いと思います。 そういう時のために変数名やラベル名や自作関数名などに自分の中での法則性を持たせておくと後から自分が見ても分かりやすいため便利です。
3そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
方法論なんて人それぞれでいいので自分が作りやすいやり方でいいのですが、最初にどんな処理が必要かを考えておくのは重要でしょうね。 特に初心者の人は事前に考えておかないとプログラム自体が困難になるため途中で投げ出すという可能性が高くなります。 私はプチコン3号では最近QSPしか作ってないので完成度の高いQSPの作り方について簡単に書いておきます。 完成度の高いQSPの作り方 (1)十分なリスト短縮を行い可能な限り行末が空かないようにする (2)優先度が高いものは確実に実装しリストの空きを有効活用し無駄がないようにする QSPは(1)が重要というイメージがあるかもしれないですが、実は完成度を高めるためには(2)がすごく重要なんです。 要するに効果的な取捨選択を行うということです。
6そうだね
プレイ済み
返信[18]
親投稿
おちゃめ ochame_nako
これにて本大会の参加を締め切らせてもらいます。 このトピックスを見られた方でお気に入り作品があれば「そうだね」を押してください。 結果は1月8日に発表します。
1そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
以前、私が計測した時には1秒≒VSYNC 59.835回でした。(3回計測してすべて値が一致) 個体差、計測誤差、環境による違いがあるため小数第3位の信頼性は低いので59.83~59.84程度という感じでしょうね。 したがって、秒単位でしか表示しない時計だからメインループにVSYNC 60を入れると正しく表示されない場合が出てきます。
0そうだね
プレイ済み
返信[27]
親投稿
おちゃめ ochame_nako
1日遅れですが年賀絵を描きました。オリキャラのロリエちゃんです。 絵の部分は自作の「SIMPLE PAINT QSP」、「謹賀新年」文字の部分は「簡易毛筆QSP」でかきました。 1月1日~3日の間、「プチコン3号 書き初め大会」を開催しているので良かったらご参加ください。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHkwrP8Gxg
1そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
冬コミで「QSP完全マニュアルPART2」を頒布したのに伴い夏コミで頒布した前作の「QSP完全マニュアルPART1」は絶版扱いとし自サイトにて無償公開を開始しました。 完成度の高いQSPの作り方を知りたい人はぜひご覧になってください。 PART2は完売したものの当面は絶版化しませんので冬コミで手に入れられた方は安心してください。
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
入り抜きが表現がなかなかいい感じです。 私の簡易毛筆QSPはPETIT PAINT QSPをベースにした毛筆風のお絵かきソフトなのでセーブやロード機能や筆のサイズ変更や消しゴム(ホワイト)機能がある反面で毛筆の表現に使える文字数の関係であれが限界でした。 こちらはまだ空きがあるので機能は増やせそうですね。
1そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
大事なルールが抜けていました。 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ テーマ 書く文字は自由ですが、プチコン3号に関係ある言葉に限らせてもらいます。 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ ショウタイムさんへ それで何ら問題ないですよ! 字の上手い下手を競う大会ではありません。
0そうだね
プレイ済み
返信[4]
親投稿
おちゃめ ochame_nako
ルールに記述するのを忘れましたが描いた文字は公開キーでの公開ではなく普通に画面写真として画像の状態で公開してください。
0そうだね
プレイ済み
返信[3]
親投稿
おちゃめ ochame_nako
「簡易毛筆QSP」のプログラムリストはこちらです。公開キーは【 X3E3Q43M 】 詳しくは下記のURLを参照してください。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHkm7urBQQ また、「SIMPLE PAINT QSP」も入り抜きに対応した擬似筆圧機能を搭載しています。擬似筆圧は簡易毛筆QSPとは全く異なりますが、カラー対応です。簡易毛筆QSPではなくこちらのソフトを使用しての参加もOKです。 公開キーは【 N32EX45D 】 詳しくは下記のURLを参照してください。 https://miiverse.nintendo.net/posts/AYMHAAACAAADVHkuvFo95w それでは多くの皆さんのご参加をお待ちしています。
0そうだね
プレイ済み