2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【2018年4月開学】東京通信大学Part.3

1 :名無し生涯学習:2018/11/01(木) 12:51:55.96 ID:8asb699G0.net
公式サイト https://www.internet.ac.jp/

前スレ
【2018年4月開学】東京通信大学Part.2 [無断転載禁止](c)2ch.net
https://mao.5ch.net/test/read.cgi/lifework/1523608385/l50

Part.1
https://mao.5ch.net/test/read.cgi/lifework/1504958052/

東京通信大学

・学部 学科
 情報マネジメント学部情報マネジメント学科
 人間福祉学部 人間福祉学科
・キャンパス
 東京 新宿駅前キャンパス(総合校舎コクーンタワー)
 大阪 大阪駅前サテライトキャンパス (大阪モード学園・HAL大阪 総合校舎)
 名古屋 名古屋駅前サテライトキャンパス (総合校舎スパイラルタワーズ)

設置者 学校法人 日本教育財団(旧学校法人モード学園)

2 :名無し生涯学習:2018/11/01(木) 20:47:34.57 ID:A6FvNO4K0.net
>>1
おつ!

3 :名無し生涯学習:2018/11/02(金) 13:20:22.59 ID:WNmV36II0.net
3年次編入がどうなるか気になるな

福祉の方は実習免除者が学費の安さにつられて集まりそうだけど
情報はどうだろう

4 :名無し生涯学習:2018/11/02(金) 14:11:13.85 ID:7TgI43kS0.net
>3
大学側では寮、社宅を希望者に紹介する予定…とのこと。

5 :名無し生涯学習:2018/11/02(金) 21:38:08.60 ID:LtwITSxL0.net
この大学入試に作文なんてあるのか入ろうと思ったけど無理ゲーかも

6 :名無し生涯学習:2018/11/03(土) 13:25:49.10 ID:mca5btJC0.net
プログラミングがわからん、1割程度しか合格してないおかしいもっと簡単にしろ。
とか言って奴、さっさと辞めたほうはいいと思う。本当に。
真面目に勉強してる側から見るといらないし。程度下げられ流の困るし。バカに合わせるんじゃなく、お前が努力して合わせるんだ。。

プログラマーになりたくねーとか言ってる奴も、だったら他の大学行って欲しい。

この学部には情報って名前ついてんだよ。今時、情報って名前付いていてプログラミングやりませんって文科省が認可すると思うか?

考えてから入学しろ。今なら20万ですすむからさっさと辞めろ。

7 :名無し生涯学習:2018/11/03(土) 18:04:59.57 ID:6kDadEOdr.net
合格した1割がまた暴れてんのか

8 :名無し生涯学習:2018/11/03(土) 18:11:44.19 ID:966+N1+J0.net
今学期も合格者1割だったのか
次は4楽器だね

9 :名無し生涯学習:2018/11/03(土) 19:26:41.61 ID:uLvKh0DL0.net
情報学部1年次の必修科目プログラミングの単位が合格率10%って。
入学する意味あるのか?
文部省に報告すべき低学力、低指導力だろう。
通信だからいいのか。

10 :名無し生涯学習:2018/11/03(土) 19:39:16.33 ID:aIPH5rzZ0.net
飼い主の足が大好き

https://m.youtube.com/watch?v=RoBKwVeEMiI

11 :名無し生涯学習:2018/11/03(土) 21:23:27.24 ID:uwiUAeFY0.net
今日は週末なので詳しく報告するよ。

課題 合格者数 開始 締切
2-1 182 46.7% 10/17 11/6
2-2 174 44.6% 10/17 11/6
2-3 148 37.9% 10/17 11/6
2-4 138 35.4% 10/17 11/6
3-4 78 20.0% 10/17 11/6
4-4 29 7.4% 10/24 11/13
5-4 20 5.1% 10/24 11/13
6-4 5 1.3% 10/31 11/20
7-4 1 0.3% 10/31 11/20

ズレたらすまん。

12 :名無し生涯学習:2018/11/03(土) 21:27:51.74 ID:uwiUAeFY0.net
もういちど。

課題    合格者数         開始      締切
2-1     182     46.7%     10/17     11/6
2-2     174     44.6%     10/17     11/6
2-3     148     37.9%     10/17     11/6
2-4     138     35.4%     10/17     11/6
3-4     78      20.0%     10/17     11/6
4-4     29       7.4%     10/24     11/13
5-4     20       5.1%     10/24     11/13
6-4     5       1.3%      10/31     11/20
7-4     1       0.3%      10/31     11/20

13 :名無し生涯学習:2018/11/03(土) 21:39:37.50 ID:uwiUAeFY0.net
これをだね、2-1をやった人の数を母数にする
(つまり実際には受講していない人の数を除外する)と、合格者の割合はこうなる。

課題    合格者数
2-1     182     100.0%
2-2     174     95.6%
2-3     148     81.3%
2-4     138     75.8%
3-4     78     42.9%
4-4     29     15.9%
5-4     20     11.0%
6-4     5     2.7%
7-4     1     0.5%

