java独学のワイ、素数判定プログラムが書けない
■ このスレッドは過去ログ倉庫に格納されています
JavaDriveというサイトでFor文まで理解するも書けない模様 ワイにプログラマーの資格はないんか? 資格はともかく才能も適正もない。 資格はともかくというのは全く無能のくせに丸暗記でJava Bronzeを取った人がいる前例があるから、 資格だけなら取れるかもしれない。 正直for文くらい直感でわからないようではプログラマーの適正は皆無。 頭で理解しただけで書けるわけないだろ 学校のテストじゃねえんだよ 片っ端から割れるか試すだけっしょ for文で余裕じゃん 小さい数字ならいいけどハチャメチャデカイ数字だとめっちゃ時間かかりそう >>3 じゃあほとんどの奴がプログラマーになれないな >>5 どんな風に? どんな風にも何も・・・ for(i=2;i<入力値;i++){ if((入力値 % i == 0 ){print("素数じゃない");exit(0);} } print("素数だよ"); こんだけじゃないの?0,1は素数じゃないよってif文がもう一個あれば。 これくらいは3分で直感でやらんと・・・これが合ってるかしらんけどw 求人で「未経験からプロのエンジニア」とあるけど、 ワイにもできるか心配だわ javaだとSystem.exit()。俺はjavaを知らんけど、その辺もググってさっと変換できるセンスはプログラマには必要だと思うぞw >>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を満たすまで全部の数表示されるから困ってる。 >>13 ネスト多分必要ないぞ?>>8 見てや。こんだけでいい(多分)。えらいややこしいことになってない?w 俺が即興で思いつたのじゃ動かんけ? めんどかったけどpaizaで試したら動くやんけw まさかとは思うが>>8 をそのままコピペして動かんと言ってる訳じゃなかろうな? いいか?>>8 は別にjavaで動かすように書かれてる訳じゃないからな?単に「流れ」だからw >>8 をjavaで動くように色々変えて、最後に入力値が2未満なら素数じゃないと表示させる条件を加えなさい。 それすら無理なら確実にプログラマは無理だw >>13 nまでの素数を表示するためにi回インクリを繰り返すんやが、 二回目のFor文は iに対してiまでの自然数で検算しようと思ったんや。 a回繰り返してな。 その結果、iがaまでの自然数全てで割られるんやが、 一つのiに対してa個全て割る過程が表示されてしまうんや。 そこが問題 検算の過程が表示されてしまうからそれを省略したい。 iまでのaで全て検算した結果、「そのiは素数」と表示したいんや。 そらfor文の中にprint書いてりゃ表示されるわな 書かなければええんちゃうん?w どうも俺に彼の問題を解決するのは無理のようだ・・・ こう見えても明治卒やで 一応IT系に内定を貰ってるから軽く勉強のつもりが池沼やったんなや〜 びっくりや ってことでコピペグラ―になるわ! ほなっ! 結局のところ、何かの真似をしているだけで自分で何やってるかすら 理解してないんだろ? プログラマー目指すなんて言っておきながら、その程度の労力すら 惜しんでスレ立てて人に聞いてるとか、嗤わせるにもほどがある >>29 全部自分で考えてるし、真似はしてない FizzBuzzは簡単やったのにどうしてかな〜 明治卒うせやんwww I地頭はあるんだろうから必死で勉強しぃやw 今のレベルじゃすぐに営業に配置転換ぞw 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 + "は素数ではない"); } } } } 学部ならともかく学校とプログラマーの適正に因果関係があると思っているなら 正真正銘の知障なので診察受けたほうがいい。 この板の有名荒らしの36歳みたいになるぞ。 36歳も大卒大卒アピールするだけで何にもできない人間のクズだった。 >>35 すまんな、ただ教えてほしかっただけなんや プログラム楽しいからさ 関西の豪雨で水に流されるのはワイの方が良かったんやな〜 もしかして落ち込むふりして同情でも買おうとしているつもりなの? それで来年から社会人? 来年新中学生の間違いじゃないの? 発達障害は精神が幼いって意味じゃない 生半可な知識でマウントに使うなよ >>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; } 失礼します。 私も触発されて、FizzBuzzのコードをコメント付きで書いてみました。 https://ideone.com/McsJKW よろしければ、スレ主さんのFizzBuzzのコードもアップして貰えませんか? >>1 この>>42 はJava一年半やってる36歳無職 こんな風になっちゃだめ >>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); } } どうかな? >>42 java初めて数か月も経ってないけど、 ワイは論理を変換する能力がないから詰んでるのかなぁ >>42 7で割り切れるときはHamuと出力してください >>44 ありがとうございます。 >>43 が言うように、俺はそれほどプログラムに習熟していませんが、 僭越ながら指摘させて頂きます。 あなたのコードだと、始めに3の倍数を全て抽出してしまうので、 3の倍数でかつ5の倍数(15など)が全てFizzBuzzではなくFizzとして 出力されてしまいます。これは5の倍数についても同じことが言えます。 そこでまず3の倍数かつ5の倍数を切り出し、それから3の倍数や5の倍数を 表示するとよいと思います。 >>47 調べりゃすぐ出てくることをよくそんな偉そうと無駄に長く言えるなw >>45 多分、練習によるものが大きいと思います。 俺の場合、当初は(C言語ですが)ポインタや構造体でつまずいていましたが、 今ではオブジェクト指向も理解できるようになりました。 学習方法や学習時間で伸び方は変わってくると思います。 >>50 オブジェクト指向はどういうものか簡潔に説明してみて >>50 オブジェクト指向で作ったプログラムを見せてみて >>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付き あー そうやったんや〜 確かにFizzBuzz出てこんわ >>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); >>57 if、else ifはどれか一つでもtrueになるとそのブロック内しか通らない だから優先的に判定したい条件は先に書かないといけない ちなみに>>57 のコードだと5や3の倍数かつ7の倍数が考慮漏れしてるね >>58 自分で書いたもの以外のコピペはしてないで 条件式が一つで後にほぼ同じ抽出内容の複数条件式を持つ分岐が控えている場合 先に複数の方を書かんと、先にある一つの条件式を先に満たしてしまって そこで抜けてまうのか >>47 感謝やで >>59 考えたんやけど 条件式が優先されるから仕方ないんちゃう? >>61 バグってこういう些細なことで生まれるからね 自分の書いたコードが要求や仕様を満たしてるか見直してみるといいと思うよ >>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); 組み合わせでいいんじゃね?と思いついたから 手当たり次第に作ってみた >>62 5と3で出来ていることを7も追加してやるだけ しかしこれではひとつ条件が増えると大量の書き直しが発生してしまうことに気づいたら次は拡張性を考える >>65 上の条件式の方を通り抜けてしまうなら、 条件同士をくっつけちまえばいいんやない? 3,5,7の倍数は一つの条件式で表示できるし、 複数の共通倍数だったら、包括してしまえばいいんだし def a(x): if x%2==0: print('偶然') elif x%3==0: print('奇数') for i in range(1.11): a(i) >>69 >>70 for i in range(1.11): a(i) これはなんや?? >>1 ない。 迷惑だからプログラマにならないで欲しい。 >>73 実際For文まで勉強して解ける人は何人くらいおるんやろなぁ 見える、未来が見える >>1 が高学歴であるがゆえに根拠なく自分の能力を信じて 電卓ソフトを作ったあたりで満足してSEやPMにシフトし むちゃくちゃな設計を末端に押し付けて責任転嫁する未来が… >>75 哭きの竜のネタ? こんなのがSEになる時点で終わりやん・・・ たびたび失礼します。 スレ主さんに、助言が伝わったみたいで良かったです。 素数判定の方は、for文の知識に加え、break文・continue文・フラグの内 いくつかの知識が必要になると思うので、もし未習ならググることをお勧めします。 出しゃばりみたいで恐縮ですが、俺も素数判定のコードをコメント付きで 書いてみましたので、よろしければ参照下さい。 https://ideone.com/ITtLsp >>79 お前それじゃ遅いからって高速化の方法教えてもらってただろうが 何にも身についてないのかよ >>77 何を言っているんだ? PG上がりのSEが世の中を支え、SE業を邁進してきたゴミクズが会社で弄ぶ 日本のSIerの多重下請け構造そのものじゃないかw スレ主に適性はないので、半端な知識を身に付けないで 管理系のスキルを磨くことをお勧めする 「現場を知るため」以上の目的でプログラミングにのめりこまないほうがいい プログラミングができない無能は管理に回され昇進する、これが日本の常識 出世したいなら人を使う能力を磨くことだ プログラマーなんてどの会社でも40くらいでおしまいだよ 下手すりゃ管理職候補にすらなれずリストラ対象 スレ主だけど、if文とFor文しかやってない これだけの知識で任意の数まで素数を判定していく事ができるか否かで 適正って決まるもんなんか? >>82 決まらないよ 知ってるかどうかだからね 0から考えて実装してる人なんてそうはいない >>82 就活でプログラマの適性検査受けなかった? とても簡単な問題で適性がA〜Eで判定されるよ。 プログラマの適性に知っている言語の知識なんて関係ないよ。 >>83 え?みんな0から考えてるんじゃないの? PGは0からコードを書いて、機能を作るもんだと思ってた >>84 就活してない ただネットのプログラマー適正試験を受けた事はある。 CAB?だけは出来なかった >>82 Javaの適性ならともかく、プログラミングの職業適性となると 問題解決の筋道そのものが適性の評価対象だから、 こんなところで質問しちゃう時点で適性ゼロじゃないかなw >>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); } >>86 >ただネットのプログラマー適正試験を受けた事はある。 結果はどうだったの? 素数判定で2の倍数を真面目に判定しているロジックは それだけで評価に値しない。 FizzBuzzをまともに答えているのと同じ。 >>89 それコピペグラ―やん でも効率は良いよね >>90 どんなサイトのテストを受けたのかにもよるけども、 http://www.beafoster-hd.co.jp/aptitude-test ←ここは簡単で満点 他は受けてないからこれからって結果張ろうかな >>92 コピペするわけじゃなくて調べるっしょ ゼロから全部自分で考えるのは効率悪いよ >>87 今からその姿勢を直せばいいんでないの? >>91 if文とFor文の知識だけだと真面目にやるしかない気がする ifは小文字なのにforのFだけ大文字なの何なの? 超気持ち悪いんだけど自分で気持ち悪いとは思わないの? >>94 20過ぎた人間が簡単に矯正出来たら苦労ないわ。 だから適性で弾くんだよ。 この先矯正できるかどうかなんて関係ない。 矯正して金にならない適性ないPGやる暇あるなら 営業でも管理でも適性がありそうなのを覚えろ、って いうのが企業。 >>98 そうでもないかと ちゃんと教育する会社がまともな会社ですよん 適性が身に付くならいいけど、半端に適性がある振りが通ってしまって 本当は適性がないのに新人研修で評価されてしまってPGに就いたら、 それこそ悲惨な人生なんだが、その辺わかってるのかな。 今までやってきてなかったってことは別にPGが好きなわけでもないんだろ? 好きでPGになった奴でさえ追い込まれて自殺する世界に、適性がない、 もしくはありたいと願う奴が入ったらどうなるか。 それを心配してるんだよ。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる