人気マンガがだれでも無料♪電子コミック読み放題!!

こんにちは。
プログラミングの勉強の導入として高橋麻奈著の「やさしいC」を選び、つい先日読み終えました。
スムーズに次の段階に進みたいと思うのですが、どの本を読めばいいのか分からず迷っています。

おすすめの本や勉強法などがありましたらよろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

こんにちは



『やさしいC』は私も読んだことがあります。
しかし、このレベルではコードを書くどころか読むことさえ難しいでしょう。
基本情報処理試験の午後問題はコードを読めるかを問うています。
http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/
この本のレベルでは無理です。
まず読めるようになることだと思います。
もう少し詳しい本で勉強しなおしてください。
ただし、必ずサンプルコードを入力して動作を確認すること。

★文法(入門書)
よく見かける入門書の特徴を以下にあげておきます。

高橋麻奈 「やさしいC」 ソフトバンク
http://www.sbcr.jp/books/products/detail.asp?sku …
●長所
はじめてプログラムを一人で勉強する初心者むけである。
入門書のなかでは一番やさしい。
基本を理解するだけならこの本で良い。
●短所
これ一冊ではCの基本情報の問題は解けない。
全体的に端折ってる。
●使用法 
プログラムを組んだことのない独学の初心者を相手に書いている。
文章がわかりやすく一気に読めるので、予習で全体の内容をつかむのにいい。
全体の内容をつかんだら、もっと詳しい本で勉強してください。

柴田望洋 「明解C言語入門」 ソフトバンク
http://www.sbcr.jp/books/products/detail.asp?sku …
●長所
初心者向けである。
よく整理された内容である。
●短所
ポインタ、構造体の部分が端折っている。
演習問題の解答がない。
●使用法
林晴比古さんの本を読んだことのある人はよくわかってるが、柴田望洋さんの本は内容がよく整理されまとまりがあります。
ポインタ、構造体の部分が端折ってるので、続編の「図解C言語ポインタの極意」、「新版C言語アルゴリズムとデータ構造」で勉強しなければなりません。
また演習問題の解答がないので続編の「解きながら学ぶC言語」を買わなくてはいけません。
したがって、4冊で1つの入門書と考えたほうが良いです。

高田美樹 「らくらく突破C言語」 技術評論社
http://gihyo.jp/book/2002/4-7741-1609-2
●長所
if文やfor文まではわかっている学生向け。
アルゴリズムについても書かれている。
全体的に「やさしいC」ほど端折っていない。
ポインタ、構造体も「明解C言語入門」ほど端折ってない。
●短所
基本情報の対策用だが問題が古い。
●使用法
if文やfor文までは、高橋麻奈さんや柴田望洋さんのようにくどい説明はしてません。
基本情報の必要な文法を覚えるだけなら、この本がいいです。
ただし、どの本で勉強しても言えることだが基本情報を受けるなら最新の過去問題を3年分は解いてください。

林晴比古 「新C言語入門 シニア編」 ソフトバンク
http://www.sbcr.jp/books/products/detail.asp?sku …
●長所
入門書の中では一番詳しい。
●短所
初心者には使いにくい。
●使用法
読んでいくと後から勉強する内容がいきなり出てきたりします。
そのため初心者がつかうなら「やさしいC」などを一度読んで全体を大まかに理解してから読むか、最初はわからない所を深く考えずに読んでいき,一冊を何度も読んで理解する必要があります。
どの言語も林晴比古さんのシニア編の入門書は詳しいが何度も読む必要があります。

★ポインター
入門書を1冊読んで最初にひっかかるのはポインターです。
エイリアスがうまく読めないなら
「図解C言語ポインタの極意」 柴田望洋 ソフトバンク
http://www.sbcr.jp/books/products/detail.asp?sku …
メモリがどうなってるかモヤモヤして気持ち悪いなら
「アセンブラ入門 CASL II」 内田智史 SCC
http://www.scc-kk.co.jp/scc-books/book_data/6074 …
をおすすめします。

