leap_year.javaにコンパイルエラーが出る – java

質問:


leap_year.java

class leap_year{
    int dim;
    int uruudosi(int yy);
    if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
        dim = 29; // うるう年
    else
        dim = 28;
    }
    return dim;
}

cmdでのエラー

leap_year.java:7: エラー: 型の開始が不正です
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
^
leap_year.java:7: エラー: 型の開始が不正です
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
   ^
leap_year.java:7: エラー: ')'がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
    ^
leap_year.java:7: エラー: ';'がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
        ^
leap_year.java:7: エラー: 型の開始が不正です
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
           ^
leap_year.java:7: エラー: <identifier>がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
            ^
leap_year.java:7: エラー: ';'がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
               ^
leap_year.java:7: エラー: 型の開始が不正です
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                  ^
leap_year.java:7: エラー: ';'がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                         ^
leap_year.java:7: エラー: <identifier>がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                             ^
leap_year.java:7: エラー: 型の開始が不正です
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                                ^
leap_year.java:7: エラー: <identifier>がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                                   ^
leap_year.java:7: エラー: ';'がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                                      ^
leap_year.java:7: エラー: 型の開始が不正です
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                                        ^
leap_year.java:7: エラー: <identifier>がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                                         ^
leap_year.java:7: エラー: ';'がありません
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                                                          ^
leap_year.java:8: エラー: 型の開始が不正です
                dim = 29; // うるう年
                    ^
leap_year.java:8: エラー: <identifier>がありません
                dim = 29; // うるう年
                     ^
leap_year.java:9: エラー: 型の開始が不正です
            else
            ^
leap_year.java:9: エラー: ';'がありません
            else
                ^
leap_year.java:10: エラー: 型の開始が不正です
                dim = 28;
                    ^
leap_year.java:10: エラー: <identifier>がありません
                dim = 28;
                     ^
leap_year.java:12: エラー: class、interfaceまたはenumがありません
        return dim;
        ^
leap_year.java:13: エラー: class、interfaceまたはenumがありません
}
^
エラー24個

このコンパイルエラーをどう直したらいいかがわかっていないです。どのように修正したらいいでしょうか。

質問者: jui527

これを動くように改善するなら次のような感じでしょうか。

class leap_year{
    int dim;
    int uruudosi(int year){
    if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
        dim = 29; // うるう年
    }else{
        dim = 28;
    }
    return dim;
   }
}

インデントはぐちゃぐちゃですが、こうなりました。
更に改善するには、

public class leap_year{
    public static int uruudosi(int year){
//インスタンスを生成せずにアクセスできる
        int dim;//フィールドにする必要はない
        if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
                dim = 29; // うるう年
          }else{
                dim = 28;
        }
          return dim;
    }
 }

ですかね。

とりあえず動かしてみました。
dim???Java未経験者でしょうか?eclipseとか使ってちょ
これはリンク!Wandboxという便利なサイトで実動を確認したよ!!!

この回答でよかったらベストアンサーにしてたもれ

class LeapYear {

    public static void main(String[] args) {
        System.out.println(uruudoshi(2008));
    }

    private static int uruudoshi(int year) {

        int dim = 0;
        System.out.println("判定対象は:" + year);

        if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
            dim = 29; // うるう年
            System.out.println("うるう年っぽい");
        } else {
            dim = 28;
            System.out.println("うるう年じゃないっぽい");
        }

        return dim;
    }
}

うるう年判定については、ここスタックオーバーフローでも幾つか質問がでています。
そのなかの方法と、この質問にあったコードの方法の動作比較をしてみました。

// See http://ja.stackoverflow.com/questions/12196/
//     http://ja.stackoverflow.com/questions/12207/

import java.util.GregorianCalendar;

public class LeapYear {

    // java のメソッドを利用したうるう年の判定

    static boolean isLeapYear(int year) {
        GregorianCalendar calendar = new GregorianCalendar();
        return calendar.isLeapYear(year);
    }

    // 自作のうるう年の判定
    static int uruudosi(int year) {
        int days2 = 28; // うるう年でないときの2月の日数
        if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
            days2 = 29; // うるう年のときの2月の日数
        }
        return days2;
    }

    static public void main(String args[]) {
        // 2 つのうるう年判定の結果をテストする。
        for (int i = 1900; i < 2100; i++) {
            boolean leap = isLeapYear(i);
            int days2 = uruudosi(i);
            if (leap != (days2 == 29)) {
                System.out.println("Error: " + i + ": leap=" + leap + ", day2 =" + days2);
            }
        }
    }
}