締切が近い第二回と第三回の割合はまずまず。
四回と五回はこれから増えてくるだろう。

14 :名無し生涯学習:2018/11/03(土) 23:30:47.01 ID:UnEu1NBP0.net
2−4がどうしてもわからん2−3のように
#include <stdio.h>

int main(int argc, char *argv[]){
int i, n;

scanf("%d", &n);
for(i= n; i<=m; i++){
printf("%d %d\n", i,i*i);
}

return 0;
}
じゃねーの?エラーがでるんだけど?
こうするとなぜか17点もらえるwww
#include <stdio.h>

int main(int argc, char *argv[]){
int i, n;

scanf("%d", &n);
for(i= 1; i<=n; i++){
printf("%d %d\n", i,i*i);
}

return 0;
}

15 :名無し生涯学習:2018/11/03(土) 23:34:34.35 ID:mca5btJC0.net
>>14
mの型定義と値はどうなってる?

16 :名無し生涯学習:2018/11/04(日) 06:17:42.70 ID:HS+dO3il0.net
>>14
そのコードでは「mがi以下なら」という条件はかけてるけど、変数mに値が代入されていない。

scanf("%d", &n); scanf("%d",&m);
こう書くと、標準入力の1文字目がnに、2文字目がmに代入される。
「整数 n、m が与えられたとき」はそういう意味。
これに気づきにくいんだよね。

intのとこにmの変数宣言もしておかないといけない。

17 :名無し生涯学習:2018/11/04(日) 06:30:23.43 ID:HS+dO3il0.net
誤 「mがi以下なら」
正 「iがm以下なら」

18 :名無し生涯学習:2018/11/04(日) 10:20:40.69 ID:oPhPs+/Z0.net
プログラムで煮詰まったら、休憩するなり違うことして一度離れると良い。
落ち着いてから俯瞰的に観ることで前に進める事が多々ある

19 :名無し生涯学習:2018/11/04(日) 12:39:03.83 ID:Wxt2U5lV0.net
あー3-4わからん
平均値出すと最大値最小値変になるし最大値出すと平均値最小値が変になる

20 :名無し生涯学習:2018/11/04(日) 13:13:48.16 ID:oPhPs+/Z0.net
>>19
お題とプログラム晒せばヒントぐらいは出せるカモよ。

21 :名無し生涯学習:2018/11/04(日) 14:12:48.86 ID:Wxt2U5lV0.net
>>20
お題は3-4 最大・平均・最小:データだけの入力
標準入力から複数のデータ(整数)が1行に1個ずつ与えられる。 それらのデータの最大値・平均値・最小値をこの順に1行ずつ使って書き出す。
最大値・最小値は必要最小限の桁数で書き出し、平均値は、整数部は必要最小限の桁数で、小数部は小数点以下3桁まで書き出すこと。

なんだけどとりあえず

#include <stdio.h>

int main(int argc, char *argv[]){
int m, M, d, s, i;

scanf("%d", &M);
s= 0;
for(i= 0; scanf("%d", &d)== 1; i++){

s+= d;
if( d>M ) M= d;
if( d<m ) m= d;
}

printf("%d\n", M);
printf("%.3f\n", (double)s/i);
printf("%d\n", m);

return 0;
}
って書いたら最大値だけ正しく出てあとはめちゃめちゃになる
scanf("%d", &M);消したら最大値だけおかしくなるなーって感じで行ったり来たりしてる
もしかしてfor文何個かいるのかなとかintの宣言数違うのかなとか考え出したりしてもうよくわからん

22 :名無し生涯学習:2018/11/04(日) 14:16:36.04 ID:oPhPs+/Z0.net
For 文の初期値が何故0なんだ?1で試してみたか?

23 :名無し生涯学習:2018/11/04(日) 14:23:48.22 ID:oPhPs+/Z0.net
あとmの初期化がないぞ

24 :名無し生涯学習:2018/11/04(日) 14:38:11.41 ID:4WpHwRbF0.net
・何故、最大値だけうまくいくか?
・最初に1行だけscanfした後にfor文でscanfするのか?

ここを考えるんだ。

与えられた数値同士を比較するんだよな。1番最初は比較するものがないから
まず各変数に最初のscanfでセットする必要があるよな。お前の場合は、最初の
scanfでMという変数に値をセットしている。だからMAXだけはうまくいく。

後はわかるな。

最後にコンパイルエラーは全部消せ。基本だ。

25 :名無し生涯学習:2018/11/04(日) 14:50:10.18 ID:HS+dO3il0.net
>>21
scanf("%d", &M);
s= 0;

この時点で、
 >最初の文字をMに読み込んだ。
 >sに0を代入した。(←ここはダメ)
 >mには何も代入されていない(←ここがもっとダメ)

おれの場合は、最初の文字をsに読み込んで、
それをMとmに代入した。
最初の一文字を読み込んだ時点で、sとMとmは全部同じ値にしておくこと。
一文字読み込んだ時点では、最大と最小合計は全て同じ値だからだよ。