★プログラム作成
それと入門書を1冊読んだら必ず自分でコンソールプログラムを作成してください。
どのようなプログラムをつくるかは次の本が参考になると思います。
「たのしいC」 柴田望洋 ソフトバンク
http://www.sbcr.jp/books/products/detail.asp?sku …
このようなプログラムを課題でよくつくらされました。

コンソールプログラムがつくれるようになってビジュアルなプログラムに挑戦するなら
「14歳からはじめる リアルに動く!ゲーム物理プログラミング教室 C言語編」 大槻有一郎 ラトルズ
http://www.rutles.net/books/180.html
「14歳からはじめる
C言語わくわくゲームプログラミング教室」 大槻有一郎 ラトルズ
http://www.rutles.net/books/151.html
卒業制作はこの本を参考にしてソフトを作りました。

★アルゴリズム
処理に時間のかからないプログラムを作るにはアルゴリズムの学習も必要です。
アルゴリズムがはじめてで、各アルゴリズムのイメージをつかみたいなら
「新版C言語アルゴリズムとデータ構造」 柴田望洋 ソフトバンク
http://www.sbcr.jp/books/products/detail.asp?sku …
各アルゴリズムの長所と短所を計算量で理解したいなら
「定本 Cプログラマのためのアルゴリズムとデータ構造」 近藤嘉雪 ソフトバンク
http://www.context.co.jp/~cond/books/algo/
をおすすめします。
    • good
    • 0

解くべき問題があれば本なんて大事じゃなくて、ときどき困ったときに見返すくらいのものです。


プログラミングなんて結局は実践あるのみですので、なんでもいいから作ってみることが肝要です。
作る途中に知識が足りないと思ったらとりあえずネットで調べて、ネットでは分かりにくいようだったら改めて本を参照すればいいんです。
そうしているうち、必要な本を自分で探せるようになります。

今だと関数リファレンスはネット上でも見られますから、辞書のような本は要らないです。(と、私は思っています。個人の意見です)
辞書は要らないと言っても、文法をチェックできるような本は手元にあった方が良いですね。(辞書でも良いんですけど、それよりは説明が載っている方が私は嬉しいのです)

http://odz.sakura.ne.jp/projecteuler/
上URLは、 Project Euler という英語プログラミング問題集を和訳しているページです。
これ以外にも、プログラミングコンテストのアジア予選の一問目なんかは処理としては難しくはありませんが、問題を考察してモデル化し、計算量を減らす努力などは必要とされます。そういうことがプログラミングをする上で大事なんです。

そういう、「プログラミングをする」っていうことの基本的な姿勢を教えてくれる本なら「センス・オブ・プログラミング!」がおすすめです。
http://www.amazon.co.jp/dp/4774121738
データ構造とアルゴリズム、オブジェクト指向や計算量など、文法を知ったその次に学んでいくだろう物事を平易に書いた、いわばプログラミングの啓蒙書です。言語本と比べれば安いし、読んでみると良いかもしれません。

まあ、とにかく、何か作ってみれば良いと思いますよ。
for文とif文と気合いがあれば、大概のものは作れてしまいます。とりあえずFizzBuzz(検索してみてください)でも書いてみて、それから先ほどのProject Eulerでも解いてみると良いと思いますよ。
    • good
    • 1

プログラミング系の本を読み終えることはなんの意味もありません。


サンプルを実際に打ち込んで実際の挙動をみて改造してきの関数などの
機能を理解していく。
って事をやっていればどんな本でも一冊やり終えたら簡単なプログラムを各能力は身につく。(それでも身につかないならその人はプログラミングにむいてないかもしれない。)
後はその基本の応用。
そういう意味では「ANSI C言語辞典」一冊を買っておく。
    • good
    • 0
この回答へのお礼

私はプログラミングに関しての見解が浅かったようですね。
今後は実践型の勉強もしてみたいと思います。
ありがとうございました。

お礼日時:2008/03/03 17:02

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QC言語を独学でマスターした人。。

