자바 마름모꼴 그림 인 스 턴 스 상세 설명 인쇄
첫 번 째 단계:먼저 그림 을 분석 합 니 다.
이 그림 을 인쇄 하려 면 두 부분 으로 나 누 어 인쇄 해 야 합 니 다.
첫 번 째 부분 은 상반부 앞의 네 줄 이 고 그들 은 증가 하 는 관계 이 며 후반 부 뒤의 세 가지 행위 가 감소 하 는 관 계 를 통 해 우리 가 두 개의 순환 을 써 야 한 다 는 것 을 알 수 있다.또한"*"위치의 관계 로 인해 우 리 는 빈 칸 을 가 져 와 동시에 인쇄 해 야 합 니 다.그래서 각 부분 은 두 개의 순환 제어 가 필요 하 다.즉,두 개의 큰 순환 은 각각 두 개의 작은 순환 을 포함 하여 총 네 개의 순환 을 포함한다.
제2 부:숫자 분석
분석 하기 전에 우 리 는 외층 순환 제어 줄 수,내층 순환 제어 열 수 를 알 아야 하기 때문에 우 리 는 그의 줄 과 열 을 분석 해 야 한다.
예제 코드 는 다음 과 같다.
class ForForTest {
public static void main(String[] args) {
/*
: i: j: “*” z:
* 1 3 1
*** 2 2 3
***** 3 1 5
******* 4 0 7
***** 1 1 5 6
*** 2 2 3 5
* 3 3 1 4
*/
for (int i = 1;i <= 4;i++){
for (int j = 1;j <= 4 - i;j++) {
System.out.print(" ");
}
for (int z = 1;z <= i*2-1;z++){
System.out.print("*");
}
System.out.println();
}
for (int i = 1;i <= 3;i++){
for (int j = 1;j <= i;j++){
System.out.print(" ");
}
int y = 3;
for (int z = 5;z >= 2*i-1;z--){
System.out.print("*");
}
System.out.println();
}
}
}
인 스 턴 스 추가:
import java.util.Scanner;
import java.util.regex.Matcher;
public class test01 {
private static int i;
private String ch;
public static void main(String[] args) {
runTest();
}
private void printBlank(int blank){//
for(int i=blank;i>=1;i--){
System.out.print(" ");
}
}
private void printStar( int sum,String ch){ //
for(int i=sum;i>=1;i--){
System.out.print(ch);
}
}
private void printTab(){ //
System.out.println();
}
private void run(int level,String ch){//
if(ch.length()==1){
for(i=1;i<=(level+1)/2;i++){
if(i==1){
printBlank((level+1)/2-i);
printStar(1,ch);
printTab();
}else{
printBlank((level+1)/2-i);
printStar(1,ch);
printBlank(((level+1)/2+i-1)-((level+1)/2-i)-2); // +i-1, * .
printStar(1,ch);
printTab();
}
} for(i=(level+1)/2-1;i>=1;i--){
if(i==1){
printBlank((level+1)/2-i);
printStar(1,ch);
printTab();
}else{
printBlank((level+1)/2-i);
printStar(1,ch);
printBlank((level+1)/2+i-1-((level+1)/2-i)-2);
printStar(1,ch);
printTab();
}
}
}else{
for(i=1;i<=(level+1)/2;i++){
if(i==1){
printBlank((level+1)/2-i+ch.length()/2);
printStar(1,ch);
printTab();
}else{
printBlank((level+1)/2-i);
printStar(1,ch);
printBlank(((level+1)/2+i-1)-((level+1)/2-i)-2); // +i-1, * .
printStar(1,ch);
printTab();
}
} for(i=(level+1)/2-1;i>=1;i--){
if(i==1){
printBlank((level+1)/2-i+ch.length()/2);
printStar(1,ch);
printTab();
}else{
printBlank((level+1)/2-i);
printStar(1,ch);
printBlank((level+1)/2+i-1-((level+1)/2-i)-2);
printStar(1,ch);
printTab();
}
}
}
}
public static void runTest() { //
Scanner s = new Scanner(System.in);
try{
System.out.println(" , 3 :" );
int level = s.nextInt();
String str = String.valueOf(level);
if(str.matches("[1-9]\\d*")&&Integer.parseInt(str)%2!=0&&Integer.parseInt(str)!=1){
System.out.println(" :" );
String ch = s.next();
try{
if(ch.matches("[^\u4e00-\u9fa5]+" )){
new test01().run(level, ch);
}else {
throw new Exception();}
}catch (Exception e) {
System.out.println(" !!! , ");
System.out.println("***********************************");
runTest(); //
}
}else if(str.matches("[-9-0]+")){ //
throw new Exception();
}
}catch (Exception e) {
System.out.println(" !!! 3 , ");
System.out.println("***********************************");
runTest(); //
}
}
}
이상 은 자바 가 마름모꼴 도안 인 스 턴 스 를 상세 하 게 인쇄 한 상세 한 내용 입 니 다.자바 가 마름모꼴 도안 을 인쇄 하 는 데 관 한 자 료 는 우리 의 다른 관련 글 을 주목 하 시기 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.