26 :名無し生涯学習:2018/11/04(日) 14:50:20.96 ID:4WpHwRbF0.net
ついでだ。

最初のscanfで読んだMの値をsやmに代入してやるんだ、。
多分そこで詰むだろうから、先読みして記載しておく。

27 :名無し生涯学習:2018/11/04(日) 15:01:57.98 ID:Wxt2U5lV0.net
>>21-26
ああああああありがとう!!
for文の初期値を1にしてsとmをMに代入したらできました!

28 :名無し生涯学習:2018/11/04(日) 15:07:40.56 ID:4WpHwRbF0.net
やったな。おめでとう。
細かいことはいいから感覚だけ掴んでおけ。

29 :名無し生涯学習:2018/11/04(日) 21:10:35.28 ID:UIfo9W1O0.net
この大学の合格率が低いのかと思った
ここって受験は論文?

30 :名無し生涯学習:2018/11/04(日) 21:22:51.63 ID:ahyiU8p70.net
試験は小論文だけどアドミッションポリシーに沿って書けば落ちないはず

31 :名無し生涯学習:2018/11/04(日) 23:08:37.11 ID:HS+dO3il0.net
11月4日 23:00
49.5%   2-1  193名(49.5%) 【コピペ】
38.5%   2-4  150名(38.5%) 【変数 for文】
24.6%   3-4  96名(24.6%)  【変数 for文】
7.9%    4-4  31名(7.9%)  【条件分岐】
6.7%    5-4  26名(6.7%)  【ライブラリ】
1.8%    6-4  7名(1.8%)   【動的配列】
0.5%    7-4  2名(0.5%)   【メルセンヌ数 フィボナッチ数 循環小数】

32 :名無し生涯学習:2018/11/04(日) 23:26:05.20 ID:oPhPs+/Z0.net
>>31
いつもいつもありがとう

33 :名無し生涯学習:2018/11/04(日) 23:27:04.35 ID:jB/vdJ9Z0.net
ここの人たち親切だしなんか本と助け合ってるって感じ

34 :名無し生涯学習:2018/11/04(日) 23:32:00.73 ID:jB/vdJ9Z0.net
>>16さん
#include <stdio.h>

int main(int argc, char *argv[]){
int i, n,m;

scanf("%d", &n);scanf("%d", &m);
for(i= 1; i<=m; i++){
printf("%d %d\n", i,i*i);
}

return 0;
}
でやってみましたが100点にはなりません。。
これ以上に変えるところなんて・・

35 :名無し生涯学習:2018/11/04(日) 23:40:25.87 ID:oPhPs+/Z0.net
>>34
16では無いがそのプログラムでscanfで読み込んだnはどこかで使われてるの?

36 :名無し生涯学習:2018/11/05(月) 00:02:29.08 ID:5txKu8S00.net
>>34
お題がわからんが、お前さんが作ったプログラムを解説するから、よく見てお題とどこが違うか考えるんだ。

#include <stdio.h> //これは説明せずとも定型文だ。

int main(int argc, char *argv[]){ //これも定型文だ。
int i, n,m; //i,n,mのint型の型宣言

scanf("%d", &n);scanf("%d", &m); //標準入力(キーボード)からまずnを読む、次にmを読む

for(i= 1; i<=m; i++){ //初期値1としたiが、m以上になるまでの間繰り返せ。ただし増分は1だ。
printf("%d %d\n", i,i*i); //まず最初にiを標準出力(ディスプレイ)に表示し、次にi*i
を表示する。
} //for文冒頭にもどれ

return 0; //処理が終わったらリターンコード0を返せ
} //プログラム終わりだ。


ところでnはどこで使ってるんだ?

37 :名無し生涯学習:2018/11/05(月) 01:03:48.60 ID:dXXuMpXe0.net
>>34
16だよ。
すでに解説出てるけど、念のため。
nからmまで繰り返す、がお題。
それに対してキミのは「1からmまで繰り返す」になってるよ。
1をnに書き換えるだけ。

38 :名無し生涯学習:2018/11/05(月) 01:06:47.51 ID:dXXuMpXe0.net
>>34
いやてゆうか>>14ではi=nて書いてるじゃん。
わかっているのにケアレスミスってケースだったね。

39 :名無し生涯学習:2018/11/05(月) 12:31:54.10 ID:6jcf7ZaD0.net
>>34
ここまでいくとマヌケという言葉もありうる
あるいは既にできているのに狂言で大学を貶めようとしているか

40 :名無し生涯学習:2018/11/05(月) 13:43:46.11 ID:kS3TZ6Bi0.net
ここ出て本当にプログラマーになりたいって奴いるの?
スレの内容見てると中学生の技術家庭レベルだけど大丈夫なのか。