こんにちは。
僕は独学でC言語をマスターしようと勉強してますが、独学では限界があって殆ど解ってないです。
それで、僕と同じように自宅で独学でC言語を勉強してる人もしくは、マスターした人はいますか?。
それ以外の人でも構わないので、もし良ければアドバイスお願いします。

Aベストアンサー

プログラマというのは特別高度な技術が必要な職業ではないと思います。私は結局はゲームプログラマではなく一般のSEですが、求められるのは高度なプログラム技術ではなく、他の人に読みやすくバグのないコードを書くことです。
fantom77さんがCを学ぶ理由をお尋ねしましたが、目的によってあなたに必要な技術は違ってきます。私も、初心者向けの書籍を買って見よう見まねで本の通りにプログラム書いてはコンパイル、を繰り返す前は、プログラムが外国語に見えました。でも、興味があるなら何よりもまず、簡単なプログラムから初めて、自分で書いたものが動くことを体感して、「動いた!」という喜びを重ねてください。プログラムに限らず、人間、興味のあることには難しくても取り組むでしょう?
繰り返しますが、C言語も、プログラマも、決して特別な存在ではありません。もっと気楽にとらえて、楽しんで取り組むのがコツですよ。

Qプログラミング能力認定試験はどのくらい優遇されるの?

私は、インターネット上で、「プログラミング能力認定試験」が存在する事を知りました。

現在私は、プログラミングとは無縁の事務職をやっており、独学で C言語の勉強を行っております。
将来的にはプログラマへの転職も真剣に考えているのですが、その時に自分を認めて(採用して)もらえるようなモノを持ちたいと考えております。

そこで、
1>>「プログラミング能力認定(1~3級)」が就職にどの位有利なのか?
2>>また、専門学校に通われた方たちは、一般に、卒業時点で何級取得程度の実力を身につけているものなのか?

の2点について教えていただきたく思います。
質問にアバウトな点があり、大変申し訳ございませんが、宜しくお願いいたします。

Aベストアンサー

(1)採用枠が競争になった場合に有効材料となるでしょう。また面接が有る場合のアピールポイントになるでしょうね。
(2)学習内容に左右されますが、所詮基礎レベルでしょう。
 実戦では、実務では基本ができている程度にしか認識されないと思います。
 実戦では、開発環境や要求定義が様々な為、資格による差は少ないです。重要なのは今後の為に実戦でどこまで自分を向上できるかですね。その前に雇用されるのは必須条件ですけどね。

Qエクセルで計算すると2.43E-19などと表示される。Eとは何ですか?

よろしくお願いします。
エクセルの回帰分析をすると有意水準で2.43E-19などと表示されますが
Eとは何でしょうか?

また、回帰分析の数字の意味が良く分からないのですが、
皆さんは独学されましたか?それとも講座などをうけたのでしょうか?

回帰分析でR2(決定係数)しかみていないのですが
どうすれば回帰分析が分かるようになるのでしょうか?
本を読んだのですがいまいち難しくて分かりません。
教えてください。
よろしくお願いします。

Aベストアンサー

★回答
・最初に『回帰分析』をここで説明するのは少し大変なので『E』のみ説明します。
・回答者 No.1 ~ No.3 さんと同じく『指数表記』の『Exponent』ですよ。
・『指数』って分かりますか?
・10→1.0E+1(1.0×10の1乗)→×10倍
・100→1.0E+2(1.0×10の2乗)→×100倍
・1000→1.0E+3(1.0×10の3乗)→×1000倍
・0.1→1.0E-1(1.0×1/10の1乗)→×1/10倍→÷10
・0.01→1.0E-2(1.0×1/10の2乗)→×1/100倍→÷100
・0.001→1.0E-3(1.0×1/10の3乗)→×1/1000倍→÷1000
・になります。ようするに 10 を n 乗すると元の数字になるための指数表記のことですよ。
・よって、『2.43E-19』とは?
 2.43×1/(10の19乗)で、
 2.43×1/10000000000000000000となり、
 2.43×0.0000000000000000001だから、
 0.000000000000000000243という数値を意味します。

