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

java独学のワイ、素数判定プログラムが書けない

1 :仕様書無しさん:2018/07/13(金) 18:20:24.06 .net
JavaDriveというサイトでFor文まで理解するも書けない模様

ワイにプログラマーの資格はないんか?

2 :仕様書無しさん:2018/07/13(金) 18:20:50.72 .net
FizzBuzzは書けた

3 :仕様書無しさん:2018/07/13(金) 18:56:12.28 .net
資格はともかく才能も適正もない。

資格はともかくというのは全く無能のくせに丸暗記でJava Bronzeを取った人がいる前例があるから、
資格だけなら取れるかもしれない。
正直for文くらい直感でわからないようではプログラマーの適正は皆無。

4 :仕様書無しさん:2018/07/13(金) 19:10:30.58 .net
頭で理解しただけで書けるわけないだろ
学校のテストじゃねえんだよ

5 :仕様書無しさん:2018/07/13(金) 19:34:45.05 .net
片っ端から割れるか試すだけっしょ
for文で余裕じゃん

6 :仕様書無しさん:2018/07/13(金) 19:37:16.04 .net
小さい数字ならいいけどハチャメチャデカイ数字だとめっちゃ時間かかりそう

7 :仕様書無しさん:2018/07/13(金) 21:28:00.20 .net
>>3
じゃあほとんどの奴がプログラマーになれないな

>>5
どんな風に?

8 :仕様書無しさん:2018/07/13(金) 21:38:25.19 .net
どんな風にも何も・・・

