数字のスパイラルパターンを印刷するJavaプログラム
この記事では、数字のスパイラルパターンを印刷する方法を理解します。パターンは、複数のforループとprintステートメントを使用して形成されます。
以下は同じのデモンストレーションです-
入力
入力が-
であると仮定しますEnter the size : 5
出力
必要な出力は-
になりますThe spiral pattern 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 5 5 4 3 3 3 3 3 4 5 5 3 2 2 4 2 3 4 5 5 4 3 2 1 2 3 4 5 5 4 3 2 2 2 3 4 5 5 4 3 3 3 3 3 4 5 5 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5
アルゴリズム
Step 1 - START Step 2 - Declare three integer values namely i, my_pattern_size and my_input Step 3 - Read the required values from the user/ define the values Step 4 - Assign 2 * my_input – 1 value to my_pattern_size Step 4 - We iterate through two nested 'for' loops to get space between the characters. Step 5 - After iterating through the innermost loop, we iterate through another 'for' loop. This will help print the required character. Step 6 - Now, print a value of Math.max(Math.abs(i - my_input), Math.abs(j - my_input)) + 1 + in the subsequent lines. Step 7 - Display the result Step 8 - Stop
例1
ここでは、プロンプトに基づいてユーザーが入力を入力しています。この例は、コーディンググラウンドツールでライブで試すことができます 。
import java.util.Scanner; import java.lang.Math; public class SpiralPattern{ public static void main(String args[]){ int my_input , i, j,my_pattern_size ; System.out.println("Required packages have been imported"); Scanner my_scanner = new Scanner(System.in); System.out.println("A reader object has been defined "); System.out.print("Enter the size : "); my_input = my_scanner.nextInt(); System.out.print("The spiral pattern "); System.out.println(); my_pattern_size = 2 * my_input - 1; for( i = 1; i <= my_pattern_size; i++){ for( j = 1; j <= my_pattern_size; j++){ System.out.print(Math.max(Math.abs(i - my_input), Math.abs(j - my_input)) + 1 + " "); } System.out.println(); } } }
出力
Required packages have been imported A reader object has been defined Enter the size : 5 The spiral pattern 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 5 5 4 3 3 3 3 3 4 5 5 4 3 2 2 2 3 4 5 5 4 3 2 1 2 3 4 5 5 4 3 2 2 2 3 4 5 5 4 3 3 3 3 3 4 5 5 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5
例2
ここでは、整数は事前に定義されており、その値にアクセスしてコンソールに表示されます。
import java.lang.Math; public class SpiralPattern{ public static void main(String args[]){ int my_input , i, j,my_pattern_size ; System.out.println("Required packages have been imported"); my_input = 5; System.out.println("The size is defined as " +my_input); System.out.print("The spiral pattern "); System.out.println(); my_pattern_size = 2 * my_input - 1; for( i = 1; i <= my_pattern_size; i++){ for( j = 1; j <= my_pattern_size; j++){ System.out.print(Math.max(Math.abs(i - my_input), Math.abs(j - my_input)) + 1 + " "); } System.out.println(); } } }
出力
Required packages have been imported The size is defined as 5 The spiral pattern 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 5 5 4 3 3 3 3 3 4 5 5 4 3 2 2 2 3 4 5 5 4 3 2 1 2 3 4 5 5 4 3 2 2 2 3 4 5 5 4 3 3 3 3 3 4 5 5 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5
-
数字をスパイラルパターンで表現するCプログラム
数字を表すスパイラルパターンを以下に示します- 数字をスパイラルパターンで印刷するために適用されるロジックは次のとおりです- for(i=1;i<=rows*2;i+=2){ if(k%2==1){ printf("%3d %3d",i,i+1); k++; }else{ printf("%3d %3d",i+1,i); k
-
Cプログラムで行列の対角パターンで数値を印刷します。
タスクは、対角パターンのnxnの行列を印刷することです。 nが3の場合、対角パターンで行列を印刷するのは-です。 したがって、出力は次のようになります- 例 Input: 3 Output: 1 2 4 3 5 7 6 8 9 Input: 4 Output: 1 2 4 7 3 5 8 11 6 9 12 14 10 13 15 16 この問題は、数値nを与え、n x nの行列を生成