コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
GizmoLab 関連
オンラインショップ
CAD&CGブログ
YouTube
GitHub
CAD 系
GizmoTools
AutoLISP
Visual LISP
BricsCADのLISP
GzLib
DCL
OpenDCL
DWG
DXF
CADのコマンド一覧
システム変数
図形の種類
Ver別サポートAPI
CAD用語集
メモ
newLISP
CommonLISP
Script-Fu
Inno setup
JavaScript
ANDROID
Windowsでのファイルハッシュ確認
Prolog
Python
Clojure
Electron
フォント
数学メモ
イメージサイズとメモリ量
blender
Processwire
Win10,11メモ
IIJmio
mediawiki資料
ヘルプ
検索
検索
表示
ログイン
個人用ツール
ログイン
Fizzbuzzのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Fizzbuzz
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
fizzbuzz 問題を AutoLISP でやってみる fizzbuzz 問題 * 1から順に1づつ増やした数字を表示する * 3で割り切れる時は "fizz" を表示 * 5で割り切れる時は "buzz" を表示 * 3と5の両方で割り切れる時は "fizz buzz" を表示 * (但し、プログラムの中に剰余関数を使わない事) 最後の剰余関数使わない事っていうのはあったりなかったりするみたいです。 で、使わない方法で素直めに書いてみたのが下のやつ。 <pre class="brush:autolisp;"> (defun fizzbuzz (/ ct ct3 ct5) (setq ct 1 ct3 3 ct5 5) (while (princ (strcat "\n" (cond ((= ct ct3 ct5) (progn (setq ct3 (+ 3 ct3) ct5 (+ 5 ct5)) '"fizz buzz")) ((= ct ct3) (progn (setq ct3 (+ 3 ct3)) '"fizz")) ((= ct ct5) (progn (setq ct5 (+ 5 ct5)) '"buzz")) (T (itoa ct)) ))) (setq ct (1+ ct))) ) ; カウントし続けて止まらないので esc で止めてね </pre> * xで割り切れる = xの倍数だよね? * xとxで割り切れる+カウントアップ = 同じ数字だよね? ってことで足し算使いましたよw [[Category:AutoLISP]]
Fizzbuzz
に戻る。
検索
検索
Fizzbuzzのソースを表示
話題を追加