なんにせよプログラマーになりたいという目標はあんまおいしくないよ。
相当才能あるやつじゃないと元とれんぞ。(時間・金)
学業以外にもアンテナ張って情報収集していくのは当然として
コーダーどまりにならないように発想力も磨いていった方がいい。
お勧めはSEをとりあえず目標として据え、視野を広げる。
SEは死ぬほど大変な仕事だがプログラマーを目標にするより
現実味があるしキャリアアップしやすい。30代で芽が出るようならもうけもの。

41 :名無し生涯学習:2018/11/05(月) 13:50:42.00 ID:6jcf7ZaD0.net
>>40
>>スレの内容見てると中学生の技術家庭レベルだけど大丈夫なのか。
たしかに言えてる
まったくわからんって人、ほんとうにまったくなのか?
奇特な助っ人の時間を奪うための芝居じゃないか?
このレベルでまったくわからないなら情報系学部への適性はゼロ

42 :名無し生涯学習:2018/11/05(月) 13:56:57.89 ID:imlADz+D0.net
みなさんありがとうございます!ケアレスミス修正をしたらできました!
感謝いたします!

43 :名無し生涯学習:2018/11/05(月) 14:58:15.98 ID:g4hhM7n7M.net
英語の講義って発音やら穴埋めみたいな授業あるけど開いただけで出席扱いになるじゃん?あれってちゃんとやらないと評価に響く?

44 :名無し生涯学習:2018/11/05(月) 15:16:13.00 ID:Vu2q0b6j0.net
現在プログラミング実習で7−4まで到達してるの3人だけかよ

45 :名無し生涯学習:2018/11/05(月) 16:17:57.58 ID:imlADz+D0.net
3-1ガなぞです・・・


#include <stdio.h>

int main(int argc, char *argv[]){
int d, n, i;

scanf("%d", &n);
s= 1;
for(i= 0; i!=n; i++){
scanf("%d", &d);
s+= d;
}
printf("%d\n", s);

return 0;
}
エラーがなぜか出るんですが・・・

46 :名無し生涯学習:2018/11/05(月) 16:34:34.56 ID:imlADz+D0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, s, i;

scanf("%d", &s);
s= 0;
for(i= s; scanf("%d", &d); i++){

s+= d;
}
printf("%d\n", s);

return 0;
}
修正してみました

47 :名無し生涯学習:2018/11/05(月) 16:47:58.41 ID:imlADz+D0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, s, i;

scanf("%d", &d);
s= 0;
for(i= 0;scanf("%d", &d)==1; i++){

s+= d;
}

printf("%3f\n", (double)s/i);

return 0;
}

いやこうか

48 :名無し生涯学習:2018/11/05(月) 16:54:35.12 ID:+Lamb/5oa.net
まずは何のエラーか示そうよ。
sが型宣言されていないコンパイルエラーか?

だとすると何故かではなく出るべきとしてエラーになったんよ。

49 :名無し生涯学習:2018/11/05(月) 17:34:03.19 ID:imlADz+D0.net
48さん

3−2なんですが
#include <stdio.h>

int main(int argc, char *argv[]){
int d, s, i;

scanf("%d", &n);
s= 0;
for(i= 0; i!=n; i++){
scanf("%d", &d);
s+= d;
}
printf("%d\n", s);
printf("%d\n", i);
printf("%.3f\n", (double)s/i);

return 0;
}
とかいたところ
コンパイルに失敗しました
p2-2.c: In function 'main':
p2-2.c:6:18: error: 'n' undeclared (first use in this function)
scanf("%d", &n);
^
p2-2.c:6:18: note: each undeclared identifier is reported only once for each function it appears inとでます

50 :名無し生涯学習:2018/11/05(月) 17:44:50.83 ID:KBI+25V20.net
3-2なのですが、どこが間違ってるか分からないのでどなたかお力をお貸しください
#include <stdio.h>

int main(int argc, char *argv[]){
int d, s, i;

scanf("%d", &d);
s= 0;
for(i= 0; scanf("%d", &d)==1; i++){
s+= d;
}
printf("%d\n", s);
printf("%d\n", i);
printf("%.3f\n", (double)s/i);

return 0;
}

51 :名無し生涯学習:2018/11/05(月) 19:14:45.83 ID:jVKA2Jw0a.net
出先だから戻ったら見る。しばし待たれよ

52 :名無し生涯学習:2018/11/05(月) 19:16:49.23 ID:jVKA2Jw0a.net
>>49
nが型宣言されてないってよ。

53 :名無し生涯学習:2018/11/05(月) 19:23:44.44 ID:dXXuMpXe0.net
>>45
変数sが宣言されていないからコンパイルエラー

>>46
コンパイルエラーは出ない。
実行時間が1秒を超えるのでエラーとなる。

>>47
ほぼ正解。
出力の形式「小数点以下3桁まで」は[%.3]と書くべし。[%3]は整数部分の桁数のときね。

54 :名無し生涯学習:2018/11/05(月) 19:25:23.57 ID:jVKA2Jw0a.net
>>50