補足:
・E+数値は 10、100、1000 という大きい数を表します。
・E-数値は 0.1、0.01、0.001 という小さい数を表します。
・数学では『2.43×10』の次に、小さい数字で上に『19』と表示します。→http://ja.wikipedia.org/wiki/%E6%8C%87%E6%95%B0%E8%A1%A8%E8%A8%98
・最後に『回帰分析』とは何?下の『参考URL』をどうぞ。→『数学』カテゴリで質問してみては?

参考URL:http://ja.wikipedia.org/wiki/%E5%9B%9E%E5%B8%B0%E5%88%86%E6%9E%90

★回答
・最初に『回帰分析』をここで説明するのは少し大変なので『E』のみ説明します。
・回答者 No.1 ~ No.3 さんと同じく『指数表記』の『Exponent』ですよ。
・『指数』って分かりますか?
・10→1.0E+1(1.0×10の1乗)→×10倍
・100→1.0E+2(1.0×10の2乗)→×100倍
・1000→1.0E+3(1.0×10の3乗)→×1000倍
・0.1→1.0E-1(1.0×1/10の1乗)→×1/10倍→÷10
・0.01→1.0E-2(1.0×1/10の2乗)→×1/100倍→÷100
・0.001→1.0E-3(1.0×1/10の3乗)→×1/1000倍→÷1000
・になります。ようするに 10 を n 乗すると元の数字になるた...続きを読む

QC言語の上級者を目指したい。

 就職活動でソフト会社へ面接に行きました。
金融関係のプログラムをつくっている会社です。
そのとき社長さんから聞いた話です。
「学校を出たばかりの人にプログラムを書かせると100万口座の処理に3日もかかってしまうが、プロが書いたものは10分で処理できる。」
ポインタをしっかり勉強しておいて欲しいとの話でした。
 結局、その会社は断りましたが自信をなくしてしまいました。
残りの1年はCをどのように勉強していけば良いでしょうか。
アドバイスをお願いします。
 いまの私のレベルは基本情報処理技術者試験をC言語で合格しています。
勉強した本は下記の通りです。
(1) やさしいC ソフトバンク
(2) 明解C言語入門 ソフトバンク
(3) らくらく突破C言語 技術評論社
(4) 合格サポートC言語 一橋出版
(5) ポインタの極意 ソフトバンク
(6) C言語によるアルゴリズムとデータ構造 ソフトバンク
  ただし、(1)~(4)はサンプルコードを入力し演習問題も自力で解いてますが
 (5)、(6)は一通り読んだだけです。

 就職活動でソフト会社へ面接に行きました。
金融関係のプログラムをつくっている会社です。
そのとき社長さんから聞いた話です。
「学校を出たばかりの人にプログラムを書かせると100万口座の処理に3日もかかってしまうが、プロが書いたものは10分で処理できる。」
ポインタをしっかり勉強しておいて欲しいとの話でした。
 結局、その会社は断りましたが自信をなくしてしまいました。
残りの1年はCをどのように勉強していけば良いでしょうか。
アドバイスをお願いします。
 いまの私のレベル...続きを読む

Aベストアンサー

とても勉強家で関心します。
「残りの1年何を勉強していけば良いか」に重点を置かせて頂きます。
勉強方法については賛否両論なので、あくまで当方がある程度(ランクをつけるなら中級とさせてもらいます)C言語を扱えるようになった方法をお答えしたいと思います。

(1)
基本情報処理技術者試験を合格なさっているので、これを有効活用してみては如何でしょうか。
午前の部の「アーキテクチャ」と「アルゴリズム」、午後の部の「アセンブラ(仮想コンピュータCOMET)」です。
これはコンピューターを動かす上で(つまりプログラム)コアになります。
「アーキテクチャ」で仕組み(仕様)を見て、目的の「アルゴリズム」を選択し、「アセンブラ」でプログラミングする、といった手法です。

