トップページ⇒tech
1002コメント314KB

C言語なら俺に聞け! Part 135©5ch.io

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん 転載ダメ©2ch.net2016/05/10(火) 13:13:49.45ID:3fG5/CbC
Language C FAQ
http://www.kouno.jp/home/c_faq/

K&R
プログラミング言語C 第2版 ANSI規格準拠
http://www.amazon.co.jp/dp/4320026926

C99
JIS X 3010:2003 プログラム言語C
http://kikakurui.com/x3/X3010-2003-01.html

C11
ISO/IEC 9899:2011 - Information technology -- Programming languages -- C
http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=57853
価格:198 CHF
----
C言語なら俺に聞け
http://echo.2ch.net/test/read.cgi/tech/1408709181/
2014/08/22(金)

【初心者お断り】ガチ規格準拠C専用スレ Part133
http://pc11.2ch.net/test/read.cgi/tech/1201153965/
2008/01/24(木)

【ISO/ANSI/JIS】 C言語なら俺に聞け! Part 132
http://pc11.2ch.net/test/read.cgi/tech/1190261457/
2007/09/20(木)
02322312016/05/24(火) 23:27:48.52ID:wt2wiSzh
>231 修正

>i = 1; の時
>i + i++; は、1 + 2, 2 + 2 のどちらかわからない
1 + 1, 2 + 1 だな

>func(i, i++);
>これも同様に引数が、(1, 2), (2, 2)のどちらかわからない
(1, 1), (2, 1) だな
02332312016/05/24(火) 23:45:57.48ID:wt2wiSzh
>>229
>さらに,変更前の値の読取りは,格納される値 を決定するためだけに行われなければならない

これは、MISRA-C 2004、ルール12.2、volatile 変数のことかな?

vがvolatile 変数だとして、
v + v;
ハードウェアをアクセスする度に、コロコロと値が変わるから、
これは、1 + 1, 1 + 2 かも知れない

だから、vに不用意にアクセスせず、
a = v; のように、一旦変数に入れてから、aを使う

v; みたいにアクセスしては、いけない
0234デフォルトの名無しさん2016/05/25(水) 00:44:05.85ID:gdJJQ64a
ご回答ありがとうございます

>>231
> インクリメントを他の式と、組み合わせられない。
> 必ず単独で使うこと。MISRA-C 2004、ルール12.13
例えば
a = b * c + i++;
は、C言語規格上許されると思っているのですけれど、ルールに抵触するのでしょうか?

> ルール12.2、1つの副作用完了点内での、部分式の評価順序は未規定
a = i + i++;
がダメな理由はしっくりきました。


>>233
>さらに,変更前の値の読取りは,格納される値 を決定するためだけに行われなければならない
C言語の規格書から持ってきました
JISX3010 2003 プログラム言語C 6-5 式

a[i] = i++;
がダメな理由が、この一文らしいのですが・・・
この文をどう解釈すればよいかさっぱりだったので質問に至った次第です。
0235デフォルトの名無しさん2016/05/25(水) 03:01:42.03ID:sGJacJpA
マ イ ン ド コ ン ト ロ ー ル の手法

・沢山の人が、偏った意見を一貫して支持する
 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法

・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法

偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い

靖 国 参 拝、皇 族、国 旗 国 歌、神 社 神 道を嫌う カ ル ト

10人に一人は カ ル ト か 外 国 人

「ガ ス ラ イ テ ィ ン グ」 で 検 索 を !
02362312016/05/25(水) 03:53:16.87ID:0v8CMiQb
>a = b * c + i++;
Goでもインクリメントは単独文で、他の式と組み合わせられないから、
MISRA-C 2004、ルール12.13 には違反する

>a[i] = i++;
これも、i = 1 だとして、a[1], a[2]のどちらかわからない。
ルール12.2、1つの副作用完了点内での、部分式の評価順序は未規定

iの読み取りが、1つの副作用完了点内で、
左辺・右辺の2回起こっていて、そのタイミングがわからない。
とにかく、1つの文内で、更新される同じ変数を、2回アクセスしたらダメ

言語の規格書を読んで勉強するのは、素人には絶対無理。
MISRA-Cの日本語訳を書いている集団でさえ、
規格書に詳しい人はいないし、皆欧州の委員会へ、問い合わせて作っている

まず規格書を説明するための、例題や概念が必要。
副作用と副作用完了点、キャストの潜在型・汎整数拡張・平衡化、複合式など

とにかく、バグを避けるには、まぎらわしい書き方をしない。
長い文を書かない。誰も規格について詳しい人はいないから
0237デフォルトの名無しさん2016/05/25(水) 05:12:46.44ID:gdJJQ64a
>>236
あー分かった

> とにかく、1つの文内で、更新される同じ変数を、2回アクセスしたらダメ
と
> > さらに,変更前の値の読取りは,格納される値 を決定するためだけに行われなければならない
がイコールか


> 直前の副作用完了点から次の副作用完了点までの間に,式の評価によって一つのオブジェクトに格納さ れた値を変更する回数は,高々1 回でなければならない。
> さらに,変更前の値の読取りは,格納される値 を決定するためだけに行われなければならない

2行目の「格納される値 を決定する」は、1行目の「(高々1回の)格納さ れた値を変更する」を指しているんだ。
iに副作用が発生する式(i++)を書いたのであれば、iの値の読み取りはi++のため以外ではしてはならないと。

それを簡単に言うと
> とにかく、1つの文内で、更新される同じ変数を、2回アクセスしたらダメ
となる


> とにかく、バグを避けるには、まぎらわしい書き方をしない。
> 長い文を書かない。
はい、自分が書く時はそうしたいと思います。


ありがとうございます
お陰で理解できました
0238デフォルトの名無しさん2016/05/25(水) 07:21:38.02ID:Qq1d4n8I
MISRA-C推しの底辺がかきまわしてるけど、C言語は自由度が高いので、高い信頼性を要求される分野では単価の安い底辺PGを使えない
それを解決しようと足掻いてるのがMISRA-C

C言語を学ぶ上で参考にするのは構わないが、NGワードに設定しておいた方がノイズリダクション出来て良いかもね
0239デフォルトの名無しさん2016/05/25(水) 12:55:28.50ID:pZYZ14wu
PM, >>238 が WARNING 無視するなと何度言っても聞きません 首にしてください
0240デフォルトの名無しさん2016/05/25(水) 13:12:27.40ID:ADImxnBq
だって警告レベル一番キツくしてSDKサンプルをコンパイルすると警告出るんだもん
M$馬鹿じゃねぇの?()
0241デフォルトの名無しさん2016/05/25(水) 13:14:52.07ID:PX54IJWY
>>240
いい学習素材だと思うから、
そのエラーの原因と直しをしてみたら?
0242デフォルトの名無しさん2016/05/25(水) 13:22:36.73ID:JRGw8yci
>>240
それで警告が出るからMSが馬鹿だと結論づけるお前が馬鹿
0243デフォルトの名無しさん2016/05/25(水) 14:50:18.90ID:Qq1d4n8I
>>239
MISRA-Cはバカのための規格なので、バカを排除している職場では不要、使ってない。
0244デフォルトの名無しさん2016/05/25(水) 16:59:51.98ID:grsxbFu1
以下のようなプログラムを作成せよ。
5名分の数学の点数と英語の点数を入力する。
以下の計算式に基づいて合計点数を計算する。
(合計点数)=(数学の点数)×1.2 + (英語の点数)×0.8
上位2名を「合格(A)」とする。
上記合格者以外について、以下の計算式に基づいて合計点を再計算する。
(合計点数)=(数学の点数)×0.8 + (英語の点数)×1.2
上位2名を「合格(B)」とする。
つまり、不合格者は1名のみとなる。
同じ合計点数はないと仮定してよい。

こういう課題なんだけど、とりあえず1.2とかの計算はおいといて、入力した点数の最高点の人を合格にしようとしたんだけど
合格が0人目になってしまう 途中までのプログラム下に貼るんでアドバイスください
0245デフォルトの名無しさん2016/05/25(水) 17:00:51.35ID:grsxbFu1
>>244の続き
#include<stdio.h>

void main()
{
int i=0;
int a[5];
int b[5];
int c[5];
double tempmax;

printf("5人分の数学の点数を入力してください\n");

for( i=0; i<5; i++)
{
printf("%d人目の数学の点数:",i+1);
scanf_s("%d",&a[i]);
}

printf("英語の点数を入力してください\n");

for( i=0; i<5; i++)
{
printf("%d人目の英語の点数:",i+1);
scanf_s("%d",&b[i]);
}
0246デフォルトの名無しさん2016/05/25(水) 17:02:05.60ID:grsxbFu1
連投すいません さらに続き

for( i=0; i<5; i++)
{
c[i] = a[i] + b[i];

}
printf("%d,%d,%d,%d,%d",c[0],c[1],c[2],c[3],c[4]);
tempmax = c[0];

for( i=0; i<4; i++)
{
if(c[i]>tempmax)
{
tempmax = c[i];
}
}

printf("合格(A):%d人目 ",tempmax);
}
0247デフォルトの名無しさん2016/05/25(水) 17:13:25.35ID:hmlo+RWl
tempmax は最高得点を記録した double の値らしいが、
表示の方は「何人目」で int (%d) の値として扱ってるね。

他にも色々間違ってるけど、意味のある値が見えてくれば
検討の取っ掛かりになると思う。
0248デフォルトの名無しさん2016/05/25(水) 17:32:24.26ID:8+OpaV01
printf("合格者の得点: %f\n", tempmax);
0249デフォルトの名無しさん2016/05/25(水) 18:09:12.23ID:mqK6DNQr
最後のループではi<4ではなくてi<5。
最後のprintfでは最高点tempmaxを表示するようだけど、
何人目だからiを表示しないといけない。
最高点を取った人の番号を保存するための変数を用意して
最後のループを書き換える。
int no=0;
for( i=0; i<5; i++)
{
if(c[i]>tempmax)
{
tempmax = c[i];
no=i;
}
}
printf("合格(A):%d人目 ",no+1);
これでどうだ?
0250デフォルトの名無しさん2016/05/25(水) 18:12:42.26ID:mqK6DNQr
こっちの方がいいかな。
printf("合格(A):%d人目 %d点",no+1,(int)tempmax);
0251デフォルトの名無しさん2016/05/25(水) 18:46:25.87ID:grsxbFu1
>>249-250を参考にしたら数学英語の得点の最高合計点取った人が出るようになった ありがとう
でも、数学英語の両方とも上から5,4,3,2,1て入力したら-858993459人目って出るようになった
どっかforの範囲間違えたかな?
0252デフォルトの名無しさん2016/05/25(水) 20:07:47.10ID:GAaLSrgN
ちょっと前にFPGAでファミコン作ってみたって書いて、スレ違い、板違いって怒られた者です。
エミュならこの板で良さげなんで、スレッド立ててみました。

http://itest.2ch.net/test/read.cgi/tech/1464174113

良かったら遊びに来てください。
0253デフォルトの名無しさん2016/05/25(水) 20:09:18.71ID:grsxbFu1
>>251
自己解決しました
また質問なんだけど上から二番目の点数のデータ、もしくは、一番目のデータを除いた最高点数のデータ
ってどう表現すればいいの?
0254デフォルトの名無しさん2016/05/25(水) 20:12:29.33ID:6ZfKurqy
>>240
サンプルはいいとしてヘッダーファイルの警告ぐらい抑止しといてくれ
0255デフォルトの名無しさん2016/05/25(水) 20:25:21.80ID:Il38ptRz
>>217
でもあれでしょ?
c++/cliだとセットアップしたばかりのwindowsでは動かないでしょ?
0256デフォルトの名無しさん2016/05/25(水) 20:46:37.33ID:8+OpaV01
>>253
ソートしろ
0257デフォルトの名無しさん2016/05/25(水) 22:07:32.21ID:3hC190Yp
教えてください。
固定長テキストデータを、別ファイルに読み込む方法。
例えば3か月分の給料、15万6千円、18万7千円、19万3千円が
156187193とテキストデータで入っている。
156,187,193と切り出したい。
fscanf,fseek使ってもできませんでした。未熟者です。
0258デフォルトの名無しさん2016/05/25(水) 22:09:08.14ID:8+OpaV01
fgetcで1文字ずつ読み込める。
それを3回繰り返す。
0259デフォルトの名無しさん2016/05/25(水) 22:09:08.78ID:mqK6DNQr
ソートしないなら、tempmax1とtempmax2を用意して最初に最高点のtempmax1と順番を決定する。
次にtempmax2に対しても同じ計算をする。但し、c[i]<tempmax1を果たす。
要するに、最高得点を超えない場合の最高得点を求めればよい。
double tempmax1 = c[0],tempmax2 = c[0];
int no1=0,no2=0;
for( i=0; i<5; i++)
{
if(c[i]>tempmax1)
{
tempmax1 = c[i];
no1=i;
}
}
for( i=0; i<5; i++)
{
if(c[i]>tempmax2 && c[i]<tempmax1)
{
tempmax2 = c[i];
no2=i;
}
}
printf("合格(A):%d人目 %d点\n",no1+1,(int)tempmax1);
printf("合格(A):%d人目 %d点\n",no2+1,(int)tempmax2);
0260デフォルトの名無しさん2016/05/25(水) 22:38:48.23ID:grsxbFu1
>>259
参考にさせてもらって合格(A)はうまく出力できた
後半の合格(B)を出力するときにc[i]<tempmax1のtemomax1の値が計算が変わって
変わってしまってるからif(c[i]>tempmax2 && c[i]<tempmax1) こういうふうにできない

#include<stdio.h>

void main()
{
int i = 0;
int a[5];
int b[5];
int c[5];
int no1=0,no2=0,no3=0,no4=0,no5=0;
double MAX,MAx,Max,max;
int min;

printf("5人分の数学の点数を入力してください\n");

for (i = 0; i<5; i++)
{
printf("%d人目の数学の点数:", i + 1);
scanf_s("%d", &a[i]);
}

printf("英語の点数を入力してください\n");

for (i = 0; i<5; i++)
{
printf("%d人目の英語の点数:", i + 1);
scanf_s("%d", &b[i]);
}
0261デフォルトの名無しさん2016/05/25(水) 22:39:39.72ID:grsxbFu1
>>260続き
for (i = 0; i<5; i++)
{
c[i] = (double)1.2*a[i] + (double)0.8*b[i];
}

MAX = c[0];

for( i=0; i<5; i++)
{
if(c[i]>MAX)
{
MAX = c[i];
no1=i;
}
}
printf("合格(A):%d人目 ",no1+1,(int)MAX);

MAx = c[0];

for (i = 0; i<5; i++)
{
if (c[i] > MAx && c[i] < MAX)
{
MAx = c[i];
no2 = i;
}
}
printf("%d人目\n", no2 + 1, (int)MAx);

Max = c[0];
0262デフォルトの名無しさん2016/05/25(水) 22:42:35.41ID:grsxbFu1
>>261続き
for (i = 0; i<5; i++)
{
c[i] = (double)0.8*a[i] + (double)1.2*b[i];
}

for (i = 0; i < 5; i++)
{
if (c[i] > Max && c[i]<MAx)
{
Max = c[i];
no3 = i;
}
}

printf("合格(B):%d人目 ", no3 + 1, (int)Max);

max = c[0];
for (i = 0; i < 5; i++)
{
if (c[i] > max && c[i]<Max)
{
max = c[i];
no4 = i;
}
}
0263デフォルトの名無しさん2016/05/25(水) 22:43:25.22ID:grsxbFu1
<<262続き
連投すいません
printf("%d人目\n", no4 + 1, (int)max);

min = c[0];
for (i = 0; i < 5; i++)
{
if (c[i] >min && c[i]<max)
{
min = c[i];
no5 = i;
}
}
printf("不合格:%d人目", no5 + 1, min);
}
0264デフォルトの名無しさん2016/05/25(水) 23:24:12.02ID:mqK6DNQr
面倒な奴だな。質問を小出しにするなよ。手間を掛けさせるな。
1番目2番目とかじゃなくて
5番目6番目とかずっと先まで出力したいなら
並べ替えしてから出力した方が短くて簡単だぞ。
並べ替えの方法はそこら辺のアルゴリズムの本に
幾らでも書いてある。本を探すのが面倒ならwikiにも出ているぞ。
挿入ソートでも見ればC言語のソースも載っている。
それをコピペして使え。
0265デフォルトの名無しさん2016/05/26(木) 00:56:11.94ID:B/Q2fO5b
いい加減余所でやれ
C/C++の宿題片付けます 170代目 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1456908378/
0266デフォルトの名無しさん2016/05/26(木) 01:07:08.20ID:z4o5uVHs
int my_cmp(const void* c1, const void* c2)
{
0267デフォルトの名無しさん2016/05/26(木) 01:11:01.98ID:z4o5uVHs
int my_cmp(const void* c1, const void* c2)
{
 int a1 = *(const int*)c1;
 int a2 = *(const int*)c2;
}
....
int a[5];
int b[5];
int c[5];
....
qsort(a, sizeof(a)/sizeof(a[0]), sizeof(a[0]), my_cmp);
qsort(b, sizeof(b)/sizeof(b[0]), sizeof(a[0]), my_cmp);
qsort(c, sizeof(c)/sizeof(c[0]), sizeof(a[0]), my_cmp);
0268デフォルトの名無しさん2016/05/26(木) 11:39:15.27ID:G3Xzn+W/
配列に決められた数字を格納し、格納した数字の奇数か偶数のみを表示した後に指定された数ずらすプログラムを組んだのですが
数字をずらすところでうまく行かずに困っています、誰か助けてください。
例:a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4 ずらす数:2
a[0]=2,a[1]=3,a[2]=4,a[3]=0,a[4]=1


長いのでアップローダにtxtファイルをアップロードしました
http://fast-uploader.com/file/7019785771104/
0269デフォルトの名無しさん2016/05/26(木) 12:42:34.93ID:f2o0rrY8
>>268
表示するときにずらせばいいのでは。ずらす数をkとすると
for(i=0; i<NUM; i++) {
printf("a[%d] = %d ", i, a[ (i + k) % NUM ]);
}
0270デフォルトの名無しさん2016/05/26(木) 12:47:12.90ID:Cj4xC8mS
どういう環境で書いてる?
デバッガ使ってステップ実行するやりかた覚えたほうが今後のためになると思うが
0271デフォルトの名無しさん2016/05/26(木) 14:24:54.91ID:ZS10B00B
>>255
それを動かすのが漢だ
0272デフォルトの名無しさん2016/05/26(木) 14:47:38.51ID:UrTJJdUS
>>268
コードをよく読めなかったので最初の表示以降を適当に書いたんだけど
どうかな
http://codepad.org/dLVAfTEu
大きなループの中で全部やろうとせず表示とずらしで処理を分けた方が
考えやすいと思うよ
0273デフォルトの名無しさん2016/05/26(木) 19:05:11.96ID:fhnCNSUE
今日IT企業の面接で今まで作ったプログラム見せてほしいっていわれたので
渾身の力作を見せたところ人事の内一名からすごいたたかれました。

人事
「君のプログラムは短いのはいいけど複雑さがなくて物足りない。
MP3形式の録音ソフトとはいえ工夫すれば1万行は超えるけど1000行程度だし、
もっと何とかならなかったのかい?プログラムは簡素なほうがいいけど、
外部ライブラリを読み込んだり、DLLファイルとの連携部分もあったほうが素人っぽくなくなる。
本当に純粋にプログラミング言語中心で学んできた人が描いたようなプログラムだ。」

こんなこといわれてしまいました…
確かに容量は20KB程度で物足りないかもしれません。
他の3社にも同じのみせましたけどすごいって賞賛されました。
でもかなりの酷評(言い方は非常に柔らかい)でこんなこといわれたのは初めてです。
4年間プログラムを根詰めてやってきたなら1000行じゃ物足りないんでしょうか?
もっと外部ファイルととあえて連携させて複雑にしたほうがいいんでしょうか?
虚をつかれたような評価なので大変困惑しております。
皆さんはどうお考えですか?
0274デフォルトの名無しさん2016/05/26(木) 19:08:09.80ID:fhnCNSUE
確かにフリーソフトとか見てるとexeファイルの容量は最低でも1MBを超えていて
自分が作ったのはいつも数十KBで収まっているのは気になっていました。
だけど僕は4年間必死にC言語を勉強していて特に足らない点、もちろん業務知識は
0ですが基本的知識でPCの機能を実装することくらいはできます。
何かすごいショックで…
0275デフォルトの名無しさん2016/05/26(木) 19:15:59.92ID:KKsKg0mH
面白くないネタ
0276デフォルトの名無しさん2016/05/26(木) 19:39:49.89ID:5yoH/rz8
納得できんのなら無視して自分認めてくれるとこ行けばいいんじゃないのかね
モノがわからんのにどう?とか言われてもね
0277デフォルトの名無しさん2016/05/26(木) 19:53:00.42ID:fhnCNSUE
>>276
複雑なプログラムのメリットって何ですかね?
0278デフォルトの名無しさん2016/05/26(木) 19:53:52.50ID:fhnCNSUE
>>275
ネタではありません。
本当に言われたんです。
0279デフォルトの名無しさん2016/05/26(木) 20:13:49.57ID:6iXHX0kN
どこかにアップしなよ
評価してくれる人が出てくるだろ
アップできないならネタと言う評価で
0280デフォルトの名無しさん2016/05/26(木) 20:16:42.24ID:Z+cHO4t2
#include <stdio.h>
int a = 0;
void Func1(void) {
int b;
static int c;
printf("a:%p b:%p c:%p\n",&a,&b,&c);
if (++a<4) Func1();
else a = 0;
}
void Func2(void) {
int x;
printf("x:%p\n",&x);
Func1();
}
int main(void) {
Func1(); printf("\n");
Func1(); printf("\n");
Func2(); printf("\n");
return 0;
}
0281デフォルトの名無しさん2016/05/26(木) 20:34:20.78ID:c9LsFSoH
>>277
複雑さ自体にメリットはない
面接官も「プログラムは簡素な方がいい」と言っているのだろう?

憶測になるけど
もう少し大規模で複雑になるソフトを書いてみてほしいってことだと思うよ
君の見せたプログラムは「Hello world」のような
小さく簡単で単純なプログラムだと言いたいんじゃないかな
0282デフォルトの名無しさん2016/05/26(木) 20:36:30.24ID:M2X0d2Pu
>>273
デカければいいというものではない 同じ内容なら小さく短く書けるほうがエライ
同じ内容ならシンプルな方がエライ

でも○年間勉強しましたと言ってアピールする材料なのに 1000行程度ではあまりに物足りない
そもそもCで書くのは無駄が多く行数がイヤでも増えるからすぐに数千〜数万行行ってしまう
ファイル一本かならず1,000行以内に収めろと言われたら窮屈で仕方ないくらい

それに、どうせソースを軽く眺めた程度では実力なんてわからないし
イチから教える手間は省けますくらいのアピール力だよ
0283デフォルトの名無しさん2016/05/26(木) 21:05:22.73ID:fhnCNSUE
>>282
mp3形式またはwav形式でPCからでる音楽を記録するソフトです。
音質はフリーソフトと全く変わりませんでした。
どこを工夫すればいいんでしょう?全く考えが及びません。
0284デフォルトの名無しさん2016/05/26(木) 21:07:26.52ID:fhnCNSUE
複雑さの要因はほぼGUIコンポーネントだと考えているんですが
そこらへんを凝ればいいのでしょうか?
どうすれば長くなるのか全く見当がつきません。
0285デフォルトの名無しさん2016/05/26(木) 21:08:25.74ID:fhnCNSUE
>>282
別の面接官3人「なかなか1000行かける大学生はいない」
今日の面接官の内一人「1000行は少し物足りないなぁ…」

うーん…
0286デフォルトの名無しさん2016/05/26(木) 21:13:25.80ID:KKsKg0mH
もうちょっとリアルな設定にしないと面白くないよ
次からは自分の知ってる分野で書こうね。
0287デフォルトの名無しさん2016/05/26(木) 21:15:40.61ID:0wGqATI0
どっちにせよマ板で聞いてくれ
0288デフォルトの名無しさん2016/05/26(木) 21:20:36.96ID:M2X0d2Pu
>>285
上は「ド素人の大学生にしては頑張ってるね」
   (教育して見る価値があるかもしれない)

下は1から教育する気がないブラック寄りの企業
  きっと即戦力として鍛えてくれるよ
0289デフォルトの名無しさん2016/05/26(木) 21:26:33.06ID:fhnCNSUE
>>288
ご名答
0290デフォルトの名無しさん2016/05/26(木) 21:27:22.89ID:fhnCNSUE
自分を信じたい
0291デフォルトの名無しさん2016/05/26(木) 21:30:02.48ID:kT3OAx5i
面接官はプログラムを評価するのが目的じゃなくて
面接に来た人を評価するのが目的だからプログラムの評価自体に意味は無い
0292デフォルトの名無しさん2016/05/26(木) 21:41:57.14ID:fhnCNSUE
>>291
もしかしたら下の企業で採用あるかも…
ブラックぽいんだよな…
0293デフォルトの名無しさん2016/05/26(木) 21:44:40.05ID:fhnCNSUE
ちなみに1000行のプログラムは1か月かかりましたwww
0294デフォルトの名無しさん2016/05/26(木) 21:47:03.25ID:2uDctnGE
>>268です、遅レスになってしまい大変申し訳ありません。
みなさんとても丁寧に回答していただいて本当にありがとうございます!
今から皆さんの書いていただいた内容参考に頑張ります、本当にありがとうございました。
0295デフォルトの名無しさん2016/05/26(木) 21:48:24.27ID:YS/YHZQs
三十三間堂には何であんなに仏像があるの?
コレクターでもいたの?
0296デフォルトの名無しさん2016/05/26(木) 21:51:58.49ID:YS/YHZQs
間違えました
0297デフォルトの名無しさん2016/05/26(木) 21:53:29.21ID:tNvxuks+
わいニート、2週間で7000行のライブラリを書いたったwww
0298片山博文MZ ◆T6xkBnTXz7B0 2016/05/26(木) 21:56:40.29ID:W80Kwxkw
録音するプログラムなら、波形を見せるとカッコいいかも知れない。
他には音量調節とか。
0299デフォルトの名無しさん2016/05/26(木) 21:57:15.96ID:fhnCNSUE
>>297
羨ましいです。
ライブラリなんて作ろうと思ったことないです。
面接官的にはライブラリなんかもリンクしてればかっこいいみたいな…
なんなんだ…w
0300片山博文MZ ◆T6xkBnTXz7B0 2016/05/26(木) 22:00:53.60ID:W80Kwxkw
無音部分を自動でカットする機能があってもいいな
0301デフォルトの名無しさん2016/05/26(木) 22:03:17.27ID:rFYMqLi5
というか、そんなに気になるなら当人に聞いてみればよかったのに。
こちらは募集に応じてやってる身分なんだから遠慮なんていらないんだよ。
0302デフォルトの名無しさん2016/05/26(木) 22:13:55.26ID:5yoH/rz8
コミュ症なんだろ
0303デフォルトの名無しさん2016/05/26(木) 22:14:25.46ID:fhnCNSUE
>>298
イコライザーですか…
それだけで1000行くらいいきそうだww
俺は作りたいものを早く作りたいんですよね
0304片山博文MZ ◆T6xkBnTXz7B0 2016/05/26(木) 22:40:18.79ID:W80Kwxkw
人間は操作系が貧弱なソフトウェアにあまりお金を使わない傾向があるから、
シンプル過ぎるソフトは高く売れないんだよ。
0305デフォルトの名無しさん2016/05/26(木) 22:45:12.30ID:B/Q2fO5b
プログラマ板かとおもった
0306デフォルトの名無しさん2016/05/26(木) 22:53:28.09ID:fhnCNSUE
>>304
シンプルな目的にはシンプルなフリーソフトが一番だと思うから
単純なGUIのフリーソフトは重宝すると思いますけどねー
Windows7のほうが圧倒的人気なのもシンプルだからじゃないですか?
ソフトウェア業界ってこれから大丈夫なのかな…
0307デフォルトの名無しさん2016/05/26(木) 22:57:08.32ID:fhnCNSUE
IT業界ってがっかりするような話多くないですか?
これからIT業界に行きたい(C言語使いまくりたい)のに
残念なニュースばかり…

・ウイルス対策ソフトは半分も防御できていない
・Windows10の不人気ぶり
・OSから個人情報抜きとっている
・officeが1年ライセンスで1万円超え
0308デフォルトの名無しさん2016/05/26(木) 23:00:44.67ID:UjMbTLsx
たぶん最初から、不採用が決まっているから、君を馬鹿にしただけだろ

面接官なんて、気にしない方がいい。
そいつらは、2chの住民には勝てないからさ
0309デフォルトの名無しさん2016/05/26(木) 23:02:54.50ID:fhnCNSUE
>>308
その面接官褒めたふりして
「採用の観点からは違う評価するけど意気込みとかはすごいよね…」
とか言ってきてほかの面接官が苦笑したりしてました。
何かデリカシーないですよね。
0310デフォルトの名無しさん2016/05/26(木) 23:09:46.92ID:rFYMqLi5
だから不満があるなら本人に言えよ。
0311デフォルトの名無しさん2016/05/26(木) 23:46:56.88ID:KKsKg0mH
ネタじゃないように思えてきたわ…
こんな思い込みの激しく人の話を聞かない奴ならそんな事もあるんじゃないかと。
0312デフォルトの名無しさん2016/05/27(金) 00:35:44.59ID:q7OrZRlw
謎は解けた
もしこいつがライブラリフル活用したコード書いてたら、複雑すぎるといってお祈り
シンプルなコードだからシンプルすぎると言ってお祈り
要するにコイツを採用したくないだけだわ
俺が採用担当でも、板違いの指摘受けた上で話題までそらしていく奴取りたくねーもん
0313デフォルトの名無しさん2016/05/27(金) 00:46:42.46ID:TGBFEs+a
製品のプレゼンテーションではなくて採用面接なんだろ?
面接官はコードそのものを見たい訳ではない
応募者がコードを通じてどのように自己PRするか
意地悪っぽい突っ込みに対してどのように受け答えするか、そこを見てるはず
製品発表ではないのだから、売り込むべきはプログラムではなくて自分自身を優先するべきだった
その場の雰囲気がわからないので、どのように返すのが良かったのかは何とも言えないけど
0314デフォルトの名無しさん2016/05/27(金) 01:14:47.51ID:TGBFEs+a
ちょっと考えてみたけど、常道としては相手の言うことをひとまず肯定しつつ、コードをシンプルに保つメリットを
理解しているという基礎力をPRするか、他のレスにあるような機能追加のアィデアを幾つか挙げて応用力をPRするか
どちらかをその場の流れで返すくらいかなあ
実務的なコミュニケーション能力が試されていたんだよ
0315デフォルトの名無しさん2016/05/27(金) 02:34:39.42ID:q2+au5cx
>>77
Borland C++ 5.5
Cygwin

が15年前の時点で0円なんだが
ということは20年前も0円だったのかな?

そう考えてみると20年前からプログラミングの敷居なんて
高くないんじゃないかね。

プログラマが不足してるとか言われてるけど日本終わりすぎでしょw
0316デフォルトの名無しさん2016/05/27(金) 02:38:59.32ID:q2+au5cx
20年前だとバリュースターが中古で8万前後で売ってあったし
安価にプログラム十分できた時代だったんだよね。
何で20年前プログラムしなかったか本当後悔してるわ。
0317デフォルトの名無しさん2016/05/27(金) 02:50:19.29ID:8Borfexq
20年前というとVBの時代か
0318デフォルトの名無しさん2016/05/27(金) 03:12:12.17ID:2/vps+6r
20年前っていうと大昔の気もするけど
すでにwin95が発売済みなのか…
0319デフォルトの名無しさん2016/05/27(金) 05:45:29.41ID:Q4WE5iSk
今ならタダ同然の中古ノートにLinuxでも入れて…で
Cの勉強も手軽に始められるけど、昔はやっぱり敷居が高かったろ。

マルチOSは元のWindowsまで起動不能になる危険があったから
専用に1台調達しなくちゃいけなかった上に、PC自体も高価だった。
Linuxの導入にも手間がかかった。

Windowsで簡単に使えるLSI-C試食版は本当にありがたかったね。
本屋で売ってる雑誌の付録フロッピーで手に入ったし。
0320デフォルトの名無しさん2016/05/27(金) 06:52:30.71ID:TGBFEs+a
最近の途上国では高価なPCを買えないので、数百円から数千円程度のワンボードマイコン(ArduinoやRaspberryPiなど)を使って
プログラムを学んでいる若者が多いそうな(主にC言語とアセンブリ言語)
インドやアフリカあたりの一部地域では、プログラマは医師や弁護士なみのステータスだそうなので、サクセスドリームを
夢見る若者がかなりの人数輩出されてきており、将来的に現在の先進国の地位を脅かす存在になるだろうとか言われているな
0321デフォルトの名無しさん2016/05/27(金) 07:16:07.78ID:TGBFEs+a
補足するとC言語が注目されている IoT の分野での話
JavaやC++などのそれなりのリソースが要求される分野では直接の影響は少ないだろうけど、それらの人材の一部が
C言語でのスキルを武器に大学ででも本格的にプログラミングを学ぶことを考えれば途上国の潜在能力は侮れない
0322デフォルトの名無しさん2016/05/27(金) 07:17:23.25ID:ak6msHew
そういうポテンシャル高い奴は先進国に行って仕事するだろ
0323デフォルトの名無しさん2016/05/27(金) 07:32:20.02ID:TGBFEs+a
先進国では総じてプログラマの社会的地位は低い
日本ではIT土方とまで言われる始末
先進国での下層階層と、途上国でのエリート階層ではどちらが居心地が良いか
0324デフォルトの名無しさん2016/05/27(金) 07:53:05.91ID:aYCv3sEW
ブログにでも書いとけ。
0325デフォルトの名無しさん2016/05/27(金) 13:37:38.08ID:q2+au5cx
というかLinuxとか今でも使わんだろ
プログラミングならwindowsで十分
0326デフォルトの名無しさん2016/05/27(金) 13:42:31.76ID:zfNVlpD4
むしろプログラマの世界でLinuxに触ったことすらないというのは恥ずかしいレベル
0327デフォルトの名無しさん2016/05/27(金) 13:49:46.35ID:S2Ksk7l1
これからはWindows10でbashもネイティブで動くから(震え声
0328デフォルトの名無しさん2016/05/27(金) 14:15:22.27ID:q2+au5cx
あえて不便なLinux使う理由は?
0329デフォルトの名無しさん2016/05/27(金) 14:21:12.33ID:fvoGjXwU
>>328
お前が不便だと思いこんでるだけ
Linuxに慣れ親しんだユーザーが無視できない数要るからcygwinやらWindowsにLinuxサブシステムが搭載されたりしてるんだよ
0330デフォルトの名無しさん2016/05/27(金) 14:32:38.19ID:ftcnTlL4
プログラミング系の授業でWindowsを使う大学は少ない
そういうことですわ
0331デフォルトの名無しさん2016/05/27(金) 14:33:44.62ID:zfNVlpD4
Microsoft が MS-D0S 作るのに利用したOS、のはず
MS-DOSがUnixにどこか似ているのも仕方がないね。

>XENIX(ジーニックス・ゼニックス)とは、マイクロソフトによって開発されたUNIXである。
>安価なマイクロコンピュータで動作することから、1980年代半ばから1990年代初頭にかけて
>大きなシェアを誇った。
>1981年の最初の発表時はVersion7ベース、後にSystem III、System Vに追随し、BSD由来の
>機能も積極的に実装した。AT&Tからライセンスを受けた、世界最初の商業ベースのUNIXでもある。
■ このスレッドは過去ログ倉庫に格納されています