for(i=2;i<入力値;i++){
if((入力値 % i == 0 ){print("素数じゃない");exit(0);}
}
print("素数だよ");

こんだけじゃないの?0,1は素数じゃないよってif文がもう一個あれば。
これくらいは3分で直感でやらんと・・・これが合ってるかしらんけどw

9 :仕様書無しさん:2018/07/13(金) 21:39:52.87 .net
求人で「未経験からプロのエンジニア」とあるけど、
ワイにもできるか心配だわ

10 :仕様書無しさん:2018/07/13(金) 21:41:02.32 .net
>>8
exitってなんや?

11 :仕様書無しさん:2018/07/13(金) 21:42:45.65 .net
javaだとSystem.exit()。俺はjavaを知らんけど、その辺もググってさっと変換できるセンスはプログラマには必要だと思うぞw

12 :仕様書無しさん:2018/07/13(金) 21:44:46.55 .net
未経験歓迎は奴隷要員

13 :仕様書無しさん:2018/07/13(金) 21:51:21.06 .net
>>11 ほーなんやな〜

int n = 100;
for(int i = 2; i<n; i++){
for(int a = 2; a<i; a++){
if(i%a == 0){
System.out.println(i + "は素数でない");
}else if{
System.out.println(i + "は素数");

ここまで来てるんやけど、
iに対してaがi>aを満たすまで全部の数表示されるから困ってる。

14 :仕様書無しさん:2018/07/13(金) 21:53:36.63 .net
>>13
2回目の条件分岐はelseのみだった

15 :仕様書無しさん:2018/07/13(金) 21:58:32.79 .net
>>13
ネスト多分必要ないぞ?>>8見てや。こんだけでいい(多分)。えらいややこしいことになってない?w
俺が即興で思いつたのじゃ動かんけ?

16 :仕様書無しさん:2018/07/13(金) 22:05:53.65 .net
>>15
動かんけ

17 :仕様書無しさん:2018/07/13(金) 22:10:48.44 .net
めんどかったけどpaizaで試したら動くやんけw
まさかとは思うが>>8をそのままコピペして動かんと言ってる訳じゃなかろうな?

18 :仕様書無しさん:2018/07/13(金) 22:13:57.49 .net
>>変数は入力したけど動かへん

19 :仕様書無しさん:2018/07/13(金) 22:17:22.31 .net
知能障害があるんじゃないのか?

20 :仕様書無しさん:2018/07/13(金) 22:19:32.04 .net
いいか?>>8は別にjavaで動かすように書かれてる訳じゃないからな?単に「流れ」だからw
>>8をjavaで動くように色々変えて、最後に入力値が2未満なら素数じゃないと表示させる条件を加えなさい。

それすら無理なら確実にプログラマは無理だw

21 :仕様書無しさん:2018/07/13(金) 22:20:04.01 .net
何がわからないのかがわからない

22 :仕様書無しさん:2018/07/13(金) 22:21:36.54 .net
www

23 :仕様書無しさん:2018/07/13(金) 22:25:20.96 .net
>>13
nまでの素数を表示するためにi回インクリを繰り返すんやが、
二回目のFor文は iに対してiまでの自然数で検算しようと思ったんや。
a回繰り返してな。

その結果、iがaまでの自然数全てで割られるんやが、
一つのiに対してa個全て割る過程が表示されてしまうんや。

そこが問題

24 :仕様書無しさん:2018/07/13(金) 22:31:29.10 .net
検算の過程が表示されてしまうからそれを省略したい。
iまでのaで全て検算した結果、「そのiは素数」と表示したいんや。

25 :仕様書無しさん:2018/07/13(金) 22:33:46.38 .net
自分で表示しておいて何言ってんだこの馬鹿は

26 :仕様書無しさん:2018/07/13(金) 22:35:15.83 .net
>>25


27 :仕様書無しさん:2018/07/13(金) 22:36:13.76 .net
そらfor文の中にprint書いてりゃ表示されるわな
書かなければええんちゃうん?w

どうも俺に彼の問題を解決するのは無理のようだ・・・

28 :仕様書無しさん:2018/07/13(金) 22:40:09.67 .net
こう見えても明治卒やで

一応IT系に内定を貰ってるから軽く勉強のつもりが池沼やったんなや〜
びっくりや

ってことでコピペグラ―になるわ!
ほなっ!

29 :仕様書無しさん:2018/07/13(金) 22:42:24.67 .net
結局のところ、何かの真似をしているだけで自分で何やってるかすら
理解してないんだろ?
プログラマー目指すなんて言っておきながら、その程度の労力すら
惜しんでスレ立てて人に聞いてるとか、嗤わせるにもほどがある

30 :仕様書無しさん:2018/07/13(金) 22:43:58.41 .net
>>29
全部自分で考えてるし、真似はしてない
FizzBuzzは簡単やったのにどうしてかな〜

31 :仕様書無しさん:2018/07/13(金) 22:43:59.19 .net
明治卒うせやんwww
I地頭はあるんだろうから必死で勉強しぃやw
今のレベルじゃすぐに営業に配置転換ぞw

32 :仕様書無しさん:2018/07/13(金) 22:45:18.25 .net
>>31
嘘やで通信高卒や

33 :仕様書無しさん:2018/07/13(金) 22:45:21.72 .net
public class Main {
 public static void main(String[] args) {
  int n = 100;
  for (int i = 2; i < n; i++) {
   boolean ok = true;
   for (int j = 2; j < i; j++) {
    if (i % j == 0) {
     ok = false;
    }
   }
   if (ok) {
    System.out.println(i + "は素数");
   } else {
    System.out.println(i + "は素数ではない");
   }
  }
 }
}

34 :仕様書無しさん:2018/07/13(金) 22:45:29.07 .net
学部ならともかく学校とプログラマーの適正に因果関係があると思っているなら
正真正銘の知障なので診察受けたほうがいい。
この板の有名荒らしの36歳みたいになるぞ。
36歳も大卒大卒アピールするだけで何にもできない人間のクズだった。

35 :仕様書無しさん:2018/07/13(金) 22:46:48.95 .net
>>32
お前は本当に何がしてぇんだよw

36 :仕様書無しさん:2018/07/13(金) 22:49:29.69 .net
>>35
すまんな、ただ教えてほしかっただけなんや
プログラム楽しいからさ

37 :仕様書無しさん:2018/07/13(金) 22:52:26.64 .net
関西の豪雨で水に流されるのはワイの方が良かったんやな〜

38 :仕様書無しさん:2018/07/13(金) 22:59:52.53 .net
もしかして落ち込むふりして同情でも買おうとしているつもりなの?
それで来年から社会人?
来年新中学生の間違いじゃないの?

39 :仕様書無しさん:2018/07/13(金) 23:02:58.07 .net
小学生未満だろ
こいつも発達障害か

40 :仕様書無しさん:2018/07/13(金) 23:17:05.26 .net
発達障害は精神が幼いって意味じゃない
生半可な知識でマウントに使うなよ

41 :仕様書無しさん:2018/07/13(金) 23:20:50.63 .net
>>5
public static void main(String[] args) {
 for (int i = 0; i < 100; i++) {
  if (isPrime(i)) {
   System.out.println(i);
  }
 }
}

static boolean isPrime(int n) {
 if (n < 2) {
  return false;
 }
 for (int i = 2; i < n; i++) {
  if (n % i == 0) {
   return false;
  }
 }
 return true;
}

42 : :2018/07/14(土) 00:42:30.34 .net
失礼します。
私も触発されて、FizzBuzzのコードをコメント付きで書いてみました。
https://ideone.com/McsJKW
よろしければ、スレ主さんのFizzBuzzのコードもアップして貰えませんか?

43 :仕様書無しさん:2018/07/14(土) 01:53:12.20 .net
>>1
この>>42はJava一年半やってる36歳無職
こんな風になっちゃだめ

44 :仕様書無しさん:2018/07/14(土) 06:42:41.79 .net
>>42

for(int a = 1; a<101; a++){
if(a%3 == 0){
System.put.println("Fizz");
}else if(a%5 == 0){
System.put.println("Buzz");
}else if(a%3 == 0 && a%5 == 0){
System.put.println("FizzBuzz");
}else{
System.put.println(a);
}
}

どうかな?

45 :仕様書無しさん:2018/07/14(土) 07:12:18.46 .net
>>42
java初めて数か月も経ってないけど、
ワイは論理を変換する能力がないから詰んでるのかなぁ

46 :仕様書無しさん:2018/07/14(土) 10:16:18.43 .net
>>42
7で割り切れるときはHamuと出力してください

47 : :2018/07/14(土) 12:25:28.65 .net
>>44
ありがとうございます。
>>43が言うように、俺はそれほどプログラムに習熟していませんが、
僭越ながら指摘させて頂きます。
あなたのコードだと、始めに3の倍数を全て抽出してしまうので、
3の倍数でかつ5の倍数(15など)が全てFizzBuzzではなくFizzとして
出力されてしまいます。これは5の倍数についても同じことが言えます。
そこでまず3の倍数かつ5の倍数を切り出し、それから3の倍数や5の倍数を
表示するとよいと思います。

48 :仕様書無しさん:2018/07/14(土) 12:34:02.26 .net
こいつに指摘される男の人って・・・

49 :仕様書無しさん:2018/07/14(土) 12:38:00.46 .net
>>47
調べりゃすぐ出てくることをよくそんな偉そうと無駄に長く言えるなw

50 : :2018/07/14(土) 12:41:17.77 .net
>>45
多分、練習によるものが大きいと思います。

俺の場合、当初は(C言語ですが)ポインタや構造体でつまずいていましたが、
今ではオブジェクト指向も理解できるようになりました。
学習方法や学習時間で伸び方は変わってくると思います。

51 :仕様書無しさん:2018/07/14(土) 12:46:26.20 .net
>>50
オブジェクト指向はどういうものか簡潔に説明してみて

52 :仕様書無しさん:2018/07/14(土) 12:48:29.04 .net
>>50
オブジェクト指向で作ったプログラムを見せてみて

53 :仕様書無しさん:2018/07/14(土) 13:37:41.37 .net
マウント取りたくてしょうがないって感じのレスだな

54 :仕様書無しさん:2018/07/14(土) 13:46:17.38 .net
ダラダラ長いコード書きやがって

55 :仕様書無しさん:2018/07/14(土) 13:48:29.47 .net
>>47
else if なら順不同でしょ?
elseのみならともかく

100までの「i」がif文によって上の条件式を満たす形で置き換わっていく。
という風に捉えてるけど。

cmdで走らせてみたけど最初に3の倍数全ては表示されないよ。

for(int a = 1;a<101;a++){
if(a%3 == 0){
System.out.println("Fizz");
}else if(a%5 == 0){
System.out.println("Buzz");
}else if(a%5 == 0 && a%3 == 0){
System.out.println("FizzBuzz");
}else if(a%7 == 0){
System.out.println("Hamu");
}else{
System.out.println(i);

※Hamu付き

56 :仕様書無しさん:2018/07/14(土) 13:51:06.21 .net
あー そうやったんや〜

確かにFizzBuzz出てこんわ

57 :仕様書無しさん:2018/07/14(土) 13:52:41.86 .net
>>47
なったで

for(int a = 1;a<101;a++){
if(a%5 == 0 && a%3 == 0){
System.out.println("FizzBuzz");
}else if(a%5 == 0){
System.out.println("Buzz");
}else if(a%3 == 0){
System.out.println("Fizz");
}else if(a%7 == 0){
System.out.println("Hamu");
}else{
System.out.println(a);

58 :仕様書無しさん:2018/07/14(土) 13:56:22.43 .net
スレ主も36歳もコピペばかり

59 :仕様書無しさん:2018/07/14(土) 14:02:53.71 .net
>>57
if、else ifはどれか一つでもtrueになるとそのブロック内しか通らない
だから優先的に判定したい条件は先に書かないといけない
ちなみに>>57のコードだと5や3の倍数かつ7の倍数が考慮漏れしてるね

60 :仕様書無しさん:2018/07/14(土) 14:04:36.95 .net
>>58
自分で書いたもの以外のコピペはしてないで

条件式が一つで後にほぼ同じ抽出内容の複数条件式を持つ分岐が控えている場合
先に複数の方を書かんと、先にある一つの条件式を先に満たしてしまって
そこで抜けてまうのか

>>47 感謝やで

61 :仕様書無しさん:2018/07/14(土) 14:06:28.22 .net
>>59 ほんとやわ

少し考えるわ

62 :仕様書無しさん:2018/07/14(土) 14:12:26.69 .net
>>59 考えたんやけど
条件式が優先されるから仕方ないんちゃう?

63 :仕様書無しさん:2018/07/14(土) 14:14:19.52 .net
>>59
組み合わせか?

64 :仕様書無しさん:2018/07/14(土) 14:14:56.11 .net
>>61
バグってこういう些細なことで生まれるからね
自分の書いたコードが要求や仕様を満たしてるか見直してみるといいと思うよ

65 :仕様書無しさん:2018/07/14(土) 14:21:42.11 .net
>>64
直してみたで!

for (int a = 1;a<101;a++){
if(a%3 == 0 && a%5 == 0 && a%7 == 0){
System.out.println("横山やすし");
}else if(a%3 == 0 && a%5 == 0){
System.out.println("FizzBuzz");
}else if(a%3 == 0 && a%7 == 0){
System.out.println("おっぱい");
}else if(a%5 == 0 && a%7 == 0){
System.out.println("焦げたおっぱい");
}else if(a%5 == 0){
System.out.println("Buzz");
}else if(a%3 == 0){
System.out.println("Fizz");
}else if(a%7 == 0){
System.out.println("Hamu");
}else{
System.out.println(a);

66 :仕様書無しさん:2018/07/14(土) 14:23:23.70 .net
組み合わせでいいんじゃね?と思いついたから
手当たり次第に作ってみた

67 :仕様書無しさん:2018/07/14(土) 14:23:36.35 .net
>>62
5と3で出来ていることを7も追加してやるだけ
しかしこれではひとつ条件が増えると大量の書き直しが発生してしまうことに気づいたら次は拡張性を考える

68 :仕様書無しさん:2018/07/14(土) 14:55:55.45 .net
>>65
上の条件式の方を通り抜けてしまうなら、
条件同士をくっつけちまえばいいんやない?

3,5,7の倍数は一つの条件式で表示できるし、
複数の共通倍数だったら、包括してしまえばいいんだし

69 :仕様書無しさん:2018/07/14(土) 14:58:15.79 .net
def a(x):
if x%2==0:
print('偶然')
elif x%3==0:
print('奇数')


for i in range(1.11):
a(i)

70 :仕様書無しさん:2018/07/14(土) 14:59:30.54 .net
nao,
2 or 3=15

71 :仕様書無しさん:2018/07/14(土) 15:01:55.17 .net
>>69
>>70
for i in range(1.11):
a(i)

これはなんや??

72 :仕様書無しさん:2018/07/14(土) 15:07:52.59 .net
従って、
for
for
if ?==0

73 :仕様書無しさん:2018/07/14(土) 15:29:35.32 .net
>>1

ない。
迷惑だからプログラマにならないで欲しい。

74 :仕様書無しさん:2018/07/14(土) 15:35:00.26 .net
>>73
実際For文まで勉強して解ける人は何人くらいおるんやろなぁ

75 :仕様書無しさん:2018/07/14(土) 15:39:02.73 .net
見える、未来が見える
>>1が高学歴であるがゆえに根拠なく自分の能力を信じて
電卓ソフトを作ったあたりで満足してSEやPMにシフトし
むちゃくちゃな設計を末端に押し付けて責任転嫁する未来が…

76 :仕様書無しさん:2018/07/14(土) 16:25:52.79 .net
>>60
if 無しで書きましょう

77 :仕様書無しさん:2018/07/14(土) 18:10:43.63 .net
>>75
哭きの竜のネタ?
こんなのがSEになる時点で終わりやん・・・

78 :仕様書無しさん:2018/07/14(土) 18:17:09.00 .net
未経験文系でーすSEでーす

79 : :2018/07/14(土) 19:12:59.68 .net
たびたび失礼します。
スレ主さんに、助言が伝わったみたいで良かったです。
素数判定の方は、for文の知識に加え、break文・continue文・フラグの内
いくつかの知識が必要になると思うので、もし未習ならググることをお勧めします。
出しゃばりみたいで恐縮ですが、俺も素数判定のコードをコメント付きで
書いてみましたので、よろしければ参照下さい。
https://ideone.com/ITtLsp

80 :仕様書無しさん:2018/07/14(土) 19:26:41.60 .net
>>79
お前それじゃ遅いからって高速化の方法教えてもらってただろうが
何にも身についてないのかよ

81 :仕様書無しさん:2018/07/14(土) 19:47:23.88 .net
>>77
何を言っているんだ?
PG上がりのSEが世の中を支え、SE業を邁進してきたゴミクズが会社で弄ぶ
日本のSIerの多重下請け構造そのものじゃないかw

スレ主に適性はないので、半端な知識を身に付けないで
管理系のスキルを磨くことをお勧めする
「現場を知るため」以上の目的でプログラミングにのめりこまないほうがいい
プログラミングができない無能は管理に回され昇進する、これが日本の常識
出世したいなら人を使う能力を磨くことだ
プログラマーなんてどの会社でも40くらいでおしまいだよ
下手すりゃ管理職候補にすらなれずリストラ対象

82 :仕様書無しさん:2018/07/14(土) 20:20:28.33 .net
スレ主だけど、if文とFor文しかやってない
これだけの知識で任意の数まで素数を判定していく事ができるか否かで
適正って決まるもんなんか?

83 :仕様書無しさん:2018/07/14(土) 20:38:05.06 .net
>>82
決まらないよ
知ってるかどうかだからね
0から考えて実装してる人なんてそうはいない

84 :仕様書無しさん:2018/07/14(土) 20:39:39.73 .net
>>82
就活でプログラマの適性検査受けなかった?
とても簡単な問題で適性がA〜Eで判定されるよ。
プログラマの適性に知っている言語の知識なんて関係ないよ。

85 :仕様書無しさん:2018/07/14(土) 20:40:06.44 .net
>>83
え?みんな0から考えてるんじゃないの?
PGは0からコードを書いて、機能を作るもんだと思ってた

86 :仕様書無しさん:2018/07/14(土) 20:41:17.65 .net
>>84
就活してない
ただネットのプログラマー適正試験を受けた事はある。
CAB?だけは出来なかった

87 :仕様書無しさん:2018/07/14(土) 20:42:28.33 .net
>>82
Javaの適性ならともかく、プログラミングの職業適性となると
問題解決の筋道そのものが適性の評価対象だから、
こんなところで質問しちゃう時点で適性ゼロじゃないかなw

88 :仕様書無しさん:2018/07/14(土) 20:42:33.33 .net
>>79
素数の出力はもっと簡単で効率の良いやり方があるよ

boolean[] p = new boolean[100];
for (int i = 2; i < p.length; i++) {
 if (p[i]) continue;
 for (int j = 2; i * j < p.length; j++) p[i * j] = true;
 System.out.println(i);
}

89 :仕様書無しさん:2018/07/14(土) 20:43:04.12 .net
>>85
こんなことできた気がするなーでググるよ

90 :仕様書無しさん:2018/07/14(土) 20:43:21.61 .net
>>86
>ただネットのプログラマー適正試験を受けた事はある。

結果はどうだったの?

91 :仕様書無しさん:2018/07/14(土) 20:45:57.08 .net
素数判定で2の倍数を真面目に判定しているロジックは
それだけで評価に値しない。
FizzBuzzをまともに答えているのと同じ。

92 :仕様書無しさん:2018/07/14(土) 20:48:07.10 .net
>>89 それコピペグラ―やん
でも効率は良いよね

>>90 どんなサイトのテストを受けたのかにもよるけども、
http://www.beafoster-hd.co.jp/aptitude-test ←ここは簡単で満点

他は受けてないからこれからって結果張ろうかな

93 :仕様書無しさん:2018/07/14(土) 20:50:05.44 .net
>>92
コピペするわけじゃなくて調べるっしょ
ゼロから全部自分で考えるのは効率悪いよ

94 :仕様書無しさん:2018/07/14(土) 20:50:56.67 .net
>>87 今からその姿勢を直せばいいんでないの?
>>91 if文とFor文の知識だけだと真面目にやるしかない気がする

95 :仕様書無しさん:2018/07/14(土) 20:52:35.70 .net
ifは小文字なのにforのFだけ大文字なの何なの?
超気持ち悪いんだけど自分で気持ち悪いとは思わないの?

96 :仕様書無しさん:2018/07/14(土) 20:54:32.16 .net
>>95 無意識にやってた。何か気持ち悪いわ

97 :仕様書無しさん:2018/07/14(土) 20:55:21.69 .net
こりゃ適性ねえわw

98 :仕様書無しさん:2018/07/14(土) 20:55:42.84 .net
>>94
20過ぎた人間が簡単に矯正出来たら苦労ないわ。
だから適性で弾くんだよ。
この先矯正できるかどうかなんて関係ない。
矯正して金にならない適性ないPGやる暇あるなら
営業でも管理でも適性がありそうなのを覚えろ、って
いうのが企業。

99 :仕様書無しさん:2018/07/14(土) 20:56:46.56 .net
>>98
そうでもないかと
ちゃんと教育する会社がまともな会社ですよん

100 :仕様書無しさん:2018/07/14(土) 20:59:10.78 .net
適性が身に付くならいいけど、半端に適性がある振りが通ってしまって
本当は適性がないのに新人研修で評価されてしまってPGに就いたら、
それこそ悲惨な人生なんだが、その辺わかってるのかな。
今までやってきてなかったってことは別にPGが好きなわけでもないんだろ?
好きでPGになった奴でさえ追い込まれて自殺する世界に、適性がない、
もしくはありたいと願う奴が入ったらどうなるか。
それを心配してるんだよ。

66 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★