习题7 数字金字塔

输入任意数字X(例:6),输出如下图形

首先使用两层for循环,一层循环行数,一层循环列数

如题,在列中,不仅要输出“*”,还要输出空格,所以在第一层for循环中,应使用两个并列的for循环

import java.util.Scanner;

public class Jinzita {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int x=scanner.nextInt();
        for(){
            for(){

            }

            for(){

            }

        }
    }
}

第一层for中,条件应是小于等于x;

第二层第一个for控制“*”前空格的数量;

第一行,如图所示,输出6-1=5个空格,第二行输出6-2=4个空格....第六行输出6-6=0个空格;

所以第二层第一个for循环的条件应是小于等于x-i;

第二层第二个for循环控制输出多少个“*”的数量;

如图 第一行输出1个,第二行输出3个,第三行5个,找到如下规律

输出“*”的数量为2*i-1;

最后在第一层for循环结束后,输出换行

import java.util.Scanner;

public class Jinzita {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int x=scanner.nextInt();
        for(int i=1;i<=x;i++){
            for(int k=1;k<=x-i;k++){
                System.out.print(" ");
            }

            for(int j=1;j<=2*i-1;j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

输入6,输出结果如下

输入10,结果如下

时间: 2024-10-14 16:28:30

习题7 数字金字塔的相关文章

1.5.1 Number Triangles 数字金字塔

★1.5.1 Number Triangles 数字金字塔 一.题目描述 考虑在下面被显示的数字金字塔. 写一个程序来计算从最高点开始在底部任意处结束的路径经过数字的和的最大. 每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大和:30 PROGRAM NAME: numtri 18 INPUT FORMAT 第一个行包含 R(1<= R<=1000) ,表示行的数目

习题单词数字匹配

1.步骤: ①创建文档解析器的工厂对象 ②得到文档解析器对象 ③获取输入流对象 ④通过解析器的parse方法解析is对象 转换成Document对象 ⑤返回的是文档的根节点 ⑥判断是否有孩子节点进行获取子节点转换成元素节点得到属性节点 ⑦得到具体的某个属性节点 2.解析元素节点.属性节点.文本节点: 3.界面搭建 界面搭建的相关代码: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

1625 数字金字塔

1625 数字金字塔 链接:http://codevs.cn/problem/1625/ USACO 时间限制: 1 s 空间限制: 128000 KB 题目描述 Description 考虑在下面被显示的数字金字塔. 写一个程序来计算从最高点开始在底部任意处结束的路径经过数字的和的最大. 每一步可以走到下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从 7 到 3 到 8 到 7 到 5 的路径产生了最大和:30 输入描述 Input

数字金字塔最大路径和——递归

题目描述 假设有如下所示的一个数字金字塔,现在,要求写一个程序来查找从顶点到底部任意处结束的路径,使路径经过的数字的和最大,并输出该路径的最大和.比如以下金字塔的和最大路径的和为7+3+8+7+5=30.7 3 2 8 1 0 2 7 4 4 4 5 2 6 5 C++ Code 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152   #include <i

【动态规划基础】数字金字塔

题目链接:1258:[例9.2]数字金字塔 1258:[例9.2]数字金字塔 时间限制: 1000 ms         内存限制: 65536 KB提交数: 9635     通过数: 5467 [题目描述] 观察下面的数字金字塔.写一个程序查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以从当前点走到左下方的点也可以到达右下方的点. 在上面的样例中,从13到8到26到15到24的路径产生了最大的和86. [输入] 第一个行包含R(1≤ R≤1000),表示行的数目. 后面

Python输出数字金字塔

使用Python输出一个数字金字塔 运行结果: 源代码: ''' Python输出数字金字塔 ''' for x in range(1,10): print(' '*(15-x),end='') n=x while n>=1: print(n,sep='',end='') n-=1 n+=2 while n<=x: print(n,sep='',end='') n+=1 print() 原文地址:https://www.cnblogs.com/yijiahao/p/11740372.html

shell脚本编程设计——根据输入的数输出菱形、三角形或者数字金字塔(带闪烁颜色)

shell脚本编程设计--根据输入的数输出菱形.三角形或者数字金字塔(带闪烁颜色) shell脚本程序和解释如下 #!/bin/bash #创建死循环,当输入出错或者输入"quit"字符串退出脚本程序 while true do #等待用户输入 read -p "请输入一个不大于20的正整数(输入"quit"则退出):" n #先判断字符串是否是quit if [ "$n" == "quit" ] then

习题 3 数字和数学计算

每一种编程语言都包含处理数字和进行数学计算的方法.不必担心,程序员经常撒谎说他们是多么牛的数学天才,其实他们根本不是.如果他们真是数学天才,他们早就去从事数学相关的行业了,而不是写写广告程序和社交网络游戏,从人们身上偷赚点小钱而已. 这章练习里有很多的数学运算符号.我们来看一遍它们都叫什么名字.你要一边写一边念出它们的名字来,直到你念烦了为止.名字如下: + plus 加号 - minus 减号 / slash 斜杠 * asterisk 星号 % percent 百分号 < less-than

《Thinking in Java》习题——吸血鬼数字

最近在看<Java编程思想>,这本书非常棒,不愧是Java程序员的圣经.看到第四章,后面有道题目很有意思,于是就自己做了做. 1. 我的思路很简单,但是算法效率非常之低.就是把4位数拆成4个数字,比如1260--->1,2,6,0.然后4位数字组合成两个2位数,计算它们 的乘积,相等则就是吸血鬼数字. 1 public class Test2 { 2 /* 3 * 将4位数拆分成4个数 4 * */ 5 public int [] array(int num){ 6 int [] a =