平均とはどうやって求める?
全体の合計を全体の個数で割るんだよな?
物を数える時どうやって数える?
一番最初のものを0から数えるか?
それとも1から数えるか?

後はわかるよな?

55 :名無し生涯学習:2018/11/05(月) 19:34:54.41 ID:dXXuMpXe0.net
>>50
scanf("%d", &d);  【1文字目をdに読み込む】
s= 0;  【なのに合計をゼロにしてしまう】
for(i= 0; scanf("%d", &d)==1; i++){  【2文字目以降を最後まで読んで合計する・読んだ回数を数える】
s+= d;
}

2文字目以降の数量と合計になっているからNGになる。
1文字目を読む行を消すだけで100点になるよ。

56 :名無し生涯学習:2018/11/05(月) 19:42:07.60 ID:jVKA2Jw0a.net
>>41
最初はこんな感じだ。3回目配信から本性が現れる。このままだと4回目配信時には耐えられない。ここでプログラム晒して救えるのもこの辺りまで。そろそろ手に負えなくなってここでは誰も助けなくなるだろう。

57 :名無し生涯学習:2018/11/05(月) 19:57:39.26 ID:KBI+25V20.net
>>55
返信ありがとうございます。
やってみましたが、1文字目を読む行の意味がよくわからないです。

58 :名無し生涯学習:2018/11/05(月) 19:58:59.01 ID:imlADz+D0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M;

scanf("%d",&M);
for(; scanf("%d", &d)==1;){
if( d>M ) M= 2;;
}
printf("%d\n", 1);

return 0;
}
3-3 ?

59 :名無し生涯学習:2018/11/05(月) 20:14:09.32 ID:KBI+25V20.net
>>55
できました!
scanf("%d", &d); の部分を消すだけだったとは…自分でもこの部分をなんで書いたか分からなかったです笑。お力添え感謝したします。

60 :名無し生涯学習:2018/11/05(月) 20:54:18.47 ID:CGYQsqDf0.net
卒業するまでこんな調子かね

61 :名無し生涯学習:2018/11/05(月) 21:09:49.32 ID:KBI+25V20.net
3-3です。ここからどうすれば良いか分からないので、力を貸してください
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M;

scanf("%d",&M);
for(; scanf("%d", &d)==1;){
if( d<M ) M= d;;
}
printf("%d\n", M);

return 0;
}

62 :名無し生涯学習:2018/11/05(月) 21:46:49.44 ID:zw35H4YU0.net
カラフルなおもちゃが大好き

https://m.youtube.com/watch?v=YFyOc-h-QPw

63 :名無し生涯学習:2018/11/05(月) 22:04:21.43 ID:46uuEz1j0.net
>>61
お題は「データの個数・最小値をこの順に1行ずつ使って書き出す。」
しかしそのコードでは個数を数えていない。
変数[i]を追加して、for文の中にいれる。
初期値は1で、繰り返すたびにi++だよ。

出力にもiの値を出力するようにすればOK!

64 :名無し生涯学習:2018/11/05(月) 22:31:32.90 ID:IAGUjoU80.net
11月5日 22:30
2-1  206名 (52.8%) コピペ
2-4  164名 (42.1%) 変数 for文
3-4  102名 (26.2%) 変数 for文
4-4  31名  (7.9%) 条件分岐
5-4  30名  (7.7%) ライブラリ
6-4  8名    (2.1%) 配列
7-4  4名    (1.0%) 長桁計算

第二回と第三回は明日が締切だよ。
でも締切を過ぎても再提出できるから大丈夫。おちついていこう。

65 :名無し生涯学習:2018/11/05(月) 22:35:10.43 ID:imlADz+D0.net
63さん

#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i;

scanf("%d",&M);
for(i=1; scanf("%d", &d)==1;){
if( d<M ) M= d;;
}
printf("%d\n", M);

return 0;
}ですか?

66 :名無し生涯学習:2018/11/05(月) 23:00:06.64 ID:7f/yPUHn0.net
>>65
もうひといき。
i++
が入ってないよ。for文の中に。

それからprintfでiも出力しておかないと。
Mを出力してる行の上に同じものをコピペして、Mをiに変えるだけだよ。

67 :名無し生涯学習:2018/11/05(月) 23:49:37.44 ID:imlADz+D0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i;

scanf("%d",&M);
for(i=1; scanf("%d", &d)==1,i++;){
if( d<M ) M= d;;
}
printf("%d\n", i);
printf("%d\n", M);

return 0;
}
エラーになりました
・・

68 :名無し生涯学習:2018/11/05(月) 23:51:41.97 ID:imlADz+D0.net
66さんありがとうございました
なんとかできました^^:

69 :名無し生涯学習:2018/11/05(月) 23:52:55.79 ID:4ntjFXOA0.net
>>64
これが楽しみだ

70 :名無し生涯学習:2018/11/06(火) 00:26:59.55 ID:bhXXzvUH0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i;

scanf("%d",&M);
for(; scanf("%d", &d)==1;i++){
if( d>M ) M= d;;
}
printf("%d\n", i);
printf("%d\n", M);
printf("%,3f\n", M);
return 0;