いまどき「アセンブラ」なんてという意見が大半を占めると思いますが、これが理解できてしまうと、現状あるありとあらゆる「プログラミング言語」が不思議と理解できてしまいます。
C言語のポインタが難所と呼ばれる起点は、ここを教えてもらえないからだと当方は思います。

(2)
「マルチタスク(マルチスレッド)」の概念を頭に叩き込んでおくとよいでしょう。
システム開発において必要不可欠な知識であることは断言できます。

当方の回答で、少しでも貴方の問題が解決できたら幸いです。

とても勉強家で関心します。
「残りの1年何を勉強していけば良いか」に重点を置かせて頂きます。
勉強方法については賛否両論なので、あくまで当方がある程度(ランクをつけるなら中級とさせてもらいます)C言語を扱えるようになった方法をお答えしたいと思います。

(1)
基本情報処理技術者試験を合格なさっているので、これを有効活用してみては如何でしょうか。
午前の部の「アーキテクチャ」と「アルゴリズム」、午後の部の「アセンブラ(仮想コンピュータCOMET)」です。
これはコンピュー...続きを読む

Q積分で1/x^2 はどうなるのでしょうか?

Sは積分の前につけるものです
S dx =x
S x dx=1/2x^2
S 1/x dx=loglxl
まではわかったのですが
S 1/x^2 dx
は一体どうなるのでしょうか??

Aベストアンサー

まず、全部 積分定数Cが抜けています。また、積分の前につけるものは “インテグラル”と呼び、そう書いて変換すれば出ます ∫

積分の定義というか微分の定義というかに戻って欲しいんですが
∫f(x)dx=F(x)の時、
(d/dx)F(x)=f(x)です。

また、微分で
(d/dx)x^a=a*x^(a-1)になります …高校数学の数3で習うかと
よって、
∫x^(a-1)dx=(1/a)*x^a+C
→∫x^adx={1/(a+1)}*x^(a+1)+C
となります。

つまり、
∫1/x^2 dx=∫x^(-2)dx
={1/(-2+1)}*x^(-2+1)+C
=-x^(-1)+C
=-1/x+C

です。

Q法(mod)の四則演算について

とても困ってます。
情報セキュリティの課題で

・整数は素数を法とする演算では、四則演算が実行できる。その例を示せ。
・整数は合成数を法とする演算では、四則演算の一部で、解が一意に定まる場合と定まらない場合がある。その例を示せ。

この2つの問題が分かりません。
答えを教えていただけませんか?お願いします。

Aベストアンサー

以下、剰余算の計算式を「13 mod 7 = 6」(13÷7の余りが6という意味)のように表します。suryaさんの読みやすいように適宜読み替えて下さい。

・法が素数の場合
2つの整数(5, 13)を7で割ったときの剰余の四則演算の例を以下に示します。

1. 加算
13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) + (5 mod 7) = 11 mod 7 = 4 … (1)
また、(13 + 5) mod 7 = 18 mod 7 = 4 … (2)
(1)と(2)は同じ値になるので、(13 mod 7) + (5 mod 7) = (13 + 5) mod 7

2. 減算
13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) - (5 mod 7) = 1 mod 7 = 1 … (1)
また、(13 - 5) mod 7 = 8 mod 7 = 1 … (2)
(1)と(2)は同じ値になるので、(13 mod 7) - (5 mod 7) = (13 - 5) mod 7

3. 乗算
13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) × (5 mod 7) = 30 mod 7 = 2 … (1)
また、(13 × 5) mod 7 = 65 mod 7 = 2 … (2)
(1)と(2)は同じ値になるので、(13 mod 7) × (5 mod 7) = (13 × 5) mod 7

4. 除算
剰余の除算は整数や実数といった一般的な数値の除算と異なるので注意して下さい。
剰余での除算は「逆数を掛ける」ことで定義されます。「aをbで割る」はa×b^-1で表されます。

