首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用java的字符串和矩阵生成特定的模式

使用java的字符串和矩阵生成特定的模式
EN

Stack Overflow用户
提问于 2015-04-14 23:32:40
回答 1查看 93关注 0票数 0

我需要在java中使用String和Matrix生成一个特定的模式。用户应该能够输入A-Z中的任何奇数位字符。例如,如果用户选择G,则输出应为:

ABCDEFGFEDCBA

ABCDEF和FEDCBA

ABCDE与EDCBA的合作

ABCD * DCBA

美国广播公司,中国

百威英博,英特尔,英特尔

*

我尝试了下面的代码:但是我没有得到想要的输出:

代码语言:javascript
复制
    import java.io.IOException;
import java.util.Scanner;
public class PatternDemo3 
{
    public static void main(String[] args) throws IOException 
    {        
        Scanner in=new Scanner(System.in);
        System.out.println("Enter a odd positioned letter from A to Z to create the pattern : ");
        char input=(char)System.in.read();
        int val=(int)input;
        int newvalue=val-64;

        for (int i =newvalue; i >=0; i--) 
        {
            int begining=65;
            for (int j = 0; j < i; j++) 
            {
                System.out.print((char)begining);
                begining++;                
            }
            int newbeg=begining-1;            
            for(int k=0;k<(2*i-1);k++)
            {
                System.out.print(" ");
            }            
            for (int j = 0; j <i; j++) 
            {
                System.out.print((char)newbeg);
                newbeg--;                              
            }
            System.out.println("");            
        }        
    }    
}
EN

回答 1

Stack Overflow用户

发布于 2015-04-15 22:56:33

这是编辑我收到的响应后的最终代码。

代码语言:javascript
复制
import java.io.IOException;
import java.util.Scanner;
public class PatternDemo3 
{
    public static void main(String[] args) throws IOException 
    {        
        Scanner in=new Scanner(System.in);
        System.out.println("Enter a odd positioned letter from A to Z to create the pattern : ");
        char input=(char)System.in.read();
        int val=(int)input;
        int newvalue=val-64;

        for (int i =newvalue; i >=0; i--) 
        {
            int begining=65;
            for (int j = 0; j < i; j++) 
            {
                System.out.print((char)begining);
                begining++;                
            }
            int newbeg=begining-1;            
            for(int k=1; k< 2 * (newvalue-i);k++)
            {
                System.out.print(" ");
            }            
            for (int j = 0; j <i; j++) 
            {
                if((char)newbeg!=input)
                {
                System.out.print((char)newbeg);
                }
                newbeg--;

            }
            System.out.println("");            
        }        
    }    
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29631506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档