3-4?

71 :名無し生涯学習:2018/11/06(火) 01:00:05.45 ID:+6B8X6Sx0.net
>>70
いままでのは惜しいとこまでいってたけど、今度のはまだぜんぜん出来てない。

@
お題は「データの最大値・平均値・最小値をこの順に1行ずつ使って書き出す。」

変数Mは最大値を表している。
if( d>M ) M= d;
これは読み込んだ値がMより大きい場合、Mにdを代入する。
ここまで正しい。

いけてないのは、
最小値を格納する変数m(小文字のm)が無いこと。
変数mを定義して、Mと同様の処理を追加する。最小値なので
d<m
ここだけは大文字のMのときと逆にする。最小と最大の違いね。

A
for文の中に、iの初期化がない。i=1を追加しておいて。

B
printf("%d\n", i);?  【読み込んだ回数=データの個数】
printf("%d\n", M);?  【データの最大値を出力】
printf("%,3f\n", M);? 【データの最大値を小数点以下3桁で出力】
まず、データの個数はお題で求められていないので必要ない。
最大値を出力の行は正しい。
その次に最小値を出力する。前述のm(小文字)に変えて、小数点以下3桁の表示形式を加える。doubleへの型変更も必要。

おそらくまだわからないだろうから、出来たとこまでまたアップして。

72 :名無し生涯学習:2018/11/06(火) 01:10:08.05 ID:+6B8X6Sx0.net
>>70
つづき

printf("%,3f\n", M);
ここの、%と3の間はカンマではなくピリオド(ドット)が正しいよ。

お題で求められているのは最大・平均・最小の順なので、
printf(iではなくMに変える)
printf(Mではなくs/iに変えて、小数点いか3桁と指示する)
printf(最小値なのでMではなくmを出力)

73 :名無し生涯学習:2018/11/06(火) 01:14:09.96 ID:bhXXzvUH0.net
71さん
ほんとうにありがとうございます。

明日またやってみます、少しずつ判ってきた気がします。またコメントしますね

74 :名無し生涯学習:2018/11/06(火) 07:26:44.51 ID:bhXXzvUH0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i;

scanf("%d",&M);
for(i=1; scanf("%d", &d)==1;i++){
if( d>M ) M= d; if( d<m ) m= d;;
}
printf("%d\n", M);
printf("%.3f\n", s/i);
printf("%d\n", m);
return 0;
でp2-2.c: In function 'main':
p2-2.c:8:23: error: 'm' undeclared (first use in this function)
if( d>M ) M= d; if( d<m ) m= d;;
^
p2-2.c:8:23: note: each undeclared identifier is reported only once for each function it appears in
p2-2.c:11:18: error: 's' undeclared (first use in this function)
printf("%.3f\n", s/i);
^
p2-2.c:13:1: error: expected declaration or statement at end of input
return 0;
^とでました

75 :名無し生涯学習:2018/11/06(火) 08:19:28.89 ID:d5WMeN9D0.net
社会人の募集もう終わったのかな?

76 :名無し生涯学習:2018/11/06(火) 11:35:51.09 ID:PfoDjNUv0.net
>>74

mとsが宣言されていない

最初の1文字目を読み込んだ後、sとmとMは全て読み込んだ値を代入しておくこと。

s/iを出力するとき、int型からdouble型へ変換する。
(double)って前にアップしたコードでは書いていたはず。

これを修正すれば100点。

特に影響ないけど、セミコロンが2つダブってるところもある。

77 :名無し生涯学習:2018/11/06(火) 12:55:56.19 ID:0zXp1dri0.net
>>63
ご返事ありがとうございます。
できました!

78 :名無し生涯学習:2018/11/06(火) 13:07:14.19 ID:bhXXzvUH0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i, m, s;

scanf("%d",&M);
for(i=1; scanf("%d", &d)==1;i++){
if( d>M ) M= d; if( d<m ) m= d;;
}
printf("%d\n", M);
printf("%.3f\n",(double) s/i);
printf("%d\n", m);
return 0;

でもエラーが出ます

79 :名無し生涯学習:2018/11/06(火) 14:24:21.37 ID:XSy/n/NmJ
「初級プログラミング1」初級といってる割には難しくないかい?
SEの友人に見せても、いきなりこれは難しいと思うって言ってたよ。
いきなり色々やらせすぎだと思うよ。大学にクレームとか言う人もいるかもね。

80 :名無し生涯学習:2018/11/06(火) 13:30:21.34 ID:1GciP8ZR0.net
プログラミングで苦しんだ後はタレント教員で息抜きしましょう
ttps://twitter.com/tsukasa_TOU/status/1059467368659742720
(deleted an unsolicited ad)

81 :名無し生涯学習:2018/11/06(火) 14:16:45.56 ID:60KRoCr9a.net
>>78
Returnの後のカッコは?

