タグ

Cに関するdenkenのブックマーク (11)

  • UNXIのncursesでCUIゲームプログラミング - nokunoの日記

    ふと思い立ったので(笑)、CUIでのゲームの作り方を調べてみました。UNIXだとncurses/cursesを使えば、ある程度のアクション性のあるゲームはできます。ncursesCUIにおいて,スクリーンや,キー入力,カーソルなどを管理するライブラリです.マウスも使えます。マウスncursesではマウスの操作を検知できるらしい.ただしSVr4以前とか4.4BSD以前ではできないようだ. 入力に関しては普通にgetchとかやると入力待ちが発生してしまうのですが、nodelay関数を使うことでバッファに入力がないときは待たないようにできるようです。ただし、キーやマウスは押した瞬間しか判定できないので、これで普通のシューティングを作るのは無理そうです。そもそもキーを離したときのイベントは、SSHでは送られていないような気もします。 出力に関しては特に難しいところはありませんが、clear()だと

    denken
    denken 2009/04/21
    ぜひ思い立っていきたい
  • チームラボ / teamLab

    チームラボ ボタニカルガーデン 大阪 Jul 29, 2022 - 長居植物園、大阪 NOW OPEN

    チームラボ / teamLab
    denken
    denken 2008/04/01
    データ提供がありがたい
  • C/C のポインタの機能--参照渡し - page2 - builder by ZDNet Japan

    ポインタとは ポインタはC/C++言語の特徴的な機能のひとつである。ポインタ(pointer)を直訳すると「指し示すもの」であり、別の変数や文字列定数の場所を指し示すために使う。また、ポインタを指すポインタ(ポインタへのポインタ)というものも存在する。 このページをお読みいただいている読者にあっては、「C言語 ポインタ」「C++ ポインタ」などのキーワードでWeb検索をしたことがあるかもしれない。そうするとポインタに特化した内容の書籍をいくつか見つけられる。それだけ奥が深い機能ということである。 ポインタの用途 では、ポインタはどんなところで使われているのだろう。C/C++言語では、あらかじめ定義されている関数が多数存在するが、その一覧には、*(アスタリスクあるいはアステリスク)が付いているものをよく見かける。 これらはポインタを表し、主に文字列の操作やファイルをはじめとするデータの入出力

    C/C のポインタの機能--参照渡し - page2 - builder by ZDNet Japan
    denken
    denken 2008/03/31
    コメント欄が盛り上がっているのできっとひどいのだろうエヘヘ
  • 第10回 麻雀の役を判定する:ITpro

    図1に示す(1)から(3)までの麻雀(マージャン)の手牌があります。「あがり牌」はすべて山からツモったものとし,リーチはかけていません。またドラやハイテイ*1なども関係ないものとします。これらの役を判定して,親の場合の点数を計算するプログラムを作ってください。 「ややこしや~ややこしや~」というのは野村萬斎ですが,思わずそううなってしまうことがプログラミングをしているとよくあります。今回の麻雀の役判定は,考えれば考えていくほどややこしく,そうしたものの代表と言えるでしょう。排他処理や優先順位が複雑にからんでいて一筋縄ではいきません。 今回はややこしい組み合わせを解決する方法を考えてみます。麻雀になじみのない方も,ちょっとしたパズル気分で試してみてください。 麻雀の役を考える 麻雀を知らない方のためにルールをおおざっぱに説明しておきましょう*2。麻雀の牌には,大きく分けて「萬子(マンズ)」「

    第10回 麻雀の役を判定する:ITpro
  • PKU JudgeOnline

    4DM.org トップ / PKU / D言語 / グラフ理論 / ステレオグラフィックス / Cozy Ozy / アンテナ / リンク / ダウンロード / プロフィール PKU JudgeOnline PKU JudgeOnlineとは、世界各国で過去に行われたプログラミングコンテストの問題を集めていて、解答のプログラムを送ればすぐに正解・不正解を判定してくれて、しかも実行メモリサイズ・実行時間・コードサイズなどで順位が付くので結構燃えます(笑) ここでは、このPKU JudgeOnline(略してPKU)の問題について、私が多くの超絶プログラマーから知恵を頂きながら書き上げた最短コードを書くテクニックを載せている。「最短コードなんて、結局C言語Hack集じゃねーの?」と思う方も多いかもしれない。たしかにそういう側面もあるが、最短コードというのは小細工だけでは達成できない。消費メ

  • 高度プログラミング演習(九州大学全学共通教育科目)の説明資料

    実践プログラミング CとC++プログラミングに関するいくつかの例題と解説. 単なるプログラミングテクニックや文法の解説ではなく, 背後にある考え方の習得(アルゴリズム,データ構造,数学など)を重視して いる. プログラムをじっくり眺めそこから技法を学び取る. 最大値 [HTML] 曜日の計算 [HTML] 平均値,分散 [HTML] 2次方程式の解 [HTML] 最小自乗法 [PPT], [HTML] 待ち行列シミュレーション [PPT], [HTML] アーランの即時式モデル [PPT], [HTML] 行列のLU分解 [PPT], [HTML] ニュートン法による非線型方程式の解 [PPT], [HTML] 数値積分 [PPT], [HTML] 2分探索木 [PPT], [HTML] ヒープソート [PPT], [HTML] クイックソート [PPT], [HTML]

  • Cプログラミングの秘訣

    特集 Cプログラミングの秘訣 最終更新: 2006-03-28 このテキストはC MAGAZINE 1992年4月号に掲載された原稿のオリジナルテキストを元にしてHTMLに変換したものです。掲載文章と細部が異なっていると思われます。また、気付いた個所をいくつか修正してあります。 当時はまだWindows 95もないような時代で、現在の状況から見ると違和感のある内容も結構あるかもしれませんが、時代背景を想像しながら補正しつつ読んでいただければ幸いです。 ※2006年3月28日追記: 何が原因か知りませんがこのページのアクセスが増えているそうなので、 HTML のおかしなところを修正しました。 文章の変更はありません。 なお、このサイト(表ページ)は現在休眠状態ですが、 裏ページ や 裏の裏ページ の方を、細々と更新していたりします。 目次 Part1 よいプログラムを書く条件 Part2 明

    denken
    denken 2006/03/26
    最近Cを復習する必要を強く感じさせる出来事が起こった。
  • 加速するJava利用、オープンソースのSourceForgeサイトでC++を追い抜く

    世界最大のオープンソースソフトウェア開発サイト、SourceForgeでJavaが、プロジェクトの数でC++を追い抜き、最有力の言語となった。Javaの父、ゴスリング氏は、Sunの無償化戦略が後押ししていると話す。 先週、「SourceForge」(世界最大のオープンソースソフトウェア開発サイト)でJavaが、プロジェクトの数でC++を初めて追い抜き、最有力の言語となった。12月1日時点で、1万6731のC++プロジェクトに対して、Javaプロジェクトは1万6738と上回っている。 Javaを生み出し、今も後見人であるSun Microsystemsは、今回の首位到達を「力強い成長の明白な表れ」であり、Javaデベロッパーコミュニティーの「参加」(がもたらす力)だと呼ぶ。 Sunのフェローで同社デベロッパー製品グループのCTO(最高技術責任者)を務める、Java言語の父、ジェームズ・ゴス

    加速するJava利用、オープンソースのSourceForgeサイトでC++を追い抜く
  • こんなプログラムはいやだ: 負の剰余 - bkブログ

    こんなプログラムはいやだ: 負の剰余 知人から次の式の計算結果はどうなるかという問題を出されました。 -3 % 5 3 % -5 -3 % -5 降参して答えを尋ねたところ、問題を出した方も答えを知らないことがわかりました。そこで、いくつかの言語処理系で結果を調べてみました。手元の環境 (Intel Xeon 上の Debian GNU/Linux sarge) で調べると2つのグループに分かれました。 C (GCC 3.3.5) Java (Sun JDK 1.5.0_05) PHP 4.3.10-16 Emacs 22.0.50.2 Ruby 1.8.2 Python 2.3.5 Perl 5.8.4

    denken
    denken 2005/12/01
    考えたこともなかったなー
  • こんなプログラムはいやだ: float++ - bkブログ

    こんなプログラムはいやだ: float++ 次の C言語のプログラムをコンパイルして実行するとどうなるでしょうか。 int main () { volatile float i; for (i = 0; i < 100000000; ++i); return 0; } おそらく、多くのプラットフォームでは、無限ループになると思います。これは、IEEE754 の単精度浮動小数点の有効桁数が24ビットであり、224 を超えると数値に誤差が入るためです。volatile を指定しているのはコンパイラの最適化により i がレジスタに入るのを避けるためです。 上のプログラムは、なんとなく float の挙動が気になったため書いたものですが、パズル的な要素もあるかと思い、紹介してみました。身近なプログラマをいやがらせるのに使えるかもしれません。

  • C MAGAZINE - プログラミングの禁じ手Web版 C言語編

    すごい視聴率だと話題になっていたコンビニの経営を観たら、出演している加盟店のファンになってしまったんです。そこで自分も地元香川でフランチャイズ加盟をしてコンビニを経営してみたいなと思うようになりました。 https://www.sej.co.jp/owner/area/market/kagawa.php >>Read more

  • 1