Javaに慣れていない場合やJavaを学習している場合でも、思考と構文の使用を改善できる基本的なアルゴリズムを練習する必要があります。
1。2つのINT番号の最大値を出力します
Java.util.scannerをインポートします。 public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); system.out.println( "順番に2つの整数を入力してください:a、b(スペースで分離)"); /*2つの数字のサイズを比較します*/ int a = scanner.nextint(); int b = scanner.nextint(); int max; if(a> = b){max = a; } else {max = b; } system.out.println( "最大値は"+max); }}}2。3つのINT番号の最大値を出力します
パッケージデモ; Java.util.scannerをインポートします。 public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); System.out.println( "2つの整数を順番に入力してください:a、b(スペースで区切られます)"); int a = scanner.nextint(); int b = scanner.nextint(); int c = scanner.nextint(); scanner.close(); /*方法1*/ int d =(a> b)?a:b; int e =(d> c)?d:c; System.out.println( "最大値は"+e); /*方法2*/ if(a> b && a> c){system.out.println( "最大値は"+a); } else if(b> c && b> a){system.out.println( "最大値は"+b); } else if(c> b && c> a){system.out.println( "最大値は"+c); } else {system.out.println( "例外が発生した"); }}}3. 1年が跳躍年かどうかを判断するプログラムを書く
パッケージデモ; Java.util.scannerをインポートします。 /*LEAP年はユーザーから入力され、4で割り切れることができますが、100で割り切れることはできません。 1年が跳躍年であるかどうかを判断する必要があります。必要な出力:今年は跳躍年です*/ public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); System.out.println( "年を入力してください:"); int year = scanner.nextint(); /*方法1*/ if((year%4 == 0 && year%100!= 0)|| year%400 == 0){system.out.println( "今年は跳躍年"); } else {system.out.println( "今年は跳躍年ではありません"); } /*method 2* / boolean isleapyear =(year%4 == 0 && year%100!= 0)||年%400 == 0; string string = isleapyear?year+"is leap year":year+"not leap year"; System.out.println(string); }}4。スコアレベルの出力プログラムを完了します:ユーザーが入力したスコアが正しい場合(0-100)、テーブル-1のルールに従ってスコアに対応するレベルを計算し、結果を計算します。
パッケージデモ; Java.util.scannerをインポートします。 / * *スコアグレード分類テーブル *> = 90 a *> = 80 b *> = 60 c * <60 d * *スコア範囲:0-100 * * 2判断が必要です */ public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); System.out.println( "スコアを入力してください:"); double score = scanner.nextdouble(); scanner.close(); if(score <0 || score> 100){system.out.println( "入力スコアは0-100の間ではなく、要件を満たしていない"); } else if(score> = 90){system.out.println( "a"); } else if(score> = 80){system.out.println( "b"); } else if(score> = 60){system.out.println( "c"); } else {system.out.println( "d"); }}}5。コマンド解決プログラムを完了します:ユーザーが選択できる3つの関数選択を提供するコマンド解決プログラムがあります。ユーザーが特定の関数を選択すると、プログラムはインターフェイス上のユーザーが選択した関数名を出力します。プログラムの相互作用を図に示します。
パッケージデモ; Java.util.scannerをインポートします。 / * *ユーザーが選択できる3つの関数選択を提供するコマンド解析プログラムがあります。 *ユーザーが特定の関数を選択すると、プログラムはインターフェイス上のユーザーが選択した関数名を出力します。 * * */ public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); System.out.println( "関数を選択してください:1。すべてのレコードを表示2。クエリログインレコード0。Exit"); int command = scanner.nextint(); scanner.close(); switch(command){case 0:system.out.println( "welcome");壊す;ケース1:System.out.println( "すべてのレコードを表示...");壊す;ケース2:System.out.println( "クエリログインレコード...");壊す;デフォルト:system.out.println( "入力エラー!"); }}}6.レジの支払いプログラムを完了します:レジの支払いプログラムを作成し、単価、購入数量、および支払い徴収に基づいて計算し、売掛金と変更を出力します。合計価格が500以上の場合は、20%の割引をお楽しみください。コンソールの相互作用は次のとおりです。
パッケージデモ; Java.util.scannerをインポートします。 / * *要件: *キャッシャーカウンター支払いプログラムを作成します。売掛金額を計算して出力し、単価、購入数量、および支払い徴収に基づいて償還可能な変更を変更します。 *合計価格が500以上の場合は、20%の割引をお楽しみください。 * */ public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); system.out.println( "単価(¥):"); Double Price = scanner.nextDouble(); System.out.println( "数量を入力してください:"); double量= scanner.nextdouble(); system.out.println( "コレクション金額を入力してください:"); double count = scanner.nextdouble(); double totalMoney = rice*額; if(TotalMoney> 500){TotalMoney = TotalMoney*0.8; } double change = count -totalMoney; system.out.println( "債務額は次のとおりです。 }}7. Javaは、キーボードから3つの整数に入り、小規模から大規模なソートを実現します。
パッケージデモ; Java.util.scannerをインポートします。 /** Javaは、キーボードから3つの整数に入り、小から大部分までのソートを実現します* **/ public class demo {public static void main(string [] args){scanner scanner = new Scanner(System.in); System.out.println( "スペースで区切られた3つの整数を入力してください:"); int a = scanner.nextint(); int b = scanner.nextint(); int c = scanner.nextint(); scanner.close(); system.out.println( "入力値は次のとおりです。a=" + a + "、b =" + b + "、c =" + c); if(a> b){if(b> c){system.out.println( "ソートされた値は:" + c + "、" + b + "、" + a); } else if(c> a){system.out.println( "ソートされた値は:" + b + "、" + a + "、" + c); } else {system.out.println( "ソートされた値は:" + b + "、" + a + "、" + c); }} else {if(c <a){system.out.println( "ソートされた値は:" + c + "、" + a + "、" + b); } else if(c> b){system.out.println( "ソートされた値は:" + a + "、" + b + "、" + c); } else {system.out.println( "ソートされた値は:" + a + "、" + c + "、" + b); }}}}}8。個人所得税を計算します。北京の個人所得税を計算するための公式:課税額=(賃金と給与所得 - 控除) *適用税率 - 控除番号、控除番号は3500です。
パッケージデモ; Java.util.scannerをインポートします。 / * *北京の個人所得税を計算するための公式:課税額=(賃金と給与所得 - 控除) *適用税率 - 控除の迅速な計算 - 控除は3500 */ public class main(string [] args){scanner scanner = new scanner(system.in); system.out.println( "税引前給与を入力してください:"); int salarybeforetax = scanner.nextint(); scanner.close(); int taxsalary = salarybeforetax -3500;二重税; /*方法1*/税=税務<0?0.0:税<= 1500?税法*0.03:課税<= 4500?税務*0.1-105:税金<= 9000?税務科*0.2-555:税<= 35000?0.25-1005:0.25-1005:0.25-1005:課税<= 55000?税務*0.3-2755:税<= 80000?税金*0.35-5505:税*0.45-13505; System.out.println( "個人が税金を支払う必要がある:"+税); /*方法2*/ if(Taxsalary <0){tax = 0; } else if(Taxsalary <= 1500){Tax = Taxsalary*0.03; } else if(Taxsalary <= 4500){Tax = Taxsalary*0.1-105; } else if(Taxsalary <= 9000){Tax = Taxsalary*0.2-555; } else if(Taxsalary <= 35000){Tax = Taxsalary*0.25-1005; } else if(Taxsalary <= 55000){Tax = Taxsalary*0.3-2755; } else if(Taxsalary <= 80000){Tax = Taxsalary*0.35-5505; } else {Tax = Taxsalary*0.45-13505; } system.out.println( "税金は個人が支払う必要があります:"+税); }}9。年と月、出力日を入力します。
パッケージデモ; Java.util.scannerをインポートします。 /*ヒント:1。跳躍年かどうかを判断する必要があります。 2月の日数は、それが跳躍年かどうかに関連しています。 2。スイッチケースを使用して、毎月の日数を決定します*/ public class demo {public static void main(string [] args){scanner scanner = new scanner(system.in); system.out.println( "年を入力してください:"); int year = scanner.nextint(); system.out.println( "月を入力してください:"); int month = scanner.nextint(); int daynum = thedaynum(月); //最初に月に基づいて日数を取得します。跳躍年の場合、2月の日数を再獲得しますif(isleapyear(year)){if(month == 2){daynum ++; //跳躍年の場合は、2月に1日を追加} system.out.print(year + "is a leap year"); } else {system.out.print(year + "no a Leap Year"); } system.out.println(year + "year" + month + "month total" + daynum + "day"); } /*跳躍年であるかどうかを判断します*4で割ることができますが、100で割ることはできません。または400で割ることができます。 } else {return false; }} /*日数を審査*ケース2:28を返します。ケース3:31を返します。ケース4:30を返します。ケース5:31を返します。ケース6:30を返します。ケース7:31を返します。ケース8:31を返します。ケース9:30を返します。ケース10:31を返します。ケース11:30を返します。ケース12:31を返します。デフォルト:system.out.println( "申し訳ありませんが、入力した月は間違っていました!"); 0を返します。 }}}10。ナインナイン乗算テーブルを出力します。
パッケージデモ; / *著者:wendy *問題: * 9つの乗算テーブルの直接出力 * */public class demo {public static void main(string [] args){// i変数は、(int i = 0; i <= 9; i ++){// j j <= j = 1; j <= j <= j <= j; j <= j <= j <= 1のj <= j <= j <= jの数の制御に使用されます。 System.out.print(j + "*" + i + "=" + i*j + "/t"); } //各行の出力の後、新しいラインsystem.out.println()が必要です。 }}}} <strong> </strong>11. 0-100から整数をランダムに生成して、それが素数であるかどうかを判断します。素数はプライムナンバーとも呼ばれます。これは、1および整数自体を除く他の自然数で分割できない数を指します。
パッケージデモ; java.util.randomをインポートします。 public class primenum {public static void main(string [] args){int num; RANDOM RANDOM = new Random(); num = random.nextint(100); System.out.println( "ランダム生成数値は:" + num); System.out.println(isprime(num)); } public static boolean isprime(int num){if(num <2){return false; } if(num == 2){return true; } if(num%2 == 0){return false; } for(int i = 3; i <= math.sqrt(num); i += 2){if(num%i == 0){return false; }} trueを返します。 }}12.配列の最小値を見つけて、配列を新しい配列に拡張します。
パッケージデモ; java.util.arraysをインポートします。 java.util.randomをインポートします。 / * *著者:Wendy *問題:0-100から10個の整数をランダムに生成し、最小値を見つけます。 *配列を新しい配列に拡張すると、最小値が新しい配列の最初の位置に保存されます。 *手順: * 1。長さ10の配列を作成し、ランダムを使用して0〜100の間に10個の整数をランダムに生成します。 * 2。ループの最小値を見つけます * 3。array.coprof()を使用して新しい配列を構築する能力を拡張し、その長さを11 * 4に設定します。新しい配列を繰り返し、後ろから正面にトラバースし、値を割り当て、次にアレイの最初の2で見つかった最小値を配置します。 //ランダム0-100の間の10個の整数を生成しますランダム= new Random(); for(int i = 0; i <10; i ++){arr [i] = random.nextint(100); } //配列system.out.printlnのコンテンツを印刷( "ランダムに生成された配列は:" + array.toString(arr)); //最小値int min = arr [0]; for(int j = 1; j <10; j ++){if(min> arr [j]){min = arr [j]; }} system.out.println( "この配列の最小値は:" + min); //展開すると、拡張後の最初のintに最小値が存在します[] newarr = arrays.copyof(arr、11); //後ろから前に転送し、以前の値を後続の値に割り当て、次に最初の値を最小値に割り当てます(int k = newarr.length-1; k> = 1; k - ){newArr [k] = newArr [k-1]; } //最初の値を最小値に割り当てますmin newarr [0] = min; //配列system.out.printlnのコンテンツを印刷( "拡張後の配列は"+ arrays.toString(newARR)); }}この記事の主な内容は、Javaアルゴリズムと思考に最初にさらされた学生にとって大きな助けになります。編集者は、関連するヘルプを提供します。 wulin.comにもっと注意してください。