(3 mod 7) × (5 mod 7) = 1なので、(5 mod 7)^-1 = (3 mod 7)
また、3.乗算の結果から、(13 × 5^-1) mod 7 = (13 mod 7) × (5 mod 7)^-1が言える。これを計算すると、
(13 × 5^-1) mod 7 = (13 mod 7) × (5 mod 7)^-1 = (13 mod 7) × (3 mod 7) = 4


・法が合成数の場合
良い例かどうかは分かりませんが…。
法が8のときの除算を例に挙げてみます。

例えば、(5 mod 8) × (3 mod 8)^-1は(3 mod 8) × (3 mod 8) = 1だから、
(5 mod 8) × (3 mod 8)^-1 = (5 mod 8) × (3 mod 8) = 7のように計算できます。
しかし、(5 mod 8) × (4 mod 8)^-1は、4 mod 8の逆数を求めることができないため計算できません。

以下、剰余算の計算式を「13 mod 7 = 6」(13÷7の余りが6という意味)のように表します。suryaさんの読みやすいように適宜読み替えて下さい。

・法が素数の場合
2つの整数(5, 13)を7で割ったときの剰余の四則演算の例を以下に示します。

1. 加算
13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7) + (5 mod 7) = 11 mod 7 = 4 … (1)
また、(13 + 5) mod 7 = 18 mod 7 = 4 … (2)
(1)と(2)は同じ値になるので、(13 mod 7) + (5 mod 7) = (13 + 5) mod 7

2. 減算
13 mod 7 = 6, 5 mod 7 = 5なので、(13 mod 7...続きを読む

QC言語で作ったらWindowsでもMacでもLinuxでも動くんですか?

Linuxでgccを使ってC言語を勉強してます。

Linuxのgccでコンパイルして作ったプログラムはWindowsでもMacでも動くんでしょうか?

逆にWindowsで作ったのはとか、Macで作ったのは他のOSで動くんだろうかと疑問で・・・。

教えてください!!

Aベストアンサー

>それぞれのOSで使えるコンパイラでコンパイルしないといけないのですね。

そう。

>文章はテキストファイルだからOKということで。

いや、OKじゃない。

ソースコード(ソースプログラム)はテキストファイルだからOK、と思ったかも知れない。でも、OKじゃなかったりする。

ソースコードに漢字が入ってると、たとえそれがコメント部分だったとしても「漢字コードの違い」があって「単純に持って来ただけ」だと、コンパイルさえ出来ない事もある。

しかも「たとえ漢字が入ってなくても、改行コードの違い」でコンパイルできない場合もある。

コンピュータにとっては「テキストファイル」も「バイナリファイル」も区別出来ない。どっちも単に「何かのデータが並んで格納されてるファイル」に過ぎない。

そして「こういうデータが並んでたら、こういう意味」と言う「約束事」は、MacはMac、LinuxはLinux、WindowsはWindowsで全部違う。

テキストファイルで言えば「漢字の約束事」や「改行の約束事」が全部違う。

だから「単にソースコードを持って来ただけでもダメ」だったりする。

もし「LinuxからMacへ、テキストファイルをコンバートして送るツール」が無かったとしたら「Linuxで紙にプリントアウトして、Macでそれを読みながら手で打ち込み直し」って事になってしまう。

そういう訳で「テキストファイルだからOK」ってのは「甘い考え」だったりする。

>それぞれのOSで使えるコンパイラでコンパイルしないといけないのですね。

そう。

>文章はテキストファイルだからOKということで。

いや、OKじゃない。

ソースコード(ソースプログラム)はテキストファイルだからOK、と思ったかも知れない。でも、OKじゃなかったりする。

ソースコードに漢字が入ってると、たとえそれがコメント部分だったとしても「漢字コードの違い」があって「単純に持って来ただけ」だと、コンパイルさえ出来ない事もある。

しかも「たとえ漢字が入ってなくても、...続きを読む

QC言語で入門の本を読んだあとはどうすればいでしょうか

C言語で入門の本を読んだあとはどうすればいでしょうか

ポインタ、構造体までできたのですが、次はどのステップに進めばよいでしょうか

Aベストアンサー

「実践」でしょうね。

これまでも、入門書にある例題プログラムや演習問題を実際に打ち込んで動かしてきたと思います。
それに次のような改造を加えてみるとかはいかがでしょう?
・コンパイルでできた実行ファイルを実行→入力するものを聞いてくるので入力 というのがよくある例題です。
これを コマンドライン引数(実行ファイル 入力値1 入力値2 .... という形式)でできるようにする。
・あるいは、ファイルから読み込むようにする。ファイル名もコマンドライン引数で変更できるようにする。
・例題では、入力が正しいことが前提になっていることが多いです(割り算で割る数が0になることを考慮していない、とか、数値を入力するところに文字列を入力してしまった、とか)。
これを、入力値がおかしい場合のエラー処理を考えて、実際に組み込んで、わざと間違い入力してみる。
例題でよく使われているscanfですが、エラー処理をしようとすると、実はけっこう複雑です。
・main関数にずらずら書いてあるようなプログラムを、機能毎に関数化してみる。
もちろん、グローバル変数は使わない。

こんなのをやっていると、つまずくところも出てくるでしょう。それは、理解した「つもり」になっているところがあった、ということです。もう一度、入門書の該当箇所をよく読んで理解を深めましょう。


あと、このカテゴリの質問に、自分なりの答えを出してみる、というのも、いい訓練になると思いますよ。
入門レベルでは難しいのも多いですが、「学校の宿題」みたいな入門レベルで十分解ける質問もありますから。

「実践」でしょうね。

これまでも、入門書にある例題プログラムや演習問題を実際に打ち込んで動かしてきたと思います。
それに次のような改造を加えてみるとかはいかがでしょう?
・コンパイルでできた実行ファイルを実行→入力するものを聞いてくるので入力 というのがよくある例題です。
これを コマンドライン引数(実行ファイル 入力値1 入力値2 .... という形式)でできるようにする。
・あるいは、ファイルから読み込むようにする。ファイル名もコマンドライン引数で変更できるようにする。
・例題では、入力が...続きを読む

Qゲーム開発がしたい。学ぶべきはC++かC#か。

現在、小さな事務系ソフトウェア開発会社でプログラミングをやっている者です。

思う所あって、ゲーム系の会社への転職を考えています。
応募にあたって作品の提出が必要なことは存じていますが、
どの言語を勉強し、開発すべきかで迷っています。

開発したいゲームとしては、STGかRPGで考えています。
2Dか3Dかは特にこだわりがありません。

過去に行ったプログラミングは、ゲームの関係の薄いものばかりで、
「ゲーム開発」について本格的に学んだことはありません。
学生の頃はロボットを制御するために、C言語のプログラムを書いていました。
PCとマイコンのシリアル通信のために、C#でwindowsアプリケーションも作りました。
C++もほんの一時期だけ使っていました。
卒業してから日が浅いので、これらの知識はまだある程度あります。
会社ではaspxとJavaScriptでWebページの外面、内部の動作をVBで行なっています。

触れたことのあるプログラミング言語を理解度順に並べたら多分こんな感じです。
VB≒C#>C>JavaScript>>>C++

C#とVBは似通った言語なので、VB中心の現在でもなんとなく理解できます。
現在最もメジャーらしいC++が最も経験が少なく、自信がないです。

軽く調べた感じでは、現在のゲーム開発はC++が多いが、
今後はC#やJavaも増えるかもという感じでどちらでゲーム開発を本格的に学ぼうか迷っています。

最もメジャーなC++を改めて学ぶべきか、
それともある程度使えるC#での開発方法を学ぶか、
あるいはその他の言語か、助言をお願いします。

また、開発の参考文献なども教えていただけると幸いです。
よろしくお願いします。

現在、小さな事務系ソフトウェア開発会社でプログラミングをやっている者です。

思う所あって、ゲーム系の会社への転職を考えています。
応募にあたって作品の提出が必要なことは存じていますが、
どの言語を勉強し、開発すべきかで迷っています。

開発したいゲームとしては、STGかRPGで考えています。
2Dか3Dかは特にこだわりがありません。

過去に行ったプログラミングは、ゲームの関係の薄いものばかりで、
「ゲーム開発」について本格的に学んだことはありません。
学生の頃はロボットを制御するために、C...続きを読む

Aベストアンサー

今後の動向不明なソーシャルならPHPとかJavaScriptとかWEB系です。
家庭用ゲームのメインの開発は今後もしばらくはC++が続くと思いますが、C#もツール開発用としては導入されていますし一部のゲームはC#で開発されています。
家庭用ゲーム機なら両方共出来ないとダメじゃないかと思いますね(片一方はある程度出来る程度で良いと思いますが)。

>開発したいゲームとしては、STGかRPGで考えています。
>2Dか3Dかは特にこだわりがありません。

こちらが拘るんじゃなくて向こうの会社が拘る問題ですが、今時は家庭用ゲーム機は3Dじゃないと厳しいと思います。
あと応募作品でSTGだとすごく多いので、それだけで評価が下がります。
逆にRPGは、規模が大きくなるためプログラミングスキルが直に反映されるので応募課題としては悪くないですが市販レベルの操作性に合わせて作ること事態が大変です。
WEB系をやっていたのならオンラインゲームを作るスキルも期待されるでしょう。

とりあえず、どのぐらいのものが作れるかリアルタイム性のあるものを作るということがどういうことなのか理解するためにDXライブラリをご紹介しておきます。
これでラクラクとゲームを作れるようなら本格的にC++とDirectXやC#とXNAで応募作品を作れば良いのでは無いでしょうか?

「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」
http://dixq.net/g/

同サイトのこっちの掲示板には業界人の回答者も出没します。
「C言語何でも質問掲示板 • C言語交流フォーラム ~ mixC++ ~」
http://dixq.net/forum/viewforum.php?f=3

今後の動向不明なソーシャルならPHPとかJavaScriptとかWEB系です。
家庭用ゲームのメインの開発は今後もしばらくはC++が続くと思いますが、C#もツール開発用としては導入されていますし一部のゲームはC#で開発されています。
家庭用ゲーム機なら両方共出来ないとダメじゃないかと思いますね(片一方はある程度出来る程度で良いと思いますが)。

>開発したいゲームとしては、STGかRPGで考えています。
>2Dか3Dかは特にこだわりがありません。

こちらが拘るんじゃなくて向こうの会社が拘る問題ですが、今...続きを読む

Qc言語でできること

c言語は具体的には何ができるのでしょうか
ものすごくがんばれば市販のゲームソフトなども作れるようになるのでしょうか
というのは
今、僕はc言語のプログラミングを勉強しています
コンパイルするとms-dosの黒い画面が表示されますよね。オセロなどのゲームはとても見にくいです。
あのようなゲームではなく、ちゃんと絵があるようなゲームは作れるのでしょうか??
また3Dのゲームはつくれるのでしょうか?
「c言語のゲーム」とググってもありません
c言語だけではできなくてdirectxなどがいることは知っています。
プログラミングを学ぶ上でなにか目標ができたら
それに向けてがんばれると思うので情報よろしくお願いします。
わかりにくい文章ですいません^^;

Aベストアンサー

> c言語は具体的には何ができるのでしょうか
> ものすごくがんばれば市販のゲームソフトなども作れるようになるのでしょうか

およそありとあらゆることができます。
市販のゲームの多くはCで書かれています。

Cそのものはいわば「ノコギリとカナヅチだけ入った道具箱」です。
これだけでは作れるのはせいぜい犬小屋くらいなもの。
だけどこの道具箱、ノミ/カンナをはじめブルドーザやフォークリフトまで飲み込める懐の深いもの。優れた道具と腕次第で超高層ビルだって作れます。


人気Q&Aランキング