82 :名無し生涯学習:2018/11/06(火) 15:50:04.07 ID:G+DM2Dn8M.net
クレクレくんばかりになったな。まぁ過疎ってるよりいいか

83 :名無し生涯学習:2018/11/06(火) 16:35:28.24 ID:Fg4jAc8+0.net
>>78
Mに一文字目を読み込んだ後、sとmにそれを代入すること。
それをしてないからsとmはからっぽのまま。

もうひとつ、sにdを足してない。
{  }の中にもうひとつ、s+=dの記述が必要。

84 :名無し生涯学習:2018/11/06(火) 18:58:33.52 ID:bhXXzvUH0.net
代入ってどうやるんですか?

85 :名無し生涯学習:2018/11/06(火) 19:00:56.57 ID:bhXXzvUH0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i, m, s;

scanf("%d",&M);
for(i=1; scanf("%d", &d)==1;i++){
if( d>M ) M= d; if( d<m ) m= d;;
s+=d 

}
printf("%d\n", M);
printf("%.3f\n",(double) s/i);
printf("%d\n", m);
return 0;

86 :名無し生涯学習:2018/11/06(火) 19:14:23.48 ID:+6B8X6Sx0.net
>>84
>>85

代入は、
m= M;
s= M;
こうだよ。これで、Mとmとは全て同じ値(最初に読み取った値)になる。

1文字読み取った時点では、それが最大値であり最小値でもあり、さらに合計値でもある。

87 :名無し生涯学習:2018/11/06(火) 19:25:14.57 ID:+6B8X6Sx0.net
需要があるっていいね。今日も報告いくよ!

11月6日(第二回第三回の締切日)19:20
2-1  229名 (58.7%) コピペ
2-4  183名 (46.9%) 変数 for文
3-4  121名 (31.0%) 変数 for文
4-4  32名 (8.2%) 条件分岐
5-4  31名 (7.9%) ライブラリ
6-4  8名 (2.1%) 配列
7-4  4名 (1.0%) 長桁計算

第六回、第七回は仕方ないにしても、
第三回、第四回の伸び悩みっぷりが激しい。

88 :名無し生涯学習:2018/11/06(火) 19:33:15.72 ID:O3vPiUkma.net
>>87
待ってました!
これが楽しみだ!

89 :名無し生涯学習:2018/11/06(火) 19:42:26.22 ID:O3vPiUkma.net
もう時間が無い。
総力戦で挑め戦士たちよ。
ここで晒すのも、ツイで投げるのも、学内yammerでhelpも、お友達のプログラマにも、Google先生を使い倒すのも、理解できなくともいい、まずはいかなる手段を使ってでも突破して欲しい。
後で見返して勉強すれば良いさ。

多分やらんけど。

90 :名無し生涯学習:2018/11/06(火) 19:43:14.56 ID:bhXXzvUH0.net
85さん

エラーでます
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, i, m, s;

scanf("%d",&M);
for(i=1; scanf("%d", &d)==1;i++){
if( d>M ) M= d; if( d<m ) m= M;;
s+=d s= M

}
printf("%d\n", M);
printf("%.3f\n",(double) s/i);
printf("%d\n", m);
return 0;

p2-2.c: In function 'main':
p2-2.c:9:1: error: stray '\343' in program
s+=d s= M
^
p2-2.c:9:1: error: stray '\200' in program
p2-2.c:9:1: error: stray '\200' in program
p2-2.c:9:8: error: expected ';' before 's'
s+=d s= M
^
p2-2.c:15:1: error: expected declaration or statement at end of input
return 0;
^
もうわけわかりません

91 :名無し生涯学習:2018/11/06(火) 20:33:02.30 ID:cOPvQRoT0.net
>>90

int d, M, i, m, s;?【変数dとMとiとmとsを宣言した。正しい。】

scanf("%d",&M);?【一文字目をMに読み込んだ。しかしsにもmにもそれを代入していない。】
for(i=1; scanf("%d", &d)==1;i++){【読み込めなくなるまで繰り返す。正しい。】?
if( d>M ) M= d; 【読み込んだ値がMより大きければその値をMに代入。正しい。】
if( d<m ) m= M;;?【読み込んだ値がMより小さければ、今までの最大値を最小値mに代入する(どう考えてもおかしい)】
s+=d s= M?【セミコロンが抜けてるから2つの文が繋がってる】

※セミコロンがあったとして、
s+=d;【読み込んだ値を合計値に加算する。正しい。】
s= M;【計算した合計値を捨てて最大値の値に書き換える(なぜ!?)】

92 :名無し生涯学習:2018/11/06(火) 20:33:42.03 ID:cOPvQRoT0.net
>>90 続き

※最後に必要な}が無くなってる。>>81が既に指摘してるよ。見てる?

今の所ぜんぜん進歩してない。てゆうかひどくなってる。
もう一度イチからやり直してみてはどう?