出典

Related Posts:

JavaFXで表に画像を表示できなくて困っています。 – java javafx exception
質問: 学校でソーシャルゲームを作っている最中、編成画面のために配列を解読して表を作成するプログラムを作ろうとした所、ResourceBundleがnullでセル内部に画像を表示できない状況です。 Cards.javaの最終的なコード: class csvData{ // 列数 static int NUMBER = 5+1+10+3+2+5+3+3;//chara static String charlist = csvlist_hen.setload("_chara.csv",NUMBER); static String wepidlist = csvlist_hen.setload("_wep.csv",13); static String abidlist = csvlist_hen.setload("_ability.csv",14); } class cmain{ private ...
最高得点と最低得点を出したいのですが・・・ – java
質問: java内での入力 import java.io.*; class sample61{ public static void main(String args) throws IOException{ System.out.println("テストの受験者数を入力してください。"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ...
Javaについて – java
質問: AはBのオブジェクトを生成してBを返す Bはレコードを追加する Cは引数にBのオブジェクトを持ち追加したレコードによってファイルを作成しそのファイル名を返す AとBはできましたがBで作成したlistをどうやってCに渡すかがわかりません public class A{ public B create(){ B b = new B() ...
Aizu Onlineジャッジ 二つのサイコロの一致 – java
質問: Aizu online, Introduction to Programming 11-3のサイコロの一致を判定する問題をJavaで解いているのですが、テストケース(6/35)しか通らず、どこが間違っているのかわかりません。 どなたか間違いが見つかったら教えていただいてもいいでしょうか。 BufferedReader reader=new BufferedReader(new InputStreamReader(System.in)); String str; String dice; ...
変数の値が増えたか減ったかの判定方法 – javascript swift php
質問: Swiftで実装したいのですがロジックが応用できればどんな言語でも構いません。とある変数の値(数字)が動的に変わるのですが、その変数の値が増えたのか減ったのかで処理を分岐させたいと思っています。コードは下記のような感じです。 if(変数の値が増えた){ print("変数の値が増えた!") }esle if(いや、変数の値が減った){ print("変数の値が減った!") } 実装の方法が思いつきません。アドバイスいただければ幸いです 質問者: ryosuke-hujisawa 変更前の値と変更後の値を配列にとって配列の最初と最後を比較することで解決しました 出典
nullpointerexceptionについて – java processing leap-motion
質問: こんにちは、エラーが出て困ってます。ご教授ください。 import ddf.minim.*; //minimライブラリのインポート Minim minim; //Minim型変数であるminimの宣言 AudioPlayer player ; //サウンドデータ格納用の変数 int i; import com.onformative.leap.LeapMotionP5; import com.leapmotion.leap.Finger; AudioPlayer loopSound; float x,y; LeapMotionP5 leap; void setup(){ minim = ...
androidで写真撮影した画像を直接sqliteに書き込みたい – android java android-studio
質問: androidで写真撮影した画像を直接sqliteに保存したいのですが上手くできません。 写真の撮影で指定のフォルダーに写真保存できるのですがsqliteに写真データの保存ができなく困っています。 BitmapDB.java public class BitmapDB extends SQLiteOpenHelper { /** * 画像管理テーブル名 */ public static final String SAVE_PHOTO_TABLE = "save_photo"; /** * カラム名 画像ファイル名 */ public static final String COLUMN_FILE_NAME ...
Javaで値を繰り返し入力し合計値が100を超える、または、10回入力が行われた場合に入力を止めそれまでの値を出力するプログラム – java
質問: Java初心者です。 値を繰り返し入力し合計値が100を超える、または、10回入力が行われた場合に入力を止めそれまでの値を出力するプログラムを作成しています。 Eclipseでループ処理と配列を使って書いているんですが、whileで条件を指定したところ、 以下の警告が出てしまいます。 ・演算子 < は引数の型 Scanner, int で未定義です スコープの外で定義していると思うのですが、 エラーが出てしまう理由がよくわからないので、 解決策を教えてください。 お願いします。 int s = new int; int input = 0; ...
オプションメニューの内容を動的に変更する(Kotlin) – android java kotlin
質問: オプションメニューの内容を動的に変更したいのですが、MenuItemのインスタンス作成時にエラーが出ます。参考サイト var item = MenuItem() kotlinの場合、参考サイトと同じようにできるのでしょうか? こちらにも同じ質問をしていますTeratail 質問者: hai123 yukihane 正攻法としては、Kotlin文法を学びJavaコードと対応付けられるようにする、ということになると思いますが、マルチポスト先ではそのよう指向されているようなので別の邪道を。 KotlinでAndroid開発を行っているということはおそらくAndroid Studio上で開発していると思われますが、JavaからKotlinへの変換機能があります。 Javaコードが既に存在しているのであれば、その機能で自動変換してやればそれなりのKotlinコードが得られます。 今回の場合、適当にダミーのActivityクラスを新規作成し、そのファイルに該当メソッドをペーストした後、上記の機能を使用すると次のように変換されます。 override fun onPrepareOptionsMenu(menu: Menu): Boolean { super.onPrepareOptionsMenu(menu) // メニューアイテムを取得 ...
既存プログラム改定についての作業ノウハウ [クローズ済み] – java sql
質問: 業務プログラム開発に携わって5年以上、製造ラインで作業員として働いている状況です。 今の開発現場で2000年頃から保守され続けているプログラムの改定作業をやることが多くあり、経験も重なってきている状況です。 作業内容として、改定依頼(不具合事案から原因の修正)→(私)原因調査→修正という流れが主なのですが、原因調査を深く追えず、ダメ出しを頻繁に受けています。 長い年数やっても、こんな体たらくですが、自分で選んだ仕事、お客さんにご迷惑おかけしないよう努めていきたい一心ではあるのですが、うまくやれません。 ホウレンソウも下手なので、かなり注意を払っています。 指摘側からの言葉から察するに、自己注意力を問われている感じはします。 みなさん、どんな風に気を付けられていますか? 質問者: shinji tutinoco なぜ自分は原因調査を深く追えないのか、その理由を考えてみてはどうでしょうか。 恐らく、あなたは自分と向き合う時期に立たされているのではないかと思われます。 頑張っているはずなのに、うまくやれないという心理状態は 本当は心の奥ではやりたくないと思っていることが多いです。 人が何か行うとき、本来「必要だから行う」のであって 「行わなければならない」というものではありません。 もしあなたが「行わなければならない」という心理状態になっているのだとしたら 現在の自分の状況や立場、これからの自分について深く考察し 「必要だから行う」という思考に切り替えていく必要があります。 一人で考えて迷ったり悩んだりした場合には、できるだけ大きな書店に足を運び 目に止まった本をかたっぱしから読むことをおすすめします。 最後に、スタックオーバーフローでは、このような質問は少々不適切なので 右上の「ヘルプ」に使い方の詳細が掲載されていますので、いちど目を通しておくと良いでしょう! 出典
データベースでシングルクォーテーションを有効にするには? – java mysql
質問: 超初心者です。データベースに登録するのにシングルクオーテーションが入ってるとエラーが出ます。どうしたらシングルクォーテーションが有効にできますか? 質問者: user24415 sql = "SELECT * FROM tbl WHERE name = '" + param +"'"; こういうコードで、paramにシングルクオーテーションを含んだ文字列、例えば123'456が入っていると、生成されるSQLは SELECT * FROM tble WHERE name = ...
error: No resource identifier found for attribute ‘latout_height’ in package ‘android’ の意味を教えてください – android java
質問: error: No resource identifier found for attribute 'latout_height' in package 'android' javaを利用していたところこのようなエラーが発生しました。解決方法を教えていだだけますか。 質問者: user5871 スペルミスが原因です。 latout_heightではなくlayout_heightとすればエラーがなくなりませんか? エラーメッセージを読んでも原因が分からないときはそのままエラーメッセージでググって、そのエラーメッセージがどういう状況のときに発生するかを調べるのも直接的な解決にはならなくても1つの方法だと思います。そのうちに発生パターンが分かってくると自分で間違いに気付けるようになるかもしれません。 ...
public object の使い方 – android java android-studio
質問: この質問は、次と完全に重複しています: is not public in ...
R.javaの中身 – android java eclipse
質問: このプログラムでのエラーを治していただける方、お願いします。 package a.a; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; public class A extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { ...
AndroidStudioのWebViewでステータスコード – java
質問: AndroidStudioでWebviewでステータスコードを取得するために参考サイトを見てコードを書いたのですがアプリが途中で落ちてしまいます。どうしたらアプリが落ちないようになるでしょうか? 参考http://saki0n.blogspot.jp/2013/04/android-webview.html public class MainActivity extends AppCompatActivity { private TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { ...

You Might Also Like

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です