@一文字目を何等かの変数に読み込む。
Aそれをs, m, Mに代入して全て同じ値にしておく。
一文字目を読み込んだ時点ではその値が最大値であり最小値であり合計でもあるから。
B二文字目以降を読み取るを繰り返す(for文は今書いてるものでOK)
C繰り返しの中に
if( d>M ) M= d;
if( d<m ) m= d;
s+= d;
を置いておく。
dが最大値より大きければそれを最大値に代入、
dが最小値より小さければそれを最小値に代入、
合計値にはそのままdを合算する、
ってこと。

出力のあたりはちゃんとできてるよ。

セミコロンがダブってるとこも直されてないし、
最後のカッコが抜けてるのにも気づいてないし、
自分のコードをしっかり見つめてる気がしないよ。

93 :名無し生涯学習:2018/11/06(火) 21:09:06.44 ID:0+fUgJms0.net
>>90

p2-2.c:9:1: error: stray '\343' in program
p2-2.c:9:1: error: stray '\200' in program
p2-2.c:9:1: error: stray '\200' in program

に関しては以下を見よ。

http://owlsoft.xyz/cocos2dx/stray-200-in-program/

そして常に半角で入力しろ!

94 :名無し生涯学習:2018/11/06(火) 21:41:23.61 ID:XQHtKyqW0.net
プログラミングの講義についていくの辛くなってきた
小テスト10問なのは他の講義と同じだが記述問題多くて間違いやすくて時間もかかる
7回目の小テスト2問しか正解しなかったわ
「動画みて復習しなさい」って書いてたから明日動画見ながらやってみるけど良い点取れる気がしない

さらに毎回演習が4本追加されるのが苦痛
なんとか6-4まで来たけどリングの呪いってなんだよまったく

95 :名無し生涯学習:2018/11/06(火) 21:51:30.31 ID:bhXXzvUH0.net
91さん
いや代入ってなんですか。

どこに代入するんですか。

96 :名無し生涯学習:2018/11/06(火) 21:56:19.22 ID:bhXXzvUH0.net
一文字目をMに読み込んだ。しかしsにもmにもそれを代入していない。】のいみがわかりません。

97 :名無し生涯学習:2018/11/06(火) 22:03:02.42 ID:0+fUgJms0.net
>>87
いつもご報告いただいてお礼に1学期の結果を載せます。
データは比較することで見えることがあるとどっかの学校で習った思いがあるし。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

初級プログラミングI 1学期 Result 「哀・戦士 編」
(脳内BGMは各自に任せる)

1学期 プログラミング・ベース 総乗船者数:191名
*なお、1学期と3学期では多少の手が加えられているのでそのあたりご理解頂きたい。3-4以外は全て3課題しか無い。

2-1  113名 (59.2%) コピペ
2-3  100名 (52.4%) 変数 for文
3-4  62名 (32.5%) 変数 for文
4-3  49名 (25.7%) 条件分岐
5-3  56名 (29.3%) ライブラリ
6-3  42名 (22.0%) 配列
7-3  39名 (20.4%) 長桁計算
8-3 13名 (16.2%) コマンドライン

なお、死者、負傷者、行方不明者、および民間人、計144が連邦軍本部ジャブローにて下船。
47名がそのまま連邦軍帰属となり、再び宇宙へ還るのであった。
死闘に次ぐ死闘。47名の命運は。。

次回、プラグラミングII 2学期 「めぐりあい宇宙 編」ご期待ください。

98 :名無し生涯学習:2018/11/06(火) 22:08:15.84 ID:0+fUgJms0.net
>>97
ごめん修正。
2-1  113名 (59.2%) コピペ
2-3  100名 (52.4%) 変数 for文
3-4  62名 (32.5%) 変数 for文
4-3  49名 (25.7%) 条件分岐
5-3  56名 (29.3%) ライブラリ
6-3  42名 (22.0%) 配列
7-3  39名 (20.4%) 長桁計算
8-3 31名 (16.2%) コマンドライン

だった。ちなみに本当の地獄はここからで精鋭47名がどうなったかと言うと・・。

99 :名無し生涯学習:2018/11/06(火) 22:08:16.35 ID:bhXXzvUH0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, s, i, m

scanf("%d",&M);
scanf("%d",&m);
scanf("%d",&s);
scanf("%d",&i);
for(i=1; scanf("%d", &d)==1;i++;){
if( d>M ) M= d;
if( d<m ) m= d;
s+=d
}
printf("%d\n", M);

return 0;
}こんな感じですかね?

100 :名無し生涯学習:2018/11/06(火) 22:13:14.06 ID:bhXXzvUH0.net
#include <stdio.h>

int main(int argc, char *argv[]){
int d, M, s, i, m

scanf("%d",&M);
scanf("%d",&m);
scanf("%d",&s);
scanf("%d",&i);
for(i=1; scanf("%d", &d)==1;i++;){
if( d>M ) M= d;
if( d<m ) m= d;
s+=d
}
printf("%d\n", M);
  printf("%.3f\n",(double) s/i);
  printf("%d\n", m);

return 0;
}

総レス数